Inviare di nuovo dopo aver visto solo l'accettazione può creare un messaggio duplicato. Segui il primo invio attraverso i suoi eventi successivi prima di decidere se riprovare.
Conserva l'identificatore del messaggio restituito dalla richiesta di invio. Collega l'accettazione iniziale agli eventi successivi relativi a quel messaggio.
Cosa succede tra accettato e consegnato?
Email passa attraverso la preparazione. I messaggi SMS passano attraverso l'handover a un carrier mobile.
Puoi monitorare i tuoi invii Bird attraverso questi tipi di evento:
| Canale | Evento | Cosa è successo |
|---|---|---|
email.accepted | Bird ha accettato l'invio e lo sta preparando, una volta per ogni destinatario richiesto. | |
email.processed | Bird ha preparato il messaggio per la consegna al mail server del destinatario. | |
email.delivered | Il mail server del destinatario ha accettato il messaggio. | |
| SMS | sms.accepted | Bird ha accettato la richiesta di invio e l'ha messa in coda per l'elaborazione. |
| SMS | sms.sent | Bird ha consegnato il messaggio al carrier. |
| SMS | sms.delivered | Il carrier ha segnalato la consegna al dispositivo del destinatario. |
Confronta i tempi degli eventi in timestamp per individuare un ritardo. I tempi di arrivo dei webhook includono ritardi di consegna propri.
Per email, sottrai il tempo di accettazione dal tempo di preparazione per misurare la preparazione all'interno di Bird. L'intervallo dopo la preparazione include anche l'attesa per raggiungere il server ricevente.
Per SMS, sottrai il tempo di accettazione dal tempo di handover al carrier per misurare il tempo prima dell'handover. L'intervallo dall'handover alla consegna misura il tempo di consegna rimanente.
Per esempio, un SMS accettato a mezzogiorno e consegnato al carrier due secondi dopo ha impiegato due secondi prima dell'handover. Se la consegna avviene otto secondi dopo, il totale è dieci secondi.
Perché non è ancora consegnato?
Il messaggio potrebbe essere ancora in attesa. Un evento successivo potrebbe invece segnalare una consegna fallita.
Un evento di accettazione da solo non permette di distinguere questi esiti. Leggi gli eventi successivi per lo stesso messaggio prima di decidere se inviarlo di nuovo.
Email segnala questi esiti:
email.deferredindica che la consegna è ritardata dopo un fallimento temporaneo. Bird riprova, quindi il messaggio può ancora essere consegnato o rimbalzare in seguito.email.bouncedindica che il server ricevente ha rifiutato la consegna.email.rejectedindica che Bird ha rifiutato il messaggio prima di un tentativo di consegna. Indaga il motivo del rifiuto prima di modificare le impostazioni del mail server del destinatario.
SMS usa un insieme diverso:
sms.undeliveredsegnala un fallimento di consegna non permanente dal carrier.sms.failedsegnala un fallimento di consegna permanente.sms.rejectedindica che Bird ha rifiutato il messaggio prima dell'handover al carrier.sms.expiredindica che il periodo di validità del messaggio è scaduto prima della consegna.
Leggi l'errore che accompagna un esito fallito per identificare la causa. Filtraggio dei carrier per SMS spiega una possibile causa.
Esiste un unico ciclo di vita da imparare?
Ogni canale ha la propria sequenza di stati di consegna.
I server email possono chiedere al mittente di riprovare più tardi. I carrier SMS possono smettere di provare quando un messaggio scade. Questi esiti richiedono azioni di recupero diverse.
WhatsApp e voice segnalano anche i propri tipi di evento. Le rispettive guide agli eventi descrivono gli stati pertinenti: email, SMS, WhatsApp e voice.
Un messaggio consegnato può smettere di risultare consegnato?
Un'email può passare da consegnata a rimbalzata dopo che il mail server ricevente segnala un fallimento di consegna successivo.
Il server accetta prima il messaggio tramite SMTP. Può segnalare un fallimento separatamente dopo la conclusione di quello scambio.
Bird registra il report come email.out_of_band_bounce. Quando il report è classificato come bounce, lo stato del destinatario passa da consegnato a rimbalzato. In caso di hard bounce, Bird sopprime anche l'indirizzo per bloccare invii futuri perché il fallimento è permanente.
Una risposta automatica può comparire nella timeline senza modificare lo stato di consegna. La classificazione del report determina se l'accettazione precedente viene revocata.
Mantieni lo stato di consegna aggiornabile dopo un evento positivo. I webhook possono arrivare fuori ordine, quindi confronta i timestamp degli eventi prima di applicare una modifica che sovrascriverebbe uno stato più recente.
In breve
L'accettazione conferma la richiesta di invio.
Bird inizia a preparare il messaggio dopo l'accettazione. L'evento non conferma l'arrivo a un mail server o a un dispositivo.
Preparazione e handover sono passaggi diversi.
Email segnala la preparazione con email.processed. SMS segnala l'handover al carrier con sms.sent.
I fallimenti hanno significati specifici per canale.
Email può essere differita, rimbalzata o rifiutata. SMS distingue tra esiti non consegnato, fallito, rifiutato e scaduto.
La consegna email può essere seguita da un bounce.
Un bounce successivo può spostare lo stato di un destinatario email da consegnato a rimbalzato. Una risposta automatica non modifica lo stato di consegna.