จัดการสถานะการส่งด้วยส่วนขยายอีเมลของทริกเกอร์

เมื่อมีการเพิ่มเอกสารลงในคอลเล็กชัน ส่วนขยายจะเลือกเอกสารดังกล่าวเพื่อประมวลผลการนำส่งทางอีเมล ส่วนขยายจะสร้างและอัปเดตdeliveryฟิลด์ใน เอกสารขณะประมวลผลอีเมล

การประมวลผลการส่งอีเมล

คุณสามารถป้อนข้อมูลในช่อง delivery ได้โดยใช้ช่องต่อไปนี้

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

โดยปกติแล้ว อีเมลจะส่งจาก PENDING ไปยัง PROCESSING แล้วส่งต่อไปยัง SUCCESS หรือ ERROR เมื่ออยู่ในสถานะ SUCCESS หรือ ERROR การเปลี่ยนแปลงเพิ่มเติมใน เอกสารจะไม่ทริกเกอร์ให้ส่วนขยายส่งอีเมลอีก หากต้องการส่งอีเมลที่มีการอัปเดตเอกสารอีกครั้ง คุณสามารถเปลี่ยน state เป็น PENDING หรือ RETRY ได้

การลองอีกครั้งด้วยตนเอง

มีบางกรณีที่การนำส่งอีเมลล้มเหลวในลักษณะที่กู้คืนได้ หรือ แก้ไขเอกสารด้วยตนเองเพื่อนำส่งอย่างถูกต้องได้โดยมีการ แก้ไขเล็กน้อย แม้ว่าการลองส่งใหม่จะไม่เป็นไปโดยอัตโนมัติ แต่คุณก็เปลี่ยนstateในช่องdeliveryเป็น RETRY ได้ด้วยตนเอง เพื่อให้ส่วนขยายพยายามส่งอีเมลอีกครั้ง (และเพิ่มจำนวนattempts)