Créer et envoyer des notifications push

Découvrez comment créer des notifications push pour les applications mobiles avec Experience Platform Mobile SDK et Journey Optimizer.

Journey Optimizer vous permet de créer des parcours et d’envoyer des messages aux audiences ciblées. Avant d’envoyer des notifications push avec Journey Optimizer, vous devez vous assurer que les configurations et intégrations appropriées sont en place. Pour comprendre le flux de données des notifications push dans Journey Optimizer, consultez la documentation.

Architecture {modal="regular"}

NOTE
Cette leçon est facultative et s'applique uniquement aux utilisateurs de Journey Optimizer qui souhaitent envoyer des notifications push.

Conditions préalables

  • Création et exécution réussies de l’application avec les SDK installés et configurés.

  • Configurez l’application pour Adobe Experience Platform.

  • Accès à Journey Optimizer et autorisations suffisantes. Vous devez également disposer des autorisations suffisantes pour accéder aux fonctionnalités de Journey Optimizer ci-après.

    • Créez des informations d’identification push.
    • Créez une configuration de canal push.
    • Création d’un parcours.
    • Créez un message.
    • Création de préréglages de message.
  • Pour iOS, il s’agit d’un compte développeur Apple payant disposant d’un accès suffisant pour créer des certificats, des identifiants et des clés.

  • Pour Android, un compte de développeur Google disposant d’un accès suffisant pour créer des certificats et des clés.

  • Périphérique ou simulateur iOS ou Android physique à des fins de test.

Objectifs d’apprentissage

Dans cette leçon, vous allez :

  • Enregistrez l’ID d’application auprès du service Apple Push Notification (APNs).
  • Créez une configuration de canal dans Journey Optimizer.
  • Mettez à jour votre schéma pour inclure des champs de messagerie push.
  • Installez et configurez l’extension de balise Journey Optimizer.
  • Mettez à jour votre application pour enregistrer l’extension de balise Journey Optimizer.
  • Validez la configuration dans Assurance.
  • Envoyer un message de test depuis Assurance
  • Définissez votre propre événement, parcours et expérience de notification push dans Journey Optimizer.
  • Envoyez votre propre notification push depuis l’application.

Configuration

TIP
Si vous avez déjà configuré votre environnement dans le cadre de la leçon de messagerie in-app Journey Optimizer, il se peut que vous ayez déjà effectué certaines des étapes de cette section de configuration.

Créer des informations d’identification push

Pour les notifications push, vous devez d'abord enregistrer votre application pour les notifications push.

iOS

Les étapes suivantes ne sont pas spécifiques à Adobe Experience Cloud et sont conçues pour vous guider tout au long de la configuration d’APNS.

  1. Dans le portail de développement Apple, accédez à Clés.

  2. Pour créer une clé, sélectionnez +.

    créer une clé {modal="regular"}

  3. Fournissez un Nom de la clé.

  4. Sélectionnez Service de notification push Apple (APNs) puis sélectionnez Configurer.

    1. Dans l’écran Configurer la clé, sélectionnez Sandbox et production dans le menu déroulant Environnement.
    2. Sélectionnez Enregistrer.
  5. Sélectionnez Continuer.

    configurer une nouvelle clé {modal="regular"}

  6. Vérifiez la configuration et sélectionnez S’inscrire.

  7. Téléchargez la clé privée .p8. Il est utilisé dans l’exercice suivant lorsque vous configurez vos informations d’identification push Journey Optimizer.

  8. Notez l’identifiant Key. Il est utilisé dans l’exercice suivant lorsque vous configurez vos informations d’identification push Journey Optimizer.

  9. Notez l’identifiant d’équipe. Il est utilisé dans l’exercice suivant lorsque vous configurez vos informations d’identification push Journey Optimizer. L’identifiant de l’équipe se trouve dans le coin supérieur droit de l’écran, en regard de votre nom d’utilisateur.
    Détails clés {modal="regular"}

Une documentation supplémentaire est disponible ici.

Android

Les étapes suivantes ne sont pas spécifiques à Adobe Experience Cloud et sont conçues pour vous guider tout au long de la configuration de Firebase.

  1. Accédez à la console Firebase.

  2. Sélectionnez Créer un projet Firebase.

    1. Saisissez un Nom du projet.
    2. Sélectionnez Continuer dans Créer un projet - Commençons par attribuer un nom à votre projet. Par exemple : Luma Android App.
    3. Désactivez Gemini dans Firebase et sélectionnez Continuer dans Créer un projet - Assistance IA pour votre projet Firebase.
    4. Désactivez Google Analytics pour ce projet puis sélectionnez Continuer dans Créer un projet - Google Analytics pour votre projet Firebase.
    5. Sélectionnez Créer un projet.
    6. Une fois le projet prêt, sélectionnez Continuer.
  3. De retour dans la console Firebase, assurez-vous que votre projet est sélectionné dans la partie supérieure. Par exemple, application Luma Android.

    Console Firebase {modal="regular"}

  4. Sélectionnez Paramétrage > Paramètres du projet.

  5. Dans Paramètres du projet, sélectionnez Ajouter une application.

    1. Dans la Ajouter Firebase à votre application, sélectionnez Android comme plateforme.

    2. Dans l’Ajouter Firebase à votre application Android :

      1. À l’étape 1, Enregistrement de l’application :

        1. Saisissez un nom de package Android, similaire à votre identifiant d’application. Par exemple : com.adobe.luma.tutorial.android.
        2. Saisissez un surnom de l’application facultatif.
        3. Sélectionnez Enregistrer l’application.
      2. À l’étape 2, Télécharger puis ajouter le fichier de configuration.

        1. Sélectionnez Télécharger Télécharger google-services.json. Lorsque vous créez votre propre version de l’application Android, vous devez remplacer le fichier google-services.json actuel dans l’exemple de projet Android Studio par la version du fichier générée par cette nouvelle configuration d’application.
          Les autres étapes sont déjà effectuées dans l’exemple d’application.

    Votre écran doit ressembler à ce qui suit :

    Console Firebase {modal="regular"}

  6. Dans Paramètres du projet, sélectionnez Comptes de service.

  7. Sélectionnez Générer une clé privée. Un fichier luma-android-app-firebase-adminsdk-xxxx-xxxxxxxx.json est généré. Conservez ce fichier en lieu sûr, car vous en aurez besoin ultérieurement.

Pour plus d’informations, consultez la documentation Firebase destinée aux développeurs.

Ajout des informations d’identification des notifications push de votre application à la collecte de données

Vous devez ensuite ajouter les informations d'identification push de votre application mobile pour autoriser Adobe à envoyer des notifications push en votre nom. Vous pouvez ajouter des informations d’identification push dans la collecte de données ou dans Journey Optimizer. Dans ce tutoriel, l’interface de collecte de données est utilisée. Les informations d’identification push sont ensuite liées à une configuration de canal dans Journey Optimizer.

  1. Dans Collecte de données, sélectionnez Surfaces d’application.

  2. Sélectionnez Créer une surface d’application.

  3. Dans l’interface Créer une surface d’application :

    1. Saisissez un Nom.

    2. Sélectionnez Apple iOS si vous souhaitez envoyer des notifications push pour iOS.

      1. Saisissez votre ID d’application par exemple com.adobe.luma.tutorial.swiftui.
      2. Sélectionnez le sandbox (facultatif).
      3. Activez Informations d’identification des notifications push.
      4. Déposez le fichier de clé privée .p8 enregistré sur Glissez-déposez votre fichier.
      5. Saisissez l’identifiant Key.
      6. Saisissez l’ID d’équipe.
    3. Sélectionnez Android si vous souhaitez envoyer des notifications push pour Android.

      1. Saisissez votre ID d’application par exemple com.adobe.luma.tutorial.android.
      2. Sélectionnez le sandbox (facultatif).
      3. Activez Informations d’identification des notifications push.
      4. Déposez le fichier luma-android-app-firebase-adminsdk-xxxx-xxxxxxxx.json enregistré sur Glissez-déposez votre fichier.

    Création d’une configuration d’informations d’identification push dans Journey Optimizer {modal="regular"}

  4. Sélectionnez Enregistrer. Si toutes les informations sont correctes, vous avez créé des informations d’identification push à associer à une configuration de canal.

Création d’une configuration de canal pour les notifications push dans Journey Optimizer

Une fois que vous avez créé une configuration d’informations d’identification push, vous devez en créer une pour pouvoir envoyer des notifications push depuis Journey Optimizer.

  1. Dans l’interface de Journey Optimizer, ouvrez le menu Canaux > Paramètres généraux > Configurations de canal puis sélectionnez Créer une configuration de canal.

    Créer une configuration de canal {modal="regular"}

  2. Saisissez un nom et une description (facultatif) pour la configuration.

    note note
    NOTE
    Les noms doivent commencer par une lettre (A-Z). Ils ne peuvent contenir que des caractères alphanumériques. Vous pouvez également utiliser le trait de soulignement _, le point. et le trait d'union -.
  3. Pour attribuer des libellés d’utilisation des données personnalisés ou de base à la configuration, vous pouvez sélectionner Gérer l’accès. En savoir plus sur le contrôle d’accès au niveau de l’objet (OLAC)

  4. Sélectionnez le canal Push.

  5. Sélectionnez Action(s) marketing) pour associer des politiques de consentement aux messages à l’aide de cette configuration. Toutes les politiques de consentement associées aux actions marketing sont utilisées pour respecter les préférences de vos clients. En savoir plus sur les actions marketing.

  6. Choisissez votre Platform. Vous pouvez configurer iOS et Android pour une configuration de canal.

  7. Sélectionnez l’ID d’application approprié que vous avez utilisé précédemment pour définir vos informations d’identification push. Par exemple, com.adobe.luma.tutorial.swiftui pour iOS et com.adobe.luma.tutorial.android pour Android. Le CheckmarkCircle vert indique que des informations d’identification push valides sont associées à une configuration de canal.

    Configuration du canal push {modal="regular"}

  8. Sélectionnez Envoyer pour enregistrer vos modifications.

Mettre à jour la configuration du flux de données

Pour vous assurer que les données envoyées de votre application mobile à Edge Network sont transférées vers Journey Optimizer, mettez à jour votre configuration Experience Edge .

  1. Dans l’interface utilisateur de collecte de données, sélectionnez Flux de données, puis sélectionnez votre flux de données, par exemple Luma Mobile App.

  2. Sélectionnez Plus pour Experience Platform et sélectionnez Modifier Modifier dans le menu contextuel.

  3. Dans l’écran Flux de données > Dossier > Adobe Experience Platform :

    1. Si ce n’est pas déjà fait, sélectionnez Jeu de données de profil push AJO dans Jeu de données de profil. Ce jeu de données de profil est requis lors de l’utilisation de l’appel API MobileCore.setPushIdentifier (voir Enregistrer le jeton d’appareil pour les notifications push). Cette sélection garantit également que l’identifiant unique des notifications push (également appelé identifiant push) est stocké dans le profil de l’utilisateur.

    2. Adobe Journey Optimizer est sélectionné. Voir Paramètres Adobe Experience Platform pour plus d'informations.

    3. Pour enregistrer la configuration de votre flux de données, sélectionnez Enregistrer.

    configuration du train de données AEP {modal="regular"}

Installation de l’extension de balises Journey Optimizer

Pour que votre application fonctionne avec Journey Optimizer, vous devez mettre à jour votre propriété de balise.

  1. Accédez à Balises > Extensions > Catalogue,

  2. Ouvrez votre propriété, par exemple Luma Mobile App Tutorial.

  3. Sélectionnez Catalogue.

  4. Recherchez l’extension Adobe Journey Optimizer.

  5. Installez l’extension .

  6. Dans la boîte de dialogue Installer l’extension

    1. Sélectionnez un environnement, par exemple Développement.

    2. Sélectionnez le jeu de données Jeu de données d’événement d’expérience de suivi des notifications push AJO dans la liste Jeu de données d’événement.

    3. Sélectionnez Enregistrer dans la bibliothèque et créer.

      Paramètres de l’extension AJO {modal="regular"}

NOTE
Si vous ne voyez pas Jeu de données d’événement d’expérience de suivi des notifications push AJO comme option, contactez l’assistance clientèle.

Validation de la configuration avec Assurance

  1. Consultez la section instructions de configuration pour connecter votre simulateur ou votre appareil à Assurance.

  2. Dans l’interface utilisateur d’Assurance, sélectionnez Configurer.
    configurer le clic {modal="regular"}

  3. Sélectionnez Plus en regard de Débogage push.

  4. Sélectionnez Enregistrer.
    enregistrer {modal="regular"}

  5. Sélectionnez Débogage push dans le volet de navigation de gauche.

  6. Sélectionnez l’onglet Valider la configuration.

  7. Sélectionnez votre appareil dans la liste Client.

  8. Vérifiez que vous n’obtenez aucune erreur.
    valider {modal="regular"}

  9. Sélectionnez l’onglet Envoyer le push de test.

  10. (Facultatif) Modifiez les détails par défaut pour Titre et Corps et assurez-vous de fournir tous les paramètres attendus par votre application, tels que Avancé > Canal de notification (requis pour Android, par exemple LUMA_CHANNEL_ID).

  11. Sélectionnez Bogue Envoyer une notification push de test.

  12. Vérifiez le Résultats du test.

    Tester les notifications push depuis Assurance {modal="regular"}

  13. La notification push de test devrait apparaître dans votre application.

iOS
{width="300"}
Android
{width="300"}

Signature

IMPORTANT
La signature d'une application iOS est nécessaire pour envoyer des notifications push sur iOS et nécessite un compte de développeur Apple payant. Vous n’avez pas besoin de signer une application Android pour envoyer des notifications push.

Pour mettre à jour la signature de votre application :

  1. Accédez à votre application dans Xcode.

  2. Sélectionnez Luma dans l’explorateur de projets.

  3. Sélectionnez la cible Luma.

  4. Sélectionnez l’onglet Signature et fonctionnalités.

  5. Configurez Gestion automatique de la signature, Équipe et Identifiant de bundle, ou utilisez vos informations d’attribution de privilèges d’accès de développement Apple spécifiques.

    note important
    IMPORTANT
    Veillez à utiliser un identifiant de lot unique et à remplacer l’identifiant de lot com.adobe.luma.tutorial.swiftui, car chaque identifiant de lot doit être unique. En règle générale, vous utilisez un format de DNS inversé pour les chaînes d’ID de lot, telles que com.organization.brand.uniqueidentifier. La version terminée de ce tutoriel, par exemple, utilise com.adobe.luma.tutorial.swiftui.

    Fonctionnalités de signature Xcode {modal="regular"}

Ajout de fonctionnalités de notification push à votre application

IMPORTANT
Pour implémenter et tester les notifications push dans une application iOS, vous devez disposer d’un compte de développeur Apple payant.
iOS
  1. Dans Xcode, sélectionnez Luma dans la liste TARGETS, sélectionnez l’onglet Signing & Capabilities, cliquez sur le bouton + Capability, puis sélectionnez Notifications push. Cette sélection permet à votre application de recevoir des notifications push.

  2. Vous devez ensuite ajouter une extension de notification à l’application. Revenez à l’onglet General et sélectionnez l’icône + au bas de la section TARGETS.

  3. Vous êtes invité à sélectionner le modèle pour votre nouvelle cible. Sélectionnez Extension du service de notification puis sélectionnez Suivant.

  4. Dans la fenêtre suivante, utilisez NotificationExtension comme nom d’extension et cliquez sur le bouton Terminer.

Vous devriez maintenant avoir une extension de notification push ajoutée à votre application, similaire à l'écran ci-dessous.

Extension des notifications push {modal="regular"}

Android

Le projet Android Studio est déjà configuré pour les notifications push. Vous n’avez pas besoin de prendre des mesures supplémentaires pour activer la version Android de l’application Luma pour les notifications push. Voir À propos des notifications pour plus d’informations.

Les notifications push Android requièrent la définition d’un identifiant de canal de notification, à la fois dans votre application et lors de l’envoi d’une notification push. L’identifiant de notification de canal utilisé dans l’application Android Luma est LUMA_CHANNEL ID.

Implémentation de Journey Optimizer dans l’application

Comme nous l’avons vu dans les leçons précédentes, l’installation d’une extension de balise mobile fournit uniquement la configuration . Vous devez ensuite installer et enregistrer le SDK de messagerie. Si ces étapes ne sont pas claires, consultez la section Installation des SDK.

NOTE
Si vous avez terminé la section Installation des SDK, le SDK est déjà installé et vous pouvez ignorer cette étape.
iOS
  1. Dans Xcode, assurez-vous que AEP Messaging est ajouté à la liste des packages dans Dépendances de packages. Voir Gestionnaire de packages Swift.

  2. Accédez à Luma > Luma > AppDelegate dans le navigateur de projet Xcode.

  3. Assurez-vous que AEPMessaging fait partie de votre liste d’importations.

    import AEPMessaging

  4. Assurez-vous que Messaging.self fait partie du tableau d’extensions que vous enregistrez.

    code language-swift
    let extensions = [
        AEPIdentity.Identity.self,
        Lifecycle.self,
        Signal.self,
        Edge.self,
        AEPEdgeIdentity.Identity.self,
        Consent.self,
        UserProfile.self,
        Places.self,
        Messaging.self,
        Optimize.self,
        Assurance.self
    ]
    
Android
  1. Dans Android Studio, assurez-vous que aepsdk-messaing-android fait partie des dépendances dans build.gradle.kts (module :app) dans Android ChevronDown Gradle Scripts. Voir Gradle.

  2. Accédez à Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > LumaApplication dans le navigateur de projet Android Studio.

  3. Assurez-vous que com.adobe.marketing.mobile.Messaging fait partie de votre liste d’importations.

    import import com.adobe.marketing.mobile.Messaging

  4. Assurez-vous que Messaging.EXTENSION fait partie du tableau d’extensions que vous enregistrez.

    code language-kotlin
    val extensions = listOf(
        Identity.EXTENSION,
        Lifecycle.EXTENSION,
        Signal.EXTENSION,
        Edge.EXTENSION,
        Consent.EXTENSION,
        UserProfile.EXTENSION,
        Places.EXTENSION,
        Messaging.EXTENSION,
        Optimize.EXTENSION,
        Assurance.EXTENSION
    )
    

Enregistrer un jeton d’appareil pour les notifications push

Vous devez enregistrer le jeton d’appareil pour les notifications push.

iOS
  1. Accédez à Luma > Luma > AppDelegate dans le navigateur de projet Xcode.

  2. Ajoutez l’API MobileCore.setPushIdentifier à la fonction func application(_ application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: Data) .

    code language-swift
    // Send push token to Mobile SDK
    MobileCore.setPushIdentifier(deviceToken)
    

    Cette fonction récupère le jeton d’appareil propre à l’appareil sur lequel l’application est installée. Définit ensuite le jeton pour la diffusion de la notification push à l’aide de la configuration que vous avez définie et qui repose sur le service de notification push Apple (APNs).

Android
  1. Accédez à Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > LumaApplication dans le navigateur de projet Android Studio.

  2. Ajoutez l’API MobileCore.setPushIdentifier à la fonction override fun onCreate() dans class LumaAplication : Application, dans FirebaseMessaging.getInstance().token.addOnCompleteListener.

    code language-kotlin
    // Send push token to Mobile SDK
    MobileCore.setPushIdentifier(token)
    

    Cette fonction récupère le jeton d’appareil propre à l’appareil sur lequel l’application est installée. Définit ensuite le jeton pour la diffusion de la notification push à l’aide de la configuration que vous avez définie et qui repose sur Firebase Cloud Messaging (FCM).

IMPORTANT
Pour iOS uniquement : le MobileCore.updateConfigurationWith(configDict: ["messaging.useSandbox": true]) détermine si les notifications push utilisent un sandbox APNs ou un serveur de production pour envoyer des notifications push. Lors du test de votre application dans le simulateur ou sur un appareil, assurez-vous que la messaging.useSandbox est définie sur true afin de recevoir des notifications push. Lors du déploiement de votre application pour production ou test à l’aide d’Apple Testflight, assurez-vous de messaging.useSandbox définir sur false sinon votre application de production ne pourra pas recevoir de notifications push.


​>Firebase Cloud Messaging (FCM) ne prend pas en charge le concept de sandbox pour les notifications push.

Créer votre propre notification push

Pour créer votre propre notification push, vous devez définir un événement dans Journey Optimizer qui déclenche un parcours qui se charge de son envoi.

Mise à jour du schéma

Vous allez définir un nouveau type d’événement, qui n’est pas encore disponible dans la liste des événements définis dans votre schéma. Vous utiliserez ce type d’événement ultérieurement lors du déclenchement des notifications push.

  1. Dans l’interface utilisateur de Journey Optimizer, sélectionnez Schémas dans le rail de gauche.

  2. Sélectionnez Parcourir dans la barre d’onglets.

  3. Sélectionnez votre schéma, par exemple Luma Mobile App Event Schema pour l’ouvrir.

  4. Dans l’éditeur de schémas :

    1. Sélectionnez le champ eventType.

    2. Dans le volet Propriétés du champ, faites défiler l’écran vers le bas pour afficher la liste des valeurs possibles pour le type d’événement. Sélectionnez Ajouter une ligne et ajoutez application.test comme VALEUR et Test event for push notification comme DISPLAY NAME.

    3. Sélectionnez Appliquer.

    4. Sélectionnez Enregistrer.

      Ajouter une valeur aux types d’événements {modal="regular"}

Définition d’un événement

Les événements dans Journey Optimizer vous permettent de déclencher des parcours pour envoyer des messages, par exemple des notifications push. Voir À propos des événements pour plus d’informations.

  1. Dans l’interface utilisateur de Journey Optimizer, sélectionnez Configurations dans le rail de gauche.

  2. Dans l’écran Tableau de bord, cliquez sur le bouton Gérer dans la mosaïque Événements.

  3. Dans l’écran Événements, sélectionnez Créer un événement.

  4. Dans le volet Modifier l’événement1 :

    1. Saisissez LumaTestEvent comme Nom de l’événement.

    2. Fournissez une Description par exemple Test event to trigger push notifications in Luma app.

    3. Sélectionnez le schéma d’événement d’expérience d’application mobile que vous avez créé précédemment dans Créer un schéma XDM dans la liste Schéma, par exemple Luma Mobile App Event Schema v.1.

    4. Sélectionnez Modifier en regard de la liste Champs.

      Modifier l’événement : étape 1 {modal="regular"}

      Dans la boîte de dialogue Champs, assurez-vous que les champs suivants sont sélectionnés (en plus des champs par défaut qui sont toujours sélectionnés (_id, id et timestamp). À l’aide de la liste déroulante, vous pouvez basculer entre Sélectionné, Tous et Principal ou utiliser le champ Rechercher .

      • Identifiant de l’application (id),
      • Type d’événement (eventType),
      • Principal (principal).

      Modifier les champs d’événement {modal="regular"}

      Sélectionnez ensuite Ok.

    5. Sélectionnez Modifier en regard du champ Condition d’identifiant d’événement.

      1. Dans la boîte de dialogue Ajouter une condition d’identifiant d’événement, effectuez un glisser-déposer Type d’événement (eventType) sur pour Faire glisser et déposer un élément ici.

      2. Dans la fenêtre contextuelle, faites défiler l’écran vers le bas et sélectionnez application.test (qui correspond au type d’événement que vous avez ajouté précédemment à la liste des types d’événement dans le cadre de Mettre à jour votre schéma). Faites ensuite défiler l’écran jusqu’en haut et sélectionnez Ok.

      3. Sélectionnez Ok pour enregistrer la condition.

        Modifier la condition d’événement {modal="regular"}

    6. Sélectionnez ECID (ECID) dans la liste Espace de noms. Le champ Identifiant du profil est automatiquement renseigné avec L’identifiant du premier élément de l’ECID de clé pour le mappage identityMap.

    7. Sélectionnez Enregistrer.
      Modifier l’événement : étape 2 {modal="regular"}

Vous venez de créer une configuration d’événement basée sur le schéma d’événements d’expérience d’application mobile que vous avez créé précédemment dans le cadre de ce tutoriel. Cette configuration d’événement filtre les événements d’expérience entrants à l’aide de votre type d’événement spécifique (application.test). Ainsi, seuls les événements de ce type spécifique, déclenchés à partir de votre application mobile, déclencheront le parcours que vous créez à l’étape suivante. Dans un scénario réel, vous pouvez envoyer des notifications push à partir d'un service externe. Toutefois, les mêmes concepts s’appliquent : à partir de l’application externe, envoyez un événement d’expérience dans Experience Platform qui comporte des champs spécifiques sur lesquels vous pouvez appliquer des conditions avant que ces événements ne déclenchent un parcours.

Création du parcours

L’étape suivante consiste à créer le parcours qui déclenche l’envoi de la notification push lors de la réception de l’événement approprié.

  1. Dans l’interface utilisateur de Journey Optimizer, sélectionnez Parcours dans le rail de gauche.

  2. Sélectionnez Créer un Parcours.

  3. Dans le panneau Propriétés du Parcours ​:

    1. Saisissez un Nom pour le parcours, par exemple Luma - Test Push Notification Journey.

    2. Saisissez une Description pour le parcours, par exemple Journey for test push notifications in Luma mobile app.

    3. Assurez-vous que l’option Autoriser la reprise est sélectionnée et définissez Période d’attente de reprise sur 30 Secondes.

    4. Cliquez sur OK.

      Propriétés du parcours {modal="regular"}

  4. De retour dans la zone de travail de parcours, à partir de l’ÉVÉNEMENTS, faites glisser et déposez votre Événement LumaTestEvent sur la zone de travail où elle s’affiche Sélectionnez un événement d’entrée ou une activité de lecture d’audience.

    • Dans le panneau Événements : LumaTestEvent, saisissez un Libellé, par exemple Luma Test Event.
  5. Dans la liste déroulante ACTIONS, effectuez un glisser-déposer Push Push sur le Ajouter qui apparaît à droite de votre activité LumaTestEvent. Dans le volet Actions : Push :

    1. Fournissez un Libellé, par exemple Luma Test Push Notification, fournissez un Description par exemple Test push notification for Luma mobile app, sélectionnez Transactionnel dans la liste Catégorie et sélectionnez Luma dans la surface ​Push.

    2. Sélectionnez Modifier Modifier le contenu pour commencer à modifier la notification push réelle.

      Propriétés push {modal="regular"}

      Dans l’éditeur Notification push :

      1. Saisissez un Titre, par exemple Luma Test Push Notification et saisissez un Corps, par exemple Test push notification for Luma mobile app.

      2. Vous pouvez éventuellement saisir un lien vers une image (.png ou .jpg) dans Ajouter un média. Si vous le faites, l’image fait partie de la notification push. Notez que si vous le faites, vous devez vous occuper de la gestion correcte de l’image dans votre application mobile.

      3. Pour enregistrer et quitter l’éditeur, sélectionnez Chevron gauche .

        Éditeur push {modal="regular"}

    3. Pour enregistrer et terminer la définition de la notification push, sélectionnez Ok.

  6. Votre parcours doit se présenter comme suit : Sélectionnez Publier pour publier et activer votre parcours.
    parcours terminé {modal="regular"}

Déclencher la notification push

Tous les ingrédients sont en place pour envoyer une notification push. Il reste à savoir comment déclencher cette notification push. En substance, il est identique à ce que vous avez vu auparavant : il vous suffit d’envoyer un événement d’expérience avec la payload appropriée (comme dans Events).

Cette fois, l’événement d’expérience que vous êtes sur le point d’envoyer n’est pas créé pour créer un dictionnaire XDM simple. Vous allez utiliser un struct représentant une payload de notification push. La définition d’un type de données dédié est une autre manière d’implémenter la création de payloads d’événement d’expérience dans votre application.

N’oubliez pas que vous envoyez une notification push depuis l’application uniquement à titre d’illustration. Un scénario plus courant consiste à envoyer l’événement d’expérience (qui déclenche le parcours de notification push) à partir d’une autre application ou d’un autre service.

iOS
  1. Accédez à Luma > Luma > Modèle > XDM > TestPushPayload dans le navigateur de projet Xcode, puis inspectez le code.

    code language-swift
    import Foundation
    
    // MARK: - TestPush
    struct TestPushPayload: Codable {
       let application: Application
       let eventType: String
    }
    
    // MARK: - Application
    struct Application: Codable {
       let id: String
    }
    

    Le code est une représentation de la payload simple suivante que vous allez envoyer pour déclencher votre parcours de notification push de test.

    code language-json
    {
       "eventType": string,
       "application" : [
           "id": string
       ]
    }
    
  2. Accédez à Luma > Luma > Utils > MobileSDK dans le navigateur de projet Xcode, puis ajoutez le code suivant à func sendTestPushEvent(applicationId: String, eventType: String) :

    code language-swift
    // Create payload and send experience event
    Task {
        let testPushPayload = TestPushPayload(
            application: Application(
                id: applicationId
            ),
            eventType: eventType
        )
        // send the final experience event
        await sendExperienceEvent(
            xdm: testPushPayload.asDictionary() ?? [:]
        )
    }
    

    Ce code crée une instance de testPushPayload à l’aide des paramètres fournis à la fonction (applicationId et eventType), puis appelle sendExperienceEvent lors de la conversion de la payload en dictionnaire. Ce code prend également en compte les aspects asynchrones de l’appel du SDK Adobe Experience Platform par le biais de l’utilisation du modèle d’accès simultané de Swift, basé sur await et async.

  3. Accédez à Luma > Luma > Views > General > ConfigView dans le navigateur de projet Xcode. Dans la définition du bouton de notification push , ajoutez le code suivant pour envoyer la payload d’événement d’expérience de notification push de test afin de déclencher votre parcours chaque fois que vous appuyez sur ce bouton.

    code language-swift
    // Setting parameters and calling function to send push notification
    Task {
        let eventType = testPushEventType
        let applicationId = Bundle.main.bundleIdentifier ?? "No bundle id found"
        await MobileSDK.shared.sendTestPushEvent(applicationId: applicationId, eventType: eventType)
    }
    
Android
  1. Accédez à Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > xdm > TestPushPayload.kt dans le navigateur d’Android Studio et inspectez le code.

    code language-kotlin
    import com.google.gson.annotations.SerializedName
    
    data class TestPushPayload(
       @SerializedName("application") val application: Application,
       @SerializedName("eventType") val eventType: String
    ) {
       fun asMap(): Map<String, Any> {
          return mapOf(
                "application" to application.asMap(),
                "eventType" to eventType
          )
       }
    }
    
    data class Application(
       @SerializedName("id") val id: String
    ) {
       fun asMap(): Map<String, Any> {
          return mapOf(
                "id" to id
          )
       }
    }
    

    Le code est une représentation de la payload simple suivante que vous allez envoyer pour déclencher votre parcours de notification push de test.

    code language-json
    {
       "eventType": string,
       "application" : [
           "id": string
       ]
    }
    
  2. Accédez à Android ChevronDown > app > kotlin+java > com.adobe.luma.tutorial.android > models > MobileSDK dans le navigateur d’Android Studio et ajoutez le code suivant à func sendTestPushEvent(applicationId: String, eventType: String) :

    code language-kotlin
    // Create payload and send experience event
    val testPushPayload = TestPushPayload(
       Application(applicationId),
       eventType
    )
    sendExperienceEvent(testPushPayload.asMap())
    

    Ce code crée une instance de testPushPayload à l’aide des paramètres fournis à la fonction (applicationId et eventType), puis appelle sendExperienceEvent lors de la conversion de la payload en mappage.

  3. Accédez à Android ChevronDown > app > kotlin+java > com.adobe.luma.android.tutorial > views > ConfigView.kt dans le navigateur d’Android Studio. Dans la définition du bouton de notification push , ajoutez le code suivant pour envoyer la payload d’événement d’expérience de notification push de test afin de déclencher votre parcours chaque fois que vous appuyez sur ce bouton.

    code language-kotlin
    // Setting parameters and calling function to send push notification
    val eventType = testPushEventType
    val applicationId = context.packageName
    scope.launch {
          MobileSDK.shared.sendTestPushEvent(
             applicationId,
             eventType
          )
    }
    

Validation à l’aide de l’application

Pour valider le parcours et l’événement de notification push :

iOS
  1. Recréez et exécutez l’application dans le simulateur ou sur un appareil physique à partir de Xcode, à l’aide de Play .

  2. Accédez à l’onglet Paramètres.

  3. Appuyez sur Notification push.

    La notification push s’affiche au-dessus de l’application.

    {width="300"}

Android
  1. Recréez et exécutez l’application dans le simulateur ou sur un appareil physique à partir d’Android Studio, à l’aide de Play .

  2. Accédez à l’onglet Paramètres.

  3. Appuyez sur Notification push.

    La notification push s’affiche au-dessus de l’application.

    {width="300"}

La manière de gérer et d’afficher la notification push dans l’application elle-même dépasse le cadre de cette section. Chaque plateforme met en œuvre la gestion et affiche les notifications d’une manière spécifique. Voir pour plus d’informations :

Étapes suivantes

Vous devriez maintenant disposer de tous les outils nécessaires pour gérer les notifications push dans votre application. Par exemple, vous pouvez créer un parcours dans Journey Optimizer qui envoie une notification push de bienvenue lorsqu’un utilisateur de l’application se connecte. Ou une notification push de confirmation lorsqu’un utilisateur achète un produit dans l’application. Ou entre la limite géographique d’un emplacement (comme vous le voyez dans la leçon Places).

SUCCESS
Vous avez maintenant activé l’application pour les notifications push à l’aide de Journey Optimizer et de l’extension Journey Optimizer pour Experience Platform Mobile SDK.
Merci d’avoir consacré votre temps à découvrir Adobe Experience Platform Mobile SDK. Si vous avez des questions, souhaitez partager des commentaires généraux ou des suggestions sur le contenu futur, partagez-les dans ce article de discussion de la communauté Experience League.

Suivant : créer et envoyer des messages in-app

recommendation-more-help
9fed61f5-c338-47ad-8005-0b89a5f4af8b