כשמסמך מתווסף לאוסף, התוסף מאתר אותו כדי לעבד אותו לשליחה באימייל. התוסף יוצר ומעדכן שדה delivery במסמך בזמן שהוא מעבד את האימייל.
עיבוד של שליחת אימיילים
אפשר לאכלס את השדה delivery בשדות הבאים:
- state: אחת מהאפשרויות
PENDING,PROCESSING,SUCCESSאוERROR. - startTime: חותמת הזמן שבה התחיל עיבוד האימייל.
- endTime: חותמת זמן שבה הסתיים עיבוד האימייל (כלומר, הסתיים במצב
SUCCESSאוERROR). - שגיאה: אם הייתה שגיאה במסירת האימייל, תופיע כאן הודעת שגיאה.
- attempts: מספר הניסיונות למסור את האימייל הזה.
- leaseExpireTime: במקרה של תקיעה או פסק זמן, השעה שבה מצב
PROCESSINGצריך להיחשב כשגיאה. - info: אחרי שהאימייל נמסר בהצלחה (לפחות לכתובת אחת), השדה הזה יאוכלס בשדות הבאים:
- messageId: מזהה ההודעה של האימייל שנמסר.
- accepted: מערך של כתובות אימייל שהאימייל נמסר אליהן בהצלחה.
- rejected: מערך של כתובות אימייל שהאימייל לא נמסר אליהן.
- בהמתנה: מערך של כתובות אימייל שנדחו זמנית על ידי SMTP.
- תגובה: התגובה האחרונה משרת ה-SMTP.
בדרך כלל, אימייל עובר מPENDING אל PROCESSING ואז אל SUCCESS או אל ERROR. אחרי שהמסמך עובר למצב SUCCESS או ERROR, שינויים נוספים במסמך לא יגרמו לשליחת אימייל נוסף על ידי התוסף. כדי לשלוח מחדש אימייל עם עדכונים במסמך, אפשר לשנות את state ל-PENDING או ל-RETRY.
ניסיונות חוזרים ידניים
יש מקרים שבהם מסירת האימייל נכשלת באופן שניתן לתיקון, או שאפשר לתקן את המסמך באופן ידני כדי שהמסירה תתבצע בצורה תקינה באמצעות שינויים קלים. הניסיונות החוזרים לא מתבצעים באופן אוטומטי, אבל אפשר לשנות ידנית את הערך state בשדה delivery ל-RETRY כדי שהתוסף ינסה שוב לשלוח את האימייל (ויגדיל את המספר attempts).