將文件新增至集合後,擴充功能會選取該文件進行電子郵件傳送處理。此擴充功能在處理電子郵件時會建立並更新文件中的delivery
欄位。
電子郵件傳送處理
delivery
欄位可以填入以下欄位:
- 狀態:
PENDING
、PROCESSING
、SUCCESS
或ERROR
之一。 - startTime:電子郵件處理開始時的時間戳記。
- endTime:電子郵件處理完成時的時間戳記(即以
SUCCESS
或ERROR
狀態結束)。 - 錯誤:如果存在電子郵件傳送錯誤,則會在此處填入錯誤訊息。
- attempts:此電子郵件的發送嘗試次數。
- leaseExpireTime:如果發生掛起或逾時,則
PROCESSING
狀態應被視為錯誤的時間。 - 訊息:成功傳送電子郵件(至至少一個位址)後,此欄位將填入以下欄位:
- messageId:已傳送電子郵件的訊息 ID。
- 已接受:電子郵件已成功傳送至的電子郵件地址陣列。
- 拒絕:電子郵件無法傳送到的電子郵件地址陣列。
- 待處理:被 SMTP 暫時拒絕的電子郵件地址陣列。
- 回應:來自 SMTP 伺服器的最後一個回應。
電子郵件通常會從PENDING
變成PROCESSING
,然後變成SUCCESS
或ERROR
。一旦處於SUCCESS
或ERROR
狀態,對文件的其他變更將不會觸發擴充功能發送另一封電子郵件。若要重新傳送包含文件更新的電子郵件,您可以將state
變更為PENDING
或RETRY
。
手動重試
在某些情況下,電子郵件傳送會以可恢復的方式失敗,或者可以透過較小的修改手動修正文件以正確傳送。雖然重試不是自動的,但您可以手動將delivery
欄位中的state
變更為RETRY
,以便擴充功能再次嘗試電子郵件傳遞(並增加attempts
次數)。