Wenn eine Nachricht endet, untersuchen Sie ihr abschließendes Event und den Fehlercode, bevor Sie entscheiden, ob Sie den Versand erneut versuchen oder die Zustellung untersuchen.
Was bedeutet whatsapp.rejected?
Bird hat die Nachricht vor dem Versand gestoppt und sie nicht berechnet.
Empfängerprüfungen und Berechnung können ein Rejected-Ergebnis erzeugen. Verwenden Sie den zugehörigen Code, um die nächste Aktion zu wählen:
| Code | Ursache | Nächste Aktion |
|---|---|---|
undeliverable | Keine verwendbare Empfängeradresse | Empfänger korrigieren |
recipient_suppressed | Der Empfänger ist unterdrückt | Opt-out respektieren und Einwilligungsdaten prüfen |
price_not_found | Bird kann den Versand nicht bepreisen | Support mit der Nachrichtenkennung kontaktieren |
insufficient_balance | Das Wallet kann den Versand nicht finanzieren oder die Organisation kann nicht belastet werden | Abrechnung klären, bevor Sie erneut senden |
Ein nicht bepreister Versand wird abgelehnt, nicht als kostenlos behandelt. Das Wiederholen der unveränderten Anfrage liefert den fehlenden Preis nicht nach.
Der Ablehnungszeitstempel verwendet den ursprünglichen Annahmezeitpunkt. Verwenden Sie ihn einheitlich in Berichten, damit eine Warteschlangenverzögerung die Ablehnung nicht in eine spätere Berichtsperiode verschiebt.
Was bedeutet whatsapp.failed?
Die Nachricht ist beim Senden oder bei der Zustellung fehlgeschlagen, wobei die Ursache in den Fehlerdetails aufgezeichnet ist.
Meta kann einen Fehler über einen Zustellungs-Callback melden. Es kann auch die Sendeanfrage von Bird ablehnen, bevor es die Nachricht zur Zustellung annimmt.
Bird zeichnet internal_error auf, wenn die Sendenummer keine verwendbaren Anmeldedaten hat oder die Verarbeitung ihre Wiederholungsversuche erschöpft. meta_error_code ist Metas aufgezeichneter Fehlercode. Dieser Bird-Code enthält keinen.
Eine Erschöpfung der Wiederholungsversuche kann Transportfehler oder vorgelagerte Ausfälle umfassen. Schließen Sie nicht allein aus internal_error, dass Meta nie eine Anfrage erhalten hat.
Prüfen Sie die Beschreibung und die Verbindung der Sendenummer. Geben Sie dem Support die Nachrichtenkennung, wenn die Ursache unklar bleibt.
Ein Fehler kann nach der Berechnung auftreten. Untersuchen Sie cost der Nachricht, anstatt anzunehmen, dass jeder erfolglose Versand kostenlos war.
Warum erscheint undeliverable bei beiden Events?
Bei einer Ablehnung konnte Bird den Empfänger nicht adressieren. Bei einem Fehler ist es das normalisierte Ergebnis von Bird für eine Meta-Ablehnung.
Der Fehlercode ist breiter als die Aussage, dass das Telefon keine Nachrichten empfangen kann. Bird verwendet undeliverable auch, wenn ein Meta-Code keine spezifischere Zuordnung hat.
Lesen Sie meta_error_code für Metas aufgezeichneten Code und description für die zugehörige Erklärung. Ein Fehler ohne Fehlerdetails erhält trotzdem undeliverable.
Weitere normalisierte Fehlercodes identifizieren spezifischere Probleme:
| Code | Was zu untersuchen ist |
|---|---|
service_window_expired | Ob Freitextinhalte außerhalb des Servicefensters gesendet wurden |
rate_limited | Metas Sende- oder Empfängerlimits |
media_rejected | Das Medien-Asset, das Meta abgelehnt hat |
internal_error | Der von Bird aufgezeichnete Verarbeitungs- oder Sendefehler |
Bewahren Sie unbekannte Codes in Ihren Logs auf. Der Codesatz kann wachsen, daher sollte ein unbekannter Wert ein ansonsten nutzbares Event nicht ungültig machen.
Wie sollte mein Event-Handler das Ergebnis interpretieren?
Verzweigen Sie nach dem Event-Typ und seinem Fehlercode gemeinsam.
Eine abgelehnte Nachricht geht nicht in ein Sent-Event über. Eine fehlgeschlagene Nachricht benötigt ihre Fehlerdetails, um einen internen Fehler von Metas Antwort zu unterscheiden.
Halten Sie den Zustellstatus getrennt vom Engagement. Ein whatsapp.read-Event zeichnet ein Lesen auf, ohne den Zustellstatus der Nachricht zu ersetzen.
Bird gibt sein eigenes whatsapp.sent nach erfolgreichem Versand aus. Es erzeugt kein weiteres Event aus Metas separatem Sent-Status-Callback.
Die Template-Prüfung verwendet einen anderen Satz von Status. Untersuchen Sie die Sprache des Templates, wenn die Freigabe das Problem ist, und nicht diese Nachrichtenergebnisse.
Was sollte ich vor einem weiteren Versand tun?
Beheben Sie die aufgezeichnete Ursache, bevor Sie eine weitere Nachricht senden.
Verwenden Sie bei service_window_expired ein genehmigtes Template oder warten Sie, bis die Nachricht des Kunden das Servicefenster erneut öffnet.
Respektieren Sie bei einer Unterdrückung die Entscheidung des Empfängers. Das Entfernen eines Opt-outs würde die Präferenz des Empfängers ignorieren und ein Compliance-Risiko erzeugen.
Lösen Sie bei einem Abrechnungs- oder Absenderverbindungsproblem zuerst diese Kontobedingung. Bewahren Sie die ursprüngliche Nachrichtenkennung auf, damit der Support den fehlgeschlagenen Versuch untersuchen kann.
Wenn die Nummer oder das Business-Konto eingeschränkt oder gesperrt ist, folgen Sie den Schritten zu Kontoeinschränkungen und Einsprüchen, bevor Sie es erneut versuchen.
Untersuchen Sie bei einem unklaren Transportfehler die Ursache, bevor Sie eine weitere Nachricht erstellen. Ein neuer Versand kann eine Anfrage duplizieren, deren Ergebnis nicht beobachtet wurde.
Kurz gesagt
Eine Ablehnung wird nicht berechnet.
Bird stoppt die Nachricht vor dem Versand, wenn Empfängerprüfungen oder die Berechnung den Versand verhindern.
Ein Fehler kann von Bird oder Meta stammen.
Untersuchen Sie den aufgezeichneten Fehler, bevor Sie entscheiden, wo Sie nachforschen.
internal_errorenthält keinen Meta-Fehlercode.Event und Code gemeinsam interpretieren.
undeliverableerscheint bei beiden Events. Seine Bedeutung hängt davon ab, wo die Nachricht gestoppt wurde.Wiederherstellung anhand der Ursache wählen.
Beheben Sie das Empfänger-, Konto-, Inhalts- oder Timing-Problem, bevor Sie einen weiteren Versand versuchen. Bewahren Sie unbekannte Codes zur Untersuchung auf.