Gestire lo stato del recapito con l'estensione Trigger Email

Quando un documento viene aggiunto alla raccolta, l'estensione lo recupera per l'elaborazione dell'invio per email. L'estensione crea e aggiorna un campo delivery nel documento durante l'elaborazione dell'email.

Elaborazione dell'invio delle email

Il campo delivery può essere compilato con i seguenti campi:

  • state: uno dei valori PENDING, PROCESSING, SUCCESS o ERROR.
  • startTime: timestamp dell'inizio dell'elaborazione dell'email.
  • endTime: timestamp del completamento dell'elaborazione dell'email (ovvero terminata in uno stato SUCCESS o ERROR).
  • error: se si è verificato un errore di invio dell'email, qui verrà inserito un messaggio di errore.
  • attempts: numero di tentativi di invio per questa email.
  • leaseExpireTime: in caso di blocco o timeout, l'ora in cui uno stato PROCESSING deve essere considerato un errore.
  • info: dopo l'invio riuscito dell'email (ad almeno un indirizzo), questo campo verrà compilato con i seguenti campi:
    • messageId: l'ID messaggio dell'email recapitata.
    • accepted: array di indirizzi email a cui l'email è stata recapitata correttamente.
    • rejected: array di indirizzi email a cui non è stato possibile consegnare l'email.
    • pending: array di indirizzi email temporaneamente rifiutati da SMTP.
    • response: l'ultima risposta del server SMTP.

In genere, un'email passa da PENDING a PROCESSING a SUCCESS o ERROR. Una volta nello stato SUCCESS o ERROR, ulteriori modifiche al documento non attiveranno l'invio di un'altra email da parte dell'estensione. Per inviare nuovamente un'email con gli aggiornamenti del documento, puoi modificare state in PENDING o RETRY.

Nuovi tentativi manuali

In alcuni casi, l'invio delle email non va a buon fine in modo recuperabile o il documento può essere corretto manualmente per l'invio corretto con piccole modifiche. Sebbene i tentativi di nuovo invio non siano automatici, puoi modificare manualmente state nel campo delivery in RETRY in modo che l'estensione tenti di nuovo di inviare l'email (e aumenti il numero di attempts).