Meta Tech Provider

Der messages-Webhook

messages ist das Feld für alles, was ein Kunde an Ihre Nummer sendet: Text, Medien, Antworten, Reaktionen und interaktive Antworten. Bei einer gerouteten Coexistence-Nummer geht die Nachricht von Meta direkt an Ihren Endpoint und nie über einen Provider.

messages

Das Webhook-Feld für eingehende Kundennachrichten.

wamid

Das Präfix der Nachrichten-ID zur Deduplizierung von Wiederholungen.

200

Der Status, den Meta vor jeder Verarbeitung schnell erwartet.

Was die Payload enthält

Eine oder mehrere Nachrichten in einer Zustellung, jeweils mit Absender, ID und Typ. Der Typ bestimmt, welche weiteren Schlüssel vorhanden sind.

  • Die Telefonnummer des Absenders und die Telefonnummer-ID der Nummer, an die er geschrieben hat.
  • Eine wamid-Nachrichten-ID, auf der die Deduplizierung basiert.
  • Ein Unix-Zeitstempel.
  • Ein Typ: text, image, audio, video, document, sticker, location, contacts, reaction, button oder interactive.
  • Bei Medientypen eine Medien-ID zum Abrufen anstelle der eigentlichen Bytes.

Warum sie bei einer gerouteten Nummer nie uns erreicht

Weil das Override dieses Feld zusammen mit smb_message_echoes an das von Ihnen festgelegte Ziel verschiebt.

Meta erlaubt einer App, festzulegen, wohin ein WhatsApp Business Account seine Webhooks zustellt. Wir setzen dieses Override auf Ihre URL, wodurch der Nachrichtenweg vollständig aus unserer Infrastruktur herausführt. Auf unserer Seite gibt es keine Kopie, keine Warteschlange und keine Aufbewahrung, weil die Zustellung dort nie ankommt.

Wenn kein Ziel festgelegt ist, fallen diese Ereignisse auf unseren Standard-Callback zurück, wo der Handler sie ohne Speicherung verwirft. Das ist der Unterschied zwischen einer Aussage über Speicherung und einem Codepfad: Für Gesprächsinhalte gibt es keinen Weg in unseren Speicher.

Richtig bestätigen

Geben Sie 200 zurück, bevor Sie die Arbeit erledigen, nicht danach.

Meta wertet eine langsame Antwort als Fehler und versucht die Zustellung erneut. Ein Handler, der die Verarbeitung inline ausführt, sieht dieselbe Nachricht dadurch möglicherweise mehr als einmal. Antworten Sie sofort, legen Sie die Payload in eine Warteschlange oder eine Hintergrundaufgabe und lassen Sie die Verarbeitung außerhalb der Anfrage stattfinden.

Bei Serverless ist das nicht optional. Eine Funktion, die zurückkehrt und danach weiterarbeitet, kann genau in dem Moment eingefroren werden, in dem sie antwortet. Bestätigung und Verarbeitung müssen daher wirklich getrennt sein.

Deduplizieren

Immer anhand der wamid, denn Wiederholungen sind normal und keine Ausnahme.

Dieselbe Nachricht kann aus Gründen zweimal eintreffen, die nichts mit einem Fehler auf Ihrer Seite zu tun haben: eine langsame Antwort, ein Netzwerk-Timeout oder ein Deployment während der Zustellung. Erkannte IDs zu speichern und Wiederholungen zu überspringen, erfordert nur wenige Zeilen und entscheidet darüber, ob ein Kunde einmal oder zweimal eine Antwort erhält.

Bei einer Coexistence-Nummer ist das noch wichtiger, weil smb_message_echoes über denselben Weg eintrifft. Ein Handler, der jedes Ereignis als neu behandelt, antwortet sonst auf eine Nachricht, die Ihr Team bereits manuell beantwortet hat.

Häufige Fehler

  • Verarbeitung vor der Rückgabe von 200. Meta versucht eine langsame Antwort erneut und Sie verarbeiten die Nachricht zweimal.
  • Deduplizierung überspringen. Wiederholungen sind vorgesehen und kein Sonderfall.
  • Medien-Bytes in der Payload erwarten. Sie enthält eine Medien-ID zum Abrufen.
Mit EasyCoexistence

EasyCoexistence leitet dieses Feld direkt von Meta an Ihren Endpoint weiter und speichert nur die für das Monitoring nötigen Betriebsereignisse. Gesprächsinhalte können daher überhaupt nicht in unseren Speicher gelangen.

Häufig gestellte Fragen

Sieht EasyCoexistence die Nachrichten meiner Kunden?

Nein. Das Override stellt dieses Feld an Ihren Endpoint zu. Alles, was unseren Fallback-Callback erreicht, wird ohne Speicherung verworfen.

Können mehrere Nachrichten in einer Anfrage eintreffen?

Ja. Eine Zustellung kann mehrere Nachrichten enthalten. Handler sollten daher iterieren, statt nur die erste zu lesen.

Wie rufe ich die Medien ab?

Die Payload enthält eine Medien-ID. Rufen Sie damit über das Zugriffstoken der Nummer die URL ab und laden Sie die Medien anschließend herunter.

Was ist smb_message_echoes?

Das zugehörige Feld für Nachrichten, die Ihr Team aus der WhatsApp Business App sendet. Es existiert nur bei Coexistence-Nummern.

Weiterlesen

Bereit für den Start?

Richten Sie WhatsApp Coexistence in wenigen Minuten statt Monaten ein. Die App funktioniert weiterhin auf dem Telefon.

Kostenlose Testphase starten

Verifiziert am

messages-Webhook