Zum Inhalt springen

Integration für Event-Streaming

Integrationsübersicht

Anchor link to

Integrationstyp

Anchor link to

Quelle: Daten werden von Pushwoosh an Ihr System über HTTP oder gRPC basierend auf konfigurierten Event-Triggern gesendet.

Wie funktioniert die Integration?

Anchor link to

Pushwoosh übermittelt Kommunikations-Event-Daten (z. B. Push-/E-Mail-Aktivitäten) an einen vom Kunden definierten Endpunkt. Die Daten werden in Batch-Streams in geplanten Intervallen oder bei Erreichen einer minimalen Batch-Größe gesendet.

Daten werden nur gesendet, wenn sie mit den ausgewählten Events, Plattformen und optionalen Filtern (Kampagnen-/Nachrichtencodes, Live-Aktivität) übereinstimmen. Der Endpunkt des Kunden muss bereit sein, die Daten zu empfangen und optional mit einem Status zu antworten.

Endpunkt-URL: Serverseitiger Endpunkt, der den Empfang von Anfragen ermöglicht. Der Client kann bei Bedarf einen Port angeben.

Beispiele:

  • https://clientdomainname.com/webhook_endpoint
  • https://clientdomainname.com:8081/webhook_endpoint

Liste der synchronisierten Entitäten

Anchor link to
  • Kommunikationsstatistik-Events (z. B. Push gesendet, E-Mail zugestellt)
  • Post-Events: Events, die Ihre App über postEvent an Pushwoosh sendet und die getrennt von den Kommunikationsstatistik-Events gestreamt werden

Anwendungsfälle

Anchor link to
  • Echtzeit-Engagement-Tracking

Überwachen Sie Benutzerinteraktionen wie gesendete Push-Nachrichten, geöffnete E-Mails oder zugestellte Nachrichten in Echtzeit, um sofortige Einblicke in die Kampagnenleistung zu erhalten.

  • Integration externer Analysen

Streamen Sie Events an Analyseplattformen von Drittanbietern für zentralisierte Berichterstattung und Analyse.

  • Automatisierte Benutzer-Workflows

Lösen Sie Aktionen in externen Systemen (wie CRMs oder Marketing-Automatisierungstools) basierend auf dem Benutzerverhalten aus, z. B. das Senden einer Folgenachricht, wenn ein Benutzer eine E-Mail öffnet.

Einrichtung der Integration

Anchor link to

Um die Integration einzurichten:

  1. Gehen Sie in Ihrem Pushwoosh-Konto zu Einstellungen > Integrationen von Drittanbietern, finden Sie die Integration für Event-Streaming und klicken Sie auf Konfigurieren.

Konfigurieren der Integration für Event-Streaming

  1. Füllen Sie in dem sich öffnenden Fenster die erforderlichen Felder aus.

Füllen Sie die erforderlichen Felder aus

Endpunkt-URL eingeben

Anchor link to

Geben Sie im Feld Endpunkt-URL die vollständige URL ein, an die Events gesendet werden sollen, einschließlich Protokoll und Port, falls zutreffend.

Beispiel

  • https://clientdomainname.com/webhook_endpoint
  • https://clientdomainname.com:8081/webhook\_endpoint

Events auswählen

Anchor link to

Wählen Sie aus dem Dropdown-Menü Events mindestens ein Event aus. Wenn keines ausgewählt ist, schlägt die Validierung fehl. Die Liste der Events wird vom Backend verwaltet und kann sich im Laufe der Zeit ändern.

Anmeldeinformationen für die Autorisierung bereitstellen

Anchor link to

Wenn von Ihrem Server gefordert, geben Sie den vollständigen Wert für den Authorization-Header in das Feld Autorisierung ein.

Beispiele:

  • Bearer your_token_here

  • Basic base64encoded_credentials

Transporttyp auswählen

Anchor link to

Wählen Sie aus dem Dropdown-Menü Transporttyp das Übertragungsprotokoll für die Event-Übertragung: HTTP oder gRPC. Jedes hat ein spezifisches Verhalten und eine spezifische Konfiguration.

Mit dem HTTP-Transporttyp sendet Pushwoosh Daten in Batches basierend auf einer der folgenden Bedingungen:

  • Mindestens 100 Events sind zum Senden bereit, oder

  • Eine Stunde ist seit der letzten Übertragung vergangen.

Nach dem Senden der Daten wird die Verbindung geschlossen, sobald eine erfolgreiche Antwort empfangen wird.

Wenn der Server mit einem 5xx-Fehler antwortet, wird Pushwoosh die Anfrage gemäß der definierten Wiederholungsrichtlinie erneut versuchen.

Wiederholungsmechanismus

VersuchVerzögerung
1.1 Sekunde
2.3 Sekunden nach dem 1. Versuch
3.8 Sekunden nach dem 2. Versuch

Wenn alle Wiederholungsversuche fehlschlagen, wird die Anfrage verworfen.

Timeout

Das Standard-Timeout für eine Anfrage beträgt 30 Sekunden. Dies kann auf Anfrage über den Support angepasst werden.

Der gRPC-Transporttyp verwendet bidirektionales Streaming für die Datenübertragung. Erfahren Sie mehr in der gRPC-Dokumentation.

Ein Stream wird geöffnet, wenn eine der folgenden Bedingungen erfüllt ist:

  • Mindestens 1.000 Events sind zur Auslieferung bereit
  • Eine Stunde ist seit dem letzten Öffnen eines Streams vergangen

Der Stream wird geschlossen, nachdem die Events gesendet wurden. Dies stellt sicher, dass nicht für jedes einzelne Event in kurzer Zeit ein neuer Stream geöffnet wird.

Wiederholungsmechanismus
Jedes Event enthält eine eindeutige uuid. Wenn ein Event fehlschlägt:

  1. Die Antwort muss einen status enthalten, der nicht gleich "Success" ist
  2. Die ursprüngliche uuid aus der Anfrage muss enthalten sein

Pushwoosh wird die Zustellung basierend auf dieser Antwort erneut versuchen.

Verbindungseinstellungen

Erweiterte Optionen wie TLS, Keep-Alive oder Wiederholungsrichtlinien werden manuell über den Support konfiguriert und erfordern möglicherweise die Einbeziehung der Entwicklung.

Post-Events aktivieren

Anchor link to

Dieser Schalter ist standardmäßig ausgeschaltet, sodass nur Kommunikationsstatistik-Events gestreamt werden. Um auch Events zu streamen, die Ihre App über postEvent an Pushwoosh sendet, schalten Sie den Schalter Post-Events zulassen ein.

Wählen Sie aus dem erscheinenden Feld Post-Events aus, welche Events Ihres Kontos gestreamt werden sollen. Mindestens ein Event ist erforderlich, während der Schalter eingeschaltet ist. Wenn Ihr Konto noch keine Events gesendet hat, ist diese Liste leer, bis Sie postEvent mindestens einmal aufrufen.

Plattformen auswählen

Anchor link to

Wählen Sie im Abschnitt Plattformen mindestens eine Plattform aus, um das Event-Streaming zu aktivieren.

Wählen Sie mindestens eine Plattform aus

Unterstützte Plattformen umfassen:

  • iOS, Android, macOS, Windows, Amazon, Safari
  • Chrome, Firefox, Internet Explorer, Huawei
  • E-Mail, SMS, Line, Xiaomi, WhatsApp

Erweiterte Filter konfigurieren

Anchor link to

Verfeinern Sie im Abschnitt Erweiterte Filter die Kriterien für die Event-Zustellung mithilfe von Filtern:

  • Live-Aktivitäts-Events: Aktivieren, um Live-Aktivitäts-Events zu empfangen. Diese Events enthalten nur Metadaten, einschließlich live_activity_id.

  • Kampagnenfilter: Nach Kampagnencode filtern. Nur Events, die mit diesen Kampagnen verknüpft sind, werden zugestellt.

  • Nachrichtenfilter: Nach Nachrichtencode filtern. Nur Events, die mit diesen Nachrichten verknüpfen sind, werden zugestellt.

Erweiterte Filter festlegen

Nachdem Sie alle erforderlichen Felder ausgefüllt haben, klicken Sie auf die Schaltfläche Anwenden, um Ihre Integration zu speichern und zu aktivieren.

Anfragedetails und Beispiel

Anchor link to
Endpunkthttps://exampleclientendpoint.com/webhook_endpoint
HTTP-AnfragePOST
AuthentifizierungNein
AnfragetypQuelle
Bedeutung der AnfrageAnfragen an den Webhook-Endpunkt senden
HeaderContent-Type: application/json

Beispiel für den Anfrage-Body

{
"event_name": "E-Mail geöffnet",
"message_code": "E682-E6D92B9A-53E24868",
"campaign_id": 961048,
"platform": "Email",
"payload": "Willkommen bei Headway! 👋",
"application_code": "XXXXX-XXXXX",
"hwid": "user@example.com",
"user_id": "USER_ID",
"timestamp": 1723799271,
"journey_title": "",
"journey_point_title": "5_Welcome_ID_new",
"attributes": null
}

Bei Kommunikationsstatistik-Events wird attributes nur für Push-Events gefüllt, mit kanalspezifischem Inhalt (Android, iOS usw.) für die Plattform, an die der Push gesendet wurde. E-Mail- und SMS-Events enthalten nur die Felder der obersten Ebene (event_name, platform, payload usw.). attributes ist für diese Events null. Innerhalb eines gefüllten attributes-Objekts werden Felder außerhalb der eigenen Plattform des Events weggelassen, anstatt als leere Werte gesendet zu werden. Die vollständige Feldliste finden Sie in webhook.proto.

Ein Post-Event trägt seine Attribut-Schlüssel/Wert-Paare stattdessen in attributes.event_attributes. message_code und payload bleiben leer, da ein Post-Event nicht mit einer Nachricht oder Kampagne verknüpft ist.

Antwort
Im Moment werden der Antwortcode und der Body ignoriert.

Woher wissen Sie, dass die Integration funktioniert?

Anchor link to

Sie werden beginnen, Anfragen von Pushwoosh an Ihrem konfigurierten Endpunkt zu erhalten.