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