Intégration du streaming d'événements
Aperçu de l’intégration
Anchor link toType d’intégration
Anchor link toSource : Les données sont envoyées de Pushwoosh à votre système via HTTP ou gRPC en fonction des déclencheurs d’événements configurés.
Comment fonctionne l’intégration ?
Anchor link toPushwoosh transmet les données d’événements de communication (par ex., l’activité des notifications push/e-mails) à un point de terminaison défini par le client. Les données sont envoyées en flux par lots à des intervalles programmés ou lorsqu’une taille de lot minimale est atteinte.
Les données ne sont envoyées que si elles correspondent aux événements, plateformes et filtres optionnels sélectionnés (codes de campagne/message, activité en direct). Le point de terminaison client doit être prêt à recevoir et éventuellement à répondre avec un statut.
Glossaire
Anchor link toURL du point de terminaison : Point de terminaison côté serveur qui permet de recevoir des requêtes. Le client peut spécifier un port si nécessaire.
Exemples :
https://clientdomainname.com/webhook_endpointhttps://clientdomainname.com:8081/webhook_endpoint
Liste des entités synchronisées
Anchor link to- Événements de statistiques de communication (par ex., Push envoyé, E-mail délivré)
- Événements post : événements que votre application envoie à Pushwoosh via
postEvent, diffusés séparément des événements de statistiques de communication
Cas d’utilisation
Anchor link to-
Suivi de l’engagement en temps réel
Surveillez les interactions des utilisateurs telles que l’envoi de notifications push, l’ouverture d’e-mails ou la livraison de messages au moment où elles se produisent, permettant une visibilité immédiate sur les performances de la campagne.
-
Intégration d’analyses externes
Diffusez des événements vers des plateformes d’analyse tierces pour un reporting et une analyse centralisés.
-
Flux de travail utilisateur automatisés
Déclenchez des actions dans des systèmes externes (comme les CRM ou les outils d’automatisation du marketing) en fonction du comportement des utilisateurs, par ex., envoyer un message de suivi lorsqu’un utilisateur ouvre un e-mail.
Configuration de l’intégration
Anchor link toPour configurer l’intégration :
- Dans votre compte Pushwoosh, allez dans Paramètres > Intégrations tierces, trouvez Intégration du streaming d’événements, et cliquez sur Configurer.

- Dans la fenêtre qui s’ouvre, remplissez les champs nécessaires.

Saisir l’URL du point de terminaison
Anchor link toDans le champ URL du point de terminaison, saisissez l’URL complète où les événements seront envoyés, y compris le protocole et le port le cas échéant.
Exemple
https://clientdomainname.com/webhook_endpointhttps://clientdomainname.com:8081/webhook\_endpoint
Sélectionner les événements
Anchor link toDans le menu déroulant Événements, sélectionnez au moins un événement. Si aucun n’est sélectionné, la validation échouera. La liste des événements est gérée par le backend et peut changer avec le temps.
Fournir les informations d’autorisation
Anchor link toSi votre serveur l’exige, saisissez la valeur complète de l’en-tête Authorization dans le champ Autorisation.
Exemples :
-
Bearer your_token_here -
Basic base64encoded_credentials
Choisir le type de transport
Anchor link toDans le menu déroulant Type de transport, choisissez le protocole de livraison pour la transmission des événements : HTTP ou gRPC. Chacun a un comportement et une configuration spécifiques.
HTTP
Anchor link toAvec le type de transport HTTP, Pushwoosh envoie les données par lots en fonction de l’une des conditions suivantes :
-
Au moins 100 événements sont prêts à être envoyés, ou
-
Une heure s’est écoulée depuis la dernière transmission.
Après l’envoi des données, la connexion est fermée une fois qu’une réponse réussie est reçue.
Si le serveur répond avec une erreur 5xx, Pushwoosh réessayera la requête selon la politique de relance définie.
Mécanisme de relance
| Tentative | Délai |
|---|---|
| 1ère | 1 seconde |
| 2ème | 3 secondes après la 1ère tentative |
| 3ème | 8 secondes après la 2ème tentative |
Si toutes les tentatives échouent, la requête est abandonnée.
Délai d’attente
Le délai d’attente par défaut pour une requête est de 30 secondes. Il peut être personnalisé sur demande via le support.
gRPC
Anchor link toLe type de transport gRPC utilise le streaming bidirectionnel pour la transmission des données. Pour en savoir plus, consultez la documentation gRPC.
Un flux est ouvert lorsque l’une des conditions suivantes est remplie :
- Au moins 1 000 événements sont prêts à être livrés
- Une heure s’est écoulée depuis l’ouverture du dernier flux
Le flux est fermé après l’envoi des événements. Cela garantit qu’un nouveau flux n’est pas ouvert pour chaque événement individuel dans un court laps de temps.
Mécanisme de relance
Chaque événement inclut un uuid unique. Si un événement échoue :
- La réponse doit inclure un
statusdifférent de"Success" - L’
uuidoriginal de la requête doit être inclus
Pushwoosh réessayera la livraison en fonction de cette réponse.
Paramètres de connexion
Les options avancées comme TLS, keep-alive, ou les politiques de relance sont configurées manuellement via le support et peuvent nécessiter l’intervention de développeurs.
Activer les événements post
Anchor link toCe bouton est désactivé par défaut, donc seuls les événements de statistiques de communication sont diffusés. Pour diffuser également les événements que votre application envoie à Pushwoosh via postEvent, activez le bouton Autoriser les événements post.
Dans le champ Événements post qui apparaît, sélectionnez les événements de votre compte à diffuser. Au moins un événement est requis lorsque le bouton est activé. Si votre compte n’a encore envoyé aucun événement, cette liste est vide jusqu’à ce que vous appeliez postEvent au moins une fois.
Sélectionner les plateformes
Anchor link toDans la section Plateformes, sélectionnez au moins une plateforme pour activer le streaming d’événements.

Les plateformes prises en charge incluent :
- iOS, Android, macOS, Windows, Amazon, Safari
- Chrome, Firefox, Internet Explorer, Huawei
- E-mail, SMS, Line, Xiaomi, WhatsApp
Configurer les filtres avancés
Anchor link toDans la section Filtres avancés, affinez les critères de livraison des événements à l’aide de filtres :
-
Événements d’activité en direct : Activez pour recevoir les événements d’activité en direct. Ces événements ne contiennent que des métadonnées incluant
live_activity_id. -
Filtres de campagne : Filtrez par code de campagne. Seuls les événements liés à ces campagnes seront livrés.
-
Filtres de message : Filtrez par code de message. Seuls les événements liés à ces messages seront livrés.

Après avoir rempli tous les champs obligatoires, cliquez sur le bouton Appliquer pour enregistrer et activer votre intégration.
Détails de la requête et exemple
Anchor link to| Point de terminaison | https://exampleclientendpoint.com/webhook_endpoint |
| Requête HTTP | POST |
| Authentification | Non |
| Type de requête | Source |
| Signification de la requête | Envoyer des requêtes au point de terminaison du webhook |
| En-têtes | Content-Type: application/json |
Exemple de corps de requête
{ "event_name": "Email Opened", "message_code": "E682-E6D92B9A-53E24868", "campaign_id": 961048, "platform": "Email", "payload": "Welcome to 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}Attributs
Anchor link toParmi les événements de statistiques de communication, attributes ne se remplit que pour les événements push, avec un contenu spécifique au canal (Android, iOS, etc.) pour la plateforme à laquelle le push a été envoyé. Les événements E-mail et SMS ne contiennent que les champs de niveau supérieur (event_name, platform, payload, etc.). attributes est null pour ces événements. Dans un objet attributes rempli, les champs en dehors de la plateforme de l’événement sont omis plutôt qu’envoyés comme des valeurs vides. Consultez webhook.proto pour la liste complète des champs.
Un événement post contient ses paires clé/valeur d’attributs dans attributes.event_attributes à la place. message_code et payload restent vides, car un événement post n’est pas lié à un message ou à une campagne.
Réponse Pour le moment, le code de réponse et le corps sont ignorés.
Comment savoir si l’intégration fonctionne ?
Anchor link toVous commencerez à recevoir des requêtes de Pushwoosh à votre point de terminaison configuré.