Aperçu
Ce guide explique comment configurer les notifications push dans votre application Angular en utilisant le packageonesignal-ngx, couvrant tout de l’installation à la configuration et à la gestion des service workers.
Exigences
- Application et plateforme OneSignal configurées. Consultez Configuration Web Push pour commencer.
Installation
Installez le packageonesignal-ngx en utilisant votre gestionnaire de packages préféré :
Initialisation
Importez le service OneSignal et initialisez-le dans votre composant racine :Attendre l’initialisation
Vous pouvez gérer la promesse retournée parinit() de deux manières :
Personnaliser les options d’initialisation
Vous pouvez personnaliser votre initialisation avec des paramètresinit supplémentaires.
Paramètres du Service Worker
Pour éviter les conflits avec le propre service worker d’Angular (utilisé dans les configurations PWA), spécifiez une portée et un chemin uniques pour le service worker OneSignal. Si vous ne l’avez pas encore fait, vous devrez télécharger le fichier Service Worker OneSignal à ajouter à votre site. Le fichierOneSignalSDKWorker.js doit être accessible publiquement. Vous pouvez le placer dans votre répertoire public, à la racine de niveau supérieur ou dans un sous-répertoire. Cependant, si vous placez le fichier dans un sous-répertoire et/ou avez un autre service worker pour votre site, assurez-vous alors de spécifier le chemin. Consultez Service Worker OneSignal pour plus de détails.
| Option | Description |
|---|---|
serviceWorkerParam | Portée contrôlée par le worker OneSignal. Recommandation : Utilisez un sous-chemin personnalisé (par ex., "/onesignal/"). |
serviceWorkerPath | Chemin vers votre fichier service worker OneSignal hébergé (par ex., "onesignal/OneSignalSDKWorker.js"). Doit être accessible publiquement. |
Héberger le worker
- Racine publique (par défaut) :
/OneSignalSDKWorker.js - Dossier personnalisé (recommandé) : par ex.,
/onesignal/OneSignalSDKWorker.jscomme défini à l’étape précédente.
Vérifier l’hébergement du service worker
Visitez le chemin dans votre navigateur pour confirmer qu’il est accessible. Si vous avez utilisé la racine :Important pour les utilisateurs d’Angular CLI
Si le fichier n’est pas servi, assurez-vous qu’il est listé dans votreangular.json sous le tableau assets :
Notes importantes
- Éviter l’initialisation en double en développement
- Lors de tests dans un environnement de développement, vous pourriez voir le SDK OneSignal s’initialiser deux fois, ce qui peut causer des erreurs de console.
- Cela se produit en raison de
<React.StrictMode>qui fait s’exécuter les effets deux fois en développement. Pour résoudre ce problème, supprimez<React.StrictMode>de votre composant racine pendant le développement.
Tester l’intégration du SDK OneSignal
Ce guide vous aide à vérifier que votre intégration du SDK OneSignal fonctionne correctement en testant les notifications push et l’enregistrement des abonnements.Vérifier les abonnements web push
Lancez votre site sur un appareil de test.
- Utilisez Chrome, Firefox, Edge ou Safari pendant les tests.
- N’utilisez pas le mode Navigation privée ou Incognito. Les utilisateurs ne peuvent pas s’abonner aux notifications push dans ces modes.
- Les invites devraient apparaître en fonction de votre configuration des invites de permission.
- Cliquez sur Autoriser dans l’invite native pour vous abonner aux notifications push.

Invite de permission native web push
Vérifiez votre tableau de bord OneSignal
- Allez dans Audience > Subscriptions.
- Vous devriez voir une nouvelle entrée avec le statut Subscribed.

Tableau de bord affichant un abonnement avec le statut 'Subscribed'
Configurer les abonnements de test
Les abonnements de test sont utiles pour tester une notification push avant d’envoyer un message.Ajouter aux abonnements de test.

Ajout d'un appareil aux abonnements de test
Nommez votre abonnement.

Tableau de bord affichant le champ 'Name your subscription'
Créer un segment d'utilisateurs de test.
Nommez le segment.
Test Users (le nom est important car il sera utilisé plus tard).Ajoutez le filtre Test Users et cliquez sur Create Segment.

Création d'un segment 'Test Users' avec le filtre Test Users
Envoyer un push de test via l’API
Obtenez votre clé API d'application et votre ID d'application.
Mettez à jour le code fourni.
YOUR_APP_API_KEY et YOUR_APP_ID dans le code ci-dessous par vos clés réelles. Ce code utilise le segment Test Users que nous avons créé plus tôt.Exécutez le code.
Vérifiez les images et la livraison confirmée.

Notification push développée avec image sur Chrome macOS
Vérifiez la livraison confirmée.

Statistiques de livraison affichant la livraison confirmée

Livraison confirmée au niveau de l'appareil dans Audience Activity
Identification des utilisateurs
Précédemment, nous avons démontré comment créer des Abonnements web push. Nous allons maintenant étendre l’identification des Utilisateurs sur tous leurs abonnements (y compris push, email et SMS) en utilisant le SDK OneSignal. Nous couvrirons les External IDs, les tags, les abonnements multicanaux, la confidentialité et le suivi des événements pour vous aider à unifier et engager les utilisateurs sur toutes les plateformes.Attribuer un External ID
Utilisez un External ID pour identifier les utilisateurs de manière cohérente sur tous les appareils, adresses e-mail et numéros de téléphone en utilisant l’identifiant utilisateur de votre backend. Cela garantit que votre messagerie reste unifiée sur tous les canaux et systèmes tiers (particulièrement important pour les Intégrations). Définissez l’External ID avec la méthodelogin de notre SDK chaque fois qu’ils sont identifiés par votre application.
Ajouter des tags de données
Les Tags sont des paires clé-valeur de données chaîne que vous pouvez utiliser pour stocker les propriétés des utilisateurs (commeusername, role ou les préférences) et les événements (comme purchase_date, game_level ou les interactions utilisateur). Les tags alimentent la Personnalisation des messages et la Segmentation avancées permettant des cas d’utilisation plus avancés.
Définissez les tags avec les méthodes addTag et addTags de notre SDK au fur et à mesure que les événements se produisent dans votre application.
Dans cet exemple, l’utilisateur a atteint le niveau 6 identifiable par le tag appelé current_level défini sur une valeur de 6.

Un profil utilisateur dans OneSignal avec un tag appelé "current_level" défini sur "6"

Éditeur de segment montrant un segment ciblant les utilisateurs avec une valeur current_level supérieure à 4 et inférieure à 10

Capture d'écran montrant une notification push ciblant le segment Niveau 5-10 avec un message personnalisé
Ajouter des abonnements email et/ou SMS
Plus tôt, nous avons vu comment notre SDK crée des abonnements web push pour envoyer des push. Vous pouvez également atteindre les utilisateurs via les canaux email et SMS en créant les abonnements correspondants.- Utilisez la méthode
addEmailpour créer des abonnements email. - Utilisez la méthode
addSmspour créer des abonnements SMS.

Un profil utilisateur avec des abonnements push, email et SMS unifiés par External ID
- Obtenez un consentement explicite avant d’ajouter des abonnements email ou SMS.
- Expliquez les avantages de chaque canal de communication aux utilisateurs.
- Fournissez des préférences de canal afin que les utilisateurs puissent sélectionner les canaux qu’ils préfèrent.
Confidentialité et consentement de l’utilisateur
Pour contrôler quand OneSignal collecte les données utilisateur, utilisez les méthodes de contrôle du consentement du SDK :setConsentRequired(true): Empêche la collecte de données jusqu’à ce que le consentement soit donné.setConsentGiven(true): Active la collecte de données une fois le consentement accordé.
Écouter les événements push, utilisateur et in-app
Utilisez les écouteurs du SDK pour réagir aux actions des utilisateurs et aux changements d’état. Le SDK fournit plusieurs écouteurs d’événements auxquels vous pouvez vous connecter. Consultez notre guide de référence du SDK pour plus de détails.Événements de notification push
- Écouteur d’événement de clic : Détecter quand une notification est tapée.
- Écouteur du cycle de vie au premier plan : Contrôler comment les notifications se comportent au premier plan.
Changements d’état de l’utilisateur
- Écouteur d’événement de changement d’état utilisateur : Détecter quand l’External ID est défini.
- Observateur de permission : Suivre l’interaction spécifique de l’utilisateur avec l’invite d’autorisation push native.
- Observateur de changement d’abonnement push : Suivre quand le statut de l’abonnement push change.
Configuration avancée et capacités
Explorez davantage de capacités pour améliorer votre intégration :- 🔁 Migrer vers OneSignal depuis un autre service
- 🔌 Intégrations
- 🛎️ Boutons d’action
- 🌐 Messagerie multilingue
- 🛡️ Vérification d’identité
- 📊 Résultats personnalisés
Configuration et référence du SDK Web
Assurez-vous d’avoir activé toutes les fonctionnalités clés en consultant le guide Configuration web push. Pour tous les détails sur les méthodes disponibles et les options de configuration, visitez la référence du SDK Web.support@onesignal.comVeuillez inclure :- Les détails du problème que vous rencontrez et les étapes de reproduction si disponibles
- Votre OneSignal App ID
- L’External ID ou le Subscription ID le cas échéant
- L’URL du message que vous avez testé dans le OneSignal Dashboard le cas échéant
- Tous les journaux ou messages d’erreur pertinents