Cycle de vie des jetons de notification push
Cet article couvre le processus par lequel un utilisateur se voit attribuer un jeton de notification push, et comment Braze envoie des messages push à vos utilisateurs.
À propos des jetons de notification push
Lorsqu’une application demande les autorisations push à un appareil, le fournisseur de service push de l’appareil génère un jeton de notification push pour cette application. Chaque application reçoit son propre jeton de notification push unique et anonyme, qui permet d’identifier l’appareil et l’instance actuelle de l’application lors de l’envoi d’une notification push.
Gardez à l’esprit que les jetons de notification push ne sont pas des identifiants statiques qui durent indéfiniment—ils peuvent être mis à jour et ils peuvent expirer.

Pour des détails spécifiques à chaque plateforme, consultez Enregistrement des jetons de notification push.
Push au premier plan et en arrière-plan
Les jetons de notification push sont utilisés pour envoyer des notifications push au premier plan et en arrière-plan.
| Type | Nécessite un opt-in ? | Description |
|---|---|---|
| Push au premier plan | Oui | Une notification est affichée de manière visible à l’utilisateur lorsque l’application est au premier plan. |
| Push en arrière-plan | Non | Une notification est délivrée silencieusement en arrière-plan sans être affichée. Souvent utilisée pour des fonctionnalités comme le suivi des désinstallations. |
Lorsqu’un utilisateur accepte les notifications push pour votre application, il est considéré comme « enregistré pour le push », ce qui signifie qu’il peut désormais être ciblé à l’aide du filtre de segmentation Foreground Push Enabled for App dans Braze.

Ceci est différent du filtre de segmentation Foreground Push Enabled, qui est utilisé pour identifier les utilisateurs ayant accepté les notifications push pour au moins une de vos applications, et non une application spécifique. Pour plus d’informations, consultez Filtres de segmentation.
Plusieurs utilisateurs sur un même appareil
Les jetons de notification push sont uniques à la fois pour l’appareil et l’application, ce qui signifie qu’ils ne peuvent pas être utilisés pour cibler un utilisateur spécifique si plusieurs utilisateurs partagent le même appareil.
Par exemple, supposons que vous ayez deux utilisateurs : Charlie et Kim. Si Charlie a activé les notifications push pour votre application sur son téléphone et que Kim utilise le téléphone de Charlie pour se déconnecter du profil de Charlie et se connecter au sien, le jeton de notification push sera réattribué au profil de Kim. Le jeton de notification push restera alors attribué au profil de Kim sur cet appareil jusqu’à ce qu’elle se déconnecte et que Charlie se reconnecte.
Une application ou un site web ne peut avoir qu’un seul abonnement push par appareil. Ainsi, lorsqu’un utilisateur se déconnecte d’un appareil ou d’un site web et qu’un nouvel utilisateur se connecte, le jeton de notification push est réattribué au nouvel utilisateur. Cela se reflète dans le profil de l’utilisateur dans la section Contact Settings de l’onglet Engagement :

Comme il n’existe aucun moyen pour les fournisseurs push (APNs/FCM) de distinguer plusieurs utilisateurs sur un même appareil, nous transmettons le jeton de notification push au dernier utilisateur connecté pour déterminer quel utilisateur cibler sur l’appareil pour le push.

Si vous voyez un message d’erreur dans Contact Settings > Push Changelog, consultez Messages d’erreur push courants pour des explications et les étapes suivantes.
Enregistrement des jetons push
Chaque plateforme gère l’enregistrement des jetons push différemment. Consultez les sections suivantes pour des détails spécifiques à chaque plateforme :
Vous devez demander l’abonnement explicite des utilisateurs via la boîte de dialogue d’autorisation native du navigateur. Un jeton sera reçu après l’abonnement des utilisateurs. Contrairement à iOS et Android, qui permettent à votre application d’afficher l’invite d’autorisation à tout moment, certains navigateurs modernes n’affichent l’invite que si elle est déclenchée par un « geste utilisateur » (clic de souris ou frappe au clavier). Si votre site tente de demander l’autorisation pour les notifications push au chargement de la page, elle sera probablement ignorée ou désactivée par le navigateur.
Lorsque votre application est installée, un jeton push est automatiquement généré pour votre application—cependant, il ne peut être utilisé que pour les notifications push en arrière-plan tant que l’utilisateur n’a pas explicitement accepté. De plus, l’enregistrement est géré différemment selon les versions d’Android :
| Version | Détails |
|---|---|
| Android 13 | L’autorisation push doit être demandée et accordée par l’utilisateur. Votre application peut demander l’autorisation manuellement, ou les utilisateurs seront invités automatiquement après la création d’un canal de notification. |
| Android 12 et antérieur | Tous les utilisateurs sont considérés comme Subscribed après leur première session. Braze demande automatiquement un jeton push à ce moment-là, rendant l’utilisateur activé pour les notifications push avec un jeton valide et un état d’abonnement par défaut de Subscribed. |
iOS ne génère pas automatiquement de jetons push pour une application lors de son installation. De plus, l’enregistrement est géré différemment selon les versions d’iOS :
| Version | Autorisation provisoire ? | Détails |
|---|---|---|
| iOS 12 | Oui | Lorsqu’un utilisateur accepte les notifications push, vous obtenez une autorisation standard, vous permettant d’envoyer des notifications push au premier plan. Cependant, vous pouvez également demander une autorisation provisoire, qui vous permet d’envoyer silencieusement des notifications push en arrière-plan directement dans le centre de notifications. |
| iOS 11 ou antérieur | Non | Tous les utilisateurs doivent explicitement accepter de recevoir les notifications push. Un jeton push n’est généré qu’après l’octroi de l’autorisation. |

Braze considère que les jetons de notification push importés sont des jetons de notification push de premier plan valides pour votre application et votre environnement.
Lorsque vous importez des jetons iOS, Braze ne stocke pas de passerelle Apple Push Notification service (APNs) (development ou production) pour ceux-ci. Braze envoie ces jetons via la passerelle configurée de votre application. Si un jeton a été généré pour l’autre environnement, APNs le rejette avec BadDeviceToken, et l’envoi échoue.
Braze ne stocke une passerelle pour le jeton que si le SDK enregistre ultérieurement le même jeton et signale une passerelle.
Vérifier l’état d’abonnement push d’un utilisateur

Il existe deux façons de vérifier l’état d’abonnement push d’un utilisateur avec Braze :
- Profil utilisateur : Vous pouvez accéder aux profils utilisateur individuels via le tableau de bord de Braze sur la page Recherche d’utilisateurs. Après avoir trouvé le profil d’un utilisateur (par adresse e-mail, numéro de téléphone ou ID utilisateur externe), vous pouvez sélectionner l’onglet Engagement pour afficher et ajuster manuellement l’état d’abonnement d’un utilisateur.
- Exportation via la REST API : Vous pouvez exporter les profils utilisateur individuels au format JSON en utilisant les endpoints d’exportation Utilisateurs par Segment ou Utilisateurs par identifiant. Braze renverra un objet de jetons push contenant les informations d’activation push par appareil.
Vérifier l’état d’enregistrement push
Dans l’onglet Engagement du profil d’un utilisateur, vous verrez Push Registered For suivi d’un nom d’application. Si aucune information d’application n’existe pour cet appareil, vous verrez deux tirets (--). Il y aura une entrée pour chaque appareil appartenant à l’utilisateur.
Si le nom de l’application de l’entrée d’appareil est préfixé par Foreground:, l’application est autorisée à recevoir à la fois des notifications push au premier plan (visibles par l’utilisateur) et des notifications push en arrière-plan (non visibles par l’utilisateur) sur cet appareil.

En revanche, si le nom de l’application de l’entrée d’appareil est préfixé par Background:, l’application est uniquement autorisée à recevoir des notifications push en arrière-plan et ne peut pas afficher de notifications visibles par l’utilisateur sur cet appareil. Cela indique généralement que l’utilisateur a désactivé les notifications pour l’application sur cet appareil.
Si un jeton push est transféré à un autre utilisateur sur le même appareil, le premier utilisateur ne sera plus enregistré pour les notifications push.
Gestion des jetons push
Consultez le tableau suivant pour les actions qui entraînent des modifications ou la suppression de jetons push des profils utilisateur.
| Action | Description |
|---|---|
Appel de la méthode changeUser() |
La méthode changeUser() de Braze change l’identifiant utilisateur auquel les SDK attribuent les données de comportement utilisateur. Cette méthode est généralement appelée lorsqu’un utilisateur se connecte à une application. Lorsque changeUser() est appelé avec un identifiant utilisateur différent ou nouveau sur un appareil spécifique, le jeton push de cet appareil est transféré vers le profil Braze approprié avec l’identifiant utilisateur correspondant. |
| Erreur push survenue | Certaines erreurs push courantes entraînant la suppression de jetons incluent MismatchSenderId, InvalidRegistration et d’autres types de rebonds push. Consultez notre liste complète des erreurs push courantes. |
| Désinstallation par l’utilisateur | Lorsqu’un utilisateur désinstalle l’application d’un appareil, Braze supprime le jeton push de l’utilisateur du profil. |
À quoi cela ressemble-t-il à plus grande échelle ?
Lorsqu’un utilisateur ouvre une nouvelle application et accorde l’accès push via une invite push, un appel est effectué depuis le SDK Braze vers les fournisseurs push. Lorsque cet appel est effectué, le fournisseur push vérifie que tout est correctement configuré. Si c’est le cas, un jeton push est transmis à votre appareil. Lorsque ce jeton arrive, le SDK le communique à Braze. Une fois que Braze a reçu le jeton du fournisseur push, nous mettons à jour ou créons un nouveau profil utilisateur. Ces utilisateurs sont alors considérés comme enregistrés.
Si nous souhaitons lancer une Campaign, nous créons une Campaign dans Braze qui génère un payload push à envoyer au fournisseur push. De là, le fournisseur délivre le payload push à l’appareil de l’utilisateur et le SDK transmet l’état de la communication à Braze.

| Étapes d’enregistrement | Étapes de communication |
|---|---|
| 1. Le client (appareil) s’enregistre auprès du fournisseur push 2. Le fournisseur génère et délivre le jeton push 3. Transmission des jetons à Braze |
1. Braze envoie le payload push au fournisseur 2. Le fournisseur délivre le payload push à l’appareil 3. Le SDK transmet les statistiques de communication à Braze |
Questions fréquemment posées
Que se passe-t-il lorsqu’un utilisateur ayant donné son consentement supprime puis retélécharge mon application ?
Supposons qu’un utilisateur accepte les notifications push, reçoive quelques messages push, puis supprime l’application. Cela supprimera le consentement push au niveau de l’appareil. À partir de là, le premier push renvoyé en erreur après la désinstallation entraînera automatiquement la désinscription de cet utilisateur des futurs messages push. Ensuite, si un utilisateur réinstalle l’application mais ne la lance pas, Braze ne sera pas en mesure de lui envoyer de notification push, car les jetons push n’ont pas été réattribués pour votre application.
De plus, si un utilisateur réactivait les notifications push au premier plan, il faudrait un démarrage de session pour mettre à jour cette information dans son profil utilisateur et recommencer à recevoir des messages push.
Quand les jetons push expirent-ils ?
Malheureusement, les APN et FCM ne définissent pas réellement cela. Les jetons push peuvent expirer lorsqu’une application est mise à jour, lorsque les utilisateurs transfèrent leurs données vers un nouvel appareil, ou lorsqu’ils réinstallent un système d’exploitation. Dans la plupart des cas, nous n’avons pas vraiment de visibilité sur les raisons pour lesquelles les fournisseurs de notifications push font expirer certains jetons push.
Pour tenir compte de cette ambiguïté, nos intégrations push du SDK enregistrent et actualisent systématiquement les jetons au démarrage de chaque session, afin de garantir que nous disposons du jeton le plus à jour.