هنگامی که یک سند به مجموعه اضافه می شود، برنامه افزودنی آن را برای پردازش تحویل ایمیل انتخاب می کند. برنامه افزودنی در حین پردازش ایمیل، فیلد delivery
را در سند ایجاد و به روز می کند.
پردازش تحویل ایمیل
فیلد delivery
را می توان با فیلدهای زیر پر کرد:
- حالت: یکی از
PENDING
،PROCESSING
،SUCCESS
یاERROR
. - startTime: زمان شروع پردازش ایمیل.
- endTime: زمانی که پردازش ایمیل تکمیل شد (یعنی در حالت
SUCCESS
یاERROR
به پایان رسید) مهر زمانی را نشان میدهد. - خطا: اگر خطای تحویل ایمیل وجود داشته باشد، یک پیام خطا در اینجا پر می شود.
- تلاش: تعداد تلاشهای ارسال برای این ایمیل.
- leaseExpireTime: در صورت هنگ یا وقفه زمانی، زمانی که در آن یک وضعیت
PROCESSING
باید خطا در نظر گرفته شود. - اطلاعات: پس از تحویل موفقیت آمیز ایمیل (حداقل به یک آدرس)، این فیلد با فیلدهای زیر پر می شود:
- messageId: شناسه پیام ایمیل ارسالی.
- پذیرفته شده: مجموعه ای از آدرس های ایمیل که ایمیل با موفقیت به آنها تحویل داده شد.
- رد شده: مجموعه ای از آدرس های ایمیل که ایمیل به آنها تحویل داده نمی شود.
- در انتظار: مجموعه ای از آدرس های ایمیل که به طور موقت توسط SMTP رد شده اند.
- پاسخ: آخرین پاسخ از سرور SMTP.
یک ایمیل معمولاً از PENDING
به PROCESSING
به SUCCESS
یا ERROR
می رود. هنگامی که در وضعیت SUCCESS
یا ERROR
قرار می گیرید، تغییرات اضافی در سند باعث نمی شود که برنامه افزودنی برای ارسال ایمیل دیگر اقدام کند. برای ارسال مجدد ایمیل همراه با بهروزرسانیهای سند، میتوانید state
را به PENDING
یا RETRY
تغییر دهید.
تلاش های مجدد دستی
مواردی وجود دارد که در آن تحویل ایمیل به روشی قابل بازیابی انجام نمی شود یا سند را می توان به صورت دستی برای تحویل مناسب با تغییرات جزئی تصحیح کرد. در حالی که تلاشهای مجدد خودکار نیستند، میتوانید به صورت دستی state
در قسمت delivery
به RETRY
تغییر دهید تا برنامه افزودنی دوباره ارسال ایمیل را انجام دهد (و تعداد attempts
را افزایش دهد).