Tetikleyici E-posta uzantısıyla teslim durumunu yönetme

Koleksiyona bir doküman eklendiğinde uzantı, e-posta teslimi için işleme alır. Uzantı, e-postayı işlerken dokümanda bir delivery alanı oluşturur ve günceller.

E-posta teslimi işleme

delivery alanı aşağıdaki alanlarla doldurulabilir:

  • state: PENDING, PROCESSING, SUCCESS veya ERROR değerlerinden biri.
  • startTime: E-posta işleme işleminin başladığı zaman damgası.
  • endTime: E-posta işleme işleminin tamamlandığı (yani SUCCESS veya ERROR durumuyla sonuçlandığı) zaman damgası.
  • hata: E-posta teslimi hatası varsa buraya bir hata mesajı girilir.
  • attempts: Bu e-postanın teslimi için yapılan deneme sayısı.
  • leaseExpireTime: Takılma veya zaman aşımı durumunda, PROCESSING durumunun hata olarak kabul edilmesi gereken zaman.
  • info: E-posta başarıyla teslim edildikten sonra (en az bir adrese) bu alan aşağıdaki alanlarla doldurulur:
    • messageId: Teslim edilen e-postanın ileti kimliği.
    • accepted: E-postanın başarıyla teslim edildiği e-posta adreslerinin dizisi.
    • rejected: E-postanın teslim edilemediği e-posta adreslerinin dizisi.
    • pending: SMTP tarafından geçici olarak reddedilen e-posta adreslerinin dizisi.
    • response: SMTP sunucusundan gelen son yanıt.

E-postalar genellikle PENDING adresinden PROCESSING adresine, SUCCESS veya ERROR adresine gönderilir. SUCCESS veya ERROR durumuna geçildikten sonra dokümanda yapılan ek değişiklikler, uzantının başka bir e-posta göndermesine neden olmaz. Belge güncellemeleri içeren bir e-postayı yeniden göndermek için state simgesini PENDING veya RETRY olarak değiştirebilirsiniz.

Manuel yeniden denemeler

E-posta tesliminin kurtarılabilir şekilde başarısız olduğu veya dokümanın küçük değişikliklerle uygun şekilde teslim edilmesi için manuel olarak düzeltilebileceği durumlar vardır. Yeniden denemeler otomatik olmasa da uzantının e-posta teslimini tekrar denemesi (ve attempts sayısını artırması) için delivery alanındaki state değerini manuel olarak RETRY olarak değiştirebilirsiniz.