เมื่อมีการเพิ่มเอกสารในคอลเลกชั่น ส่วนขยายจะดึงเอกสารนั้นมาเพื่อดำเนินการจัดส่งทางอีเมล ส่วนขยายสร้างและอัปเดตฟิลด์ delivery
ในเอกสารขณะที่ประมวลผลอีเมล
การประมวลผลการส่งอีเมล
ฟิลด์ delivery
สามารถเติมด้วยฟิลด์ต่อไปนี้:
- สถานะ: หนึ่งใน
PENDING
,PROCESSING
,SUCCESS
, หรือERROR
- startTime: การประทับเวลาเมื่อการประมวลผลอีเมลเริ่มต้นขึ้น
- เวลาสิ้นสุด: การประทับเวลาเมื่อการประมวลผลอีเมลเสร็จสิ้น (นั่นคือสิ้นสุดในสถานะ
SUCCESS
หรือERROR
) - ข้อผิดพลาด: หากมีข้อผิดพลาดในการส่งอีเมล ข้อความแสดงข้อผิดพลาดจะถูกเติมที่นี่
- ความพยายาม: จำนวนความพยายามในการส่งอีเมลนี้
- LeaseExpireTime: ในกรณีที่หยุดทำงานหรือหมดเวลา เวลาที่สถานะ
PROCESSING
ควรถือเป็นข้อผิดพลาด - ข้อมูล: หลังจากส่งอีเมลสำเร็จ (ไปยังที่อยู่อย่างน้อยหนึ่งแห่ง) ฟิลด์นี้จะถูกเติมด้วยฟิลด์ต่อไปนี้:
- messageId: รหัสข้อความของอีเมลที่ส่ง
- ยอมรับ: อาร์เรย์ของที่อยู่อีเมลที่ส่งอีเมลถึงได้สำเร็จ
- ปฏิเสธ: อาร์เรย์ของที่อยู่อีเมลที่ไม่สามารถส่งอีเมลได้
- รอดำเนินการ: อาร์เรย์ของที่อยู่อีเมลที่ถูกปฏิเสธชั่วคราวโดย SMTP
- การตอบกลับ: การตอบกลับล่าสุดจากเซิร์ฟเวอร์ SMTP
โดยทั่วไป อีเมลจะเปลี่ยนจาก PENDING
เป็น PROCESSING
เป็น SUCCESS
หรือ ERROR
เมื่ออยู่ในสถานะ SUCCESS
หรือ ERROR
การเปลี่ยนแปลงเพิ่มเติมในเอกสารจะไม่ทำให้ส่วนขยายส่งอีเมลอีกฉบับ หากต้องการส่งอีเมลพร้อมการอัปเดตเอกสารอีกครั้ง คุณสามารถเปลี่ยน state
เป็น PENDING
หรือ RETRY
ลองใหม่ด้วยตนเอง
มีบางกรณีที่การส่งอีเมลล้มเหลวในแบบที่กู้คืนได้ หรือสามารถแก้ไขเอกสารด้วยตนเองเพื่อการจัดส่งที่เหมาะสมโดยมีการปรับเปลี่ยนเล็กน้อย แม้ว่าการลองใหม่จะไม่เป็นแบบอัตโนมัติ แต่คุณสามารถเปลี่ยน state
ในช่อง delivery
เป็น RETRY
ได้ด้วยตนเอง เพื่อให้ส่วนขยายพยายามส่งอีเมลอีกครั้ง (และเพิ่มจำนวนครั้งที่ attempts
)