Gestire lo stato del recapito con l'estensione Trigger Email

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

Elaborazione del recapito delle email

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

  • state: uno dei seguenti valori: PENDING, PROCESSING, SUCCESS o ERROR.
  • startTime: timestamp dell'inizio dell'elaborazione dell'email.
  • endTime: timestamp del completamento dell'elaborazione dell'email (ovvero lo stato finale SUCCESS o ERROR).
  • error: se si è verificato un errore di recapito dell'email, qui verrà inserito un messaggio di errore.
  • attempts: numero di tentativi di recapito per questa email.
  • leaseExpireTime: in caso di blocco o timeout, l'ora in cui uno stato PROCESSING deve essere considerato un errore.
  • info: dopo il recapito 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 l'email non è stata recapitata.
    • pending: array di indirizzi email rifiutati temporaneamente da SMTP.
    • response: l'ultima risposta del server SMTP.

In genere, un'email passa da PENDING a PROCESSING e poi a SUCCESS o ERROR. Una volta raggiunto lo stato SUCCESS o ERROR, le modifiche aggiuntive al documento non attiveranno l'invio di un'altra email da parte dell'estensione. Per inviare di nuovo un'email con gli aggiornamenti del documento, puoi impostare state su PENDING o RETRY.

Tentativi manuali

In alcuni casi, il recapito delle email non va a buon fine in modo recuperabile oppure il documento può essere corretto manualmente per un recapito corretto con modifiche minime. Anche se i tentativi non sono automatici, puoi modificare manualmente state nel campo delivery in RETRY in modo che l'estensione tenti di nuovo il recapito dell'email (e incrementi il numero di attempts).