Prérequis
- Site web HTTPS : Le push web ne fonctionne pas en HTTP ni en mode navigation privée/incognito.
- Accès au serveur : Vous devrez téléverser un fichier service worker sur votre site.
- Origine unique : Le push web suit la politique de même origine. Si vous avez plusieurs origines (domaines/sous-domaines), vous aurez besoin de plusieurs applications OneSignal (une par origine). Pour vous conformer à cette limitation du navigateur, vous pouvez :
- Rediriger le trafic vers une seule origine pour les abonnements.
- Créer plusieurs applications OneSignal, une par origine.
Configurer votre application et plateforme OneSignal
Dans le tableau de bord OneSignal :- Accédez à Settings > Push & In-App > Web.
- Sélectionnez le type d’intégration Custom Code.
Configuration du site
Ajoutez les détails du site :- Site Name : Le nom de votre site et le titre de notification par défaut.
- Site URL : L’origine exacte de votre site, par exemple
https://yourdomain.com. Évitez d’utiliserwww.si votre site n’est pas configuré ainsi. Consultez les Prérequis si vous avez plusieurs origines. - Auto Resubscribe : Activez cette option pour réabonner automatiquement les utilisateurs qui effacent leurs données de navigateur lorsqu’ils reviennent sur votre site (sans nouvelle invite d’autorisation).
- Default Icon URL : Téléversez une image PNG, JPG ou GIF non animé carrée de
256×256qui apparaît dans les notifications et les invites. Si elle n’est pas définie, une icône de cloche est utilisée par défaut. Voir Icônes de notification.

Paramètres Web dans le tableau de bord OneSignal
Tests locaux
Pour tester sur localhost, utilisez une application OneSignal séparée de votre application de production et ajoutezallowLocalhostAsSecureOrigin: true à vos options init.
Si vous testez localhost sur HTTPS avec un certificat auto-signé, vous devrez peut-être indiquer à Chrome d’ignorer les certificats invalides avec --allow-insecure-localhost. Firefox et Safari fournissent des mécanismes intégrés pour ajouter des exceptions pour les certificats de sécurité.
Notification de bienvenue (optionnel)
Avec Custom Code, la notification de bienvenue se définit dansOneSignal.init() avec les paramètres welcomeNotification. Les configurations Typical Site et WordPress la définissent dans le tableau de bord. Consultez Configuration du SDK Web.
Téléverser le fichier service worker
Le SDK Web rechercheOneSignalSDKWorker.js à la racine de votre site (https://yourdomain.com/OneSignalSDKWorker.js), sauf si vous passez un chemin personnalisé dans OneSignal.init().
Custom Code n’utilise pas les champs Customize service worker paths and filenames du tableau de bord. Vous indiquez au SDK où chercher dans le code avec serviceWorkerPath et serviceWorkerParam.
Téléchargez le fichier depuis le tableau de bord OneSignal, ou créez un fichier nommé OneSignalSDKWorker.js avec cette seule ligne :
https://yourdomain.com/OneSignalSDKWorker.js. Vous n’avez pas besoin de définir serviceWorkerPath. Le SDK requête cette URL automatiquement.
Sous-répertoire : Si votre site possède déjà un service worker (par exemple une PWA), placez le fichier de OneSignal dans un sous-répertoire tel que /push/onesignal/ afin qu’il n’entre pas en conflit avec le worker qui possède /. Vous devez alors passer serviceWorkerPath et serviceWorkerParam dans OneSignal.init(). Consultez Ajouter du code au site. Le fichier doit être accessible publiquement à https://yourdomain.com/push/onesignal/OneSignalSDKWorker.js.
Service worker OneSignal
Ajouter du code au site
Ajoutez ce code à la section<head> de votre site web. Remplacez YOUR_ONESIGNAL_APP_ID par votre App ID depuis le tableau de bord OneSignal.
Si OneSignalSDKWorker.js est à la racine de votre site, utilisez cet extrait :
serviceWorkerPath et serviceWorkerParam. Ces options sont le seul moyen pour Custom Code d’indiquer au SDK un emplacement hors racine.
persistNotification. Le bouton Persistence du tableau de bord ne s’applique pas à Custom Code. Si vous omettez l’option, le SDK considère actuellement la persistance comme activée. Définissez persistNotification: false pour la désactiver. Elle fonctionne uniquement sur Chrome et Edge sur ordinateur. Consultez Persistance.
Support du push web iOS
Apple a commencé à prendre en charge les notifications push web sur les iPhone et iPad fonctionnant sous iOS 16.4+. Contrairement aux appareils Android où le push web fonctionne simplement si le site est visité sur un navigateur compatible, Apple a ajouté quelques exigences supplémentaires telles qu’un fichiermanifest.json et une action de l’utilisateur pour ajouter votre site à son écran d’accueil.
Configuration du push web iOS
manifest.json requis et guidez les utilisateurs pour ajouter votre site à leur écran d’accueil.Certificat .p12 Safari Web Push (optionnel, hérité)
Laissez cette option désactivée, sauf si vous possédez déjà votre propre certificat.p12 Safari Web Push et souhaitez prendre en charge les utilisateurs de versions héritées de Safari. Le Safari moderne (macOS 13+ et iOS 16.4+) utilise le Web Push basé sur les standards avec VAPID (Voluntary Application Server Identification). OneSignal gère VAPID automatiquement. Vous n’avez pas besoin de téléverser un certificat pour les navigateurs Safari modernes.
Si vous possédez déjà votre propre .p12 (Apple ne prend pas en charge .p8 pour Safari Web Push), téléversez-le dans le tableau de bord. Consultez Certificat .p12 Safari Web Push.
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.
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.
Rapports de messages de notifications push
support@onesignal.com avec les éléments suivants :
- La requête et la réponse API (copiez-collez dans un fichier
.txt) - Votre Subscription ID
- L’URL de votre site Web avec le code OneSignal
Identification des utilisateurs
La section précédente a couvert la création d’Abonnements web push. Cette section s’étend à l’identification des Utilisateurs sur tous leurs abonnements (y compris push, email et SMS) en utilisant le SDK OneSignal. Elle couvre 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 du SDK chaque fois qu’un utilisateur est identifié 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 du 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
Le SDK OneSignal crée automatiquement des abonnements web push lorsque les utilisateurs optent pour les recevoir. 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é.
Données collectées par le SDK
Gestion des données personnelles
É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
Intégrations
Boutons d'action
Messagerie multilingue
Vérification d'identité
Résultats personnalisés
Configuration et référence du SDK Web
Configuration web push
Référence du SDK Web
FAQ
Où le SDK Web recherche-t-il le service worker ?
Le SDK Web rechercheOneSignalSDKWorker.js à la racine de votre site (https://yourdomain.com/OneSignalSDKWorker.js), sauf si vous passez serviceWorkerPath et serviceWorkerParam dans OneSignal.init(). Custom Code n’utilise pas les champs de chemin du tableau de bord. Consultez Téléverser le fichier service worker.