Aperçu
L’intégration OneSignal + Google Pub/Sub permet la synchronisation en temps réel des événements personnalisés de vos sujets Pub/Sub vers OneSignal pour déclencher des campagnes de messagerie automatisées et des Journeys basés sur le comportement des utilisateurs. Pub/Sub est le service de messagerie évolutif de Google qui permet aux applications d’envoyer et de recevoir des messages entre composants indépendants. OneSignal agit en tant qu’abonné à vos sujets Pub/Sub, vous permettant de synchroniser les messages d’événements depuis Pub/Sub pour déclencher des expériences utilisateur personnalisées.Prérequis
- Accès aux Event Streams pour les événements de message sortants (Les limitations de forfait et les dépassements s’appliquent)
- Accès aux Événements personnalisés pour la synchronisation des événements entrants (Les limitations de forfait et les dépassements s’appliquent)
- Forfait de compte mis à jour (non disponible sur les applications gratuites)
Google Pub/Sub
- Projet Google Cloud avec Pub/Sub activé
- Sujets Pub/Sub contenant des messages d’événements
- Autorisations IAM pour accorder l’accès au compte de service
- Messages au format JSON sur vos sujets
Configuration
1
Créer une connexion Pub/Sub
Dans OneSignal, allez dans Data > Integrations et cliquez sur Add Integration.
- Sélectionnez Google Pub/Sub dans la liste
- Entrez l’ID de projet GCP où se trouvent vos sujets Pub/Sub
- Choisissez la méthode d’authentification :
- Compte de service auto-généré (recommandé) : OneSignal crée et gère le compte de service
- Compte de service existant : Fournissez votre propre fichier JSON de clé de compte de service
- Cliquez sur Connect
2
Accorder des autorisations au compte de service
OneSignal créera un nouveau compte de service et vous fournira l’adresse e-mail du compte de service.Accordez le rôle OneSignal utilise ce rôle pour :
roles/pubsub.editor à ce compte de service sur votre projet GCP :- Créer des abonnements à vos sujets d’événements
- Consommer les messages d’événements des sujets
- Créer des sujets d’erreur (Dead Letter Queue) pour le traitement échoué
3
Tester la connexion
Une fois que vous avez accordé les autorisations nécessaires, cliquez sur Save dans OneSignal pour vérifier la connexion.OneSignal validera qu’il peut accéder à vos sujets Pub/Sub et est prêt à traiter les messages d’événements.
Schéma de données d’événements
Avant de pouvoir utiliser un sujet Pub/Sub pour des événements personnalisés, vous devez définir le schéma des messages d’événements.1
Accéder à la définition du schéma d'événements
Dans OneSignal, accédez à Données > Intégrations et sélectionnez votre connexion Pub/Sub.OneSignal récupère automatiquement la liste des sujets de votre projet. Cliquez sur Actualiser les sujets pour actualiser manuellement la liste.
2
Définir le schéma des messages d'événements
- Cliquez sur le nom du sujet contenant vos données d’événements
- Sélectionnez JSON comme format de message (seul format pris en charge)
- Cliquez sur Importer un exemple de message et fournissez un exemple de message d’événement
- Examinez le schéma détecté pour garantir un mappage correct des champs
- Cliquez sur Save Dataset
Format des messages d’événements
Vos messages Pub/Sub doivent suivre cette structure JSON pour les événements personnalisés OneSignal :Mappage des données d’événement
Mappez vos au format des événements personnalisés de OneSignal :| Champ OneSignal | Description | Requis | |
|---|---|---|---|
name | event_name | Identifiant de l’événement | Oui |
external_id | user_id | Identifiant de l’utilisateur | Oui |
timestamp | event_timestamp | Quand l’événement s’est produit | Non |
properties | event_data | Non |
Traitement d’événements en temps réel
Contrairement aux intégrations par lots, Pub/Sub permet un traitement d’événements en temps quasi réel :- Faible latence : Les événements sont traités quelques secondes après leur publication sur les sujets
- Abonnements automatiques : OneSignal crée des abonnements dédiés pour chaque sujet
- Gestion des erreurs : Les événements échoués sont envoyés vers des sujets Dead Letter Queue pour investigation
- Traitement évolutif : Gère automatiquement les flux d’événements à volume élevé
Configuration avancée
Dead Letter Queue
OneSignal crée automatiquement des sujets d’erreur pour les événements qui échouent lors du traitement :- Création automatique : Les sujets d’erreur sont créés par abonnement
- Stockage des événements échoués : Les événements qui ne peuvent pas être traités sont stockés pour le débogage
- Revue manuelle : Accédez aux événements échoués via la Console Google Cloud pour le dépannage
Accusé de réception des messages
OneSignal gère automatiquement l’accusé de réception des messages Pub/Sub :- Traitement réussi : Les messages sont acquittés après la création réussie de l’événement
- Traitement échoué : Les messages sont acquittés négativement et envoyés vers la Dead Letter Queue
- Logique de nouvelle tentative : Gestion intégrée des nouvelles tentatives pour les échecs transitoires
Limitations
- Seul le format de message JSON est pris en charge
- Les exemples de messages sont stockés dans le cadre des définitions de jeux de données (évitez les PII)
- Nécessite les autorisations
roles/pubsub.editorau niveau du projet - La taille maximale des messages suit les limites de Google Pub/Sub (10 Mo)