IBM Cloud Docs
Créer et envoyer des notifications push sur Safari web en utilisant Event Notifications

Créer et envoyer des notifications push sur Safari web en utilisant Event Notifications

Créez un service Event Notifications, ajoutez une destination push pour le service Apple Push Notification (Safari) et envoyez des messages aux périphériques iOS.

Qu'est-ce qu'Event Notifications ?

Event Notifications est un service de routage de notification d'événements qui vous informe des événements critiques qui se produisent dans votre compte IBM Cloud ou qui déclenche des actions automatisées en utilisant des webhooks. Vous pouvez filtrer et acheminer les notifications d'événements provenant de services IBM Cloud tels que Availability Monitoring, vers des courriels, des SMS, des notifications push (FCM ou APN) et des webhooks.

Comment les clients utilisent-ils les notifications push Safari ?

Le diagramme suivant montre comment les clients utilisent les notifications Push iOS.

Comment les clients utilisent les
les clients utilisent les
push*

Objectifs

Ce tutoriel explique comment envoyer des notifications push comme suit :

  • Créez une application Web avec Event Notifications.
  • Obtenez les données d'identification de Safari.
  • Téléchargez le code et effectuez la configuration des notifications.
  • Configurez et envoyez des notifications push Safari à Safari Web.

Avant de commencer

Vous devez disposer des prérequis suivants :

  • Un compte IBM Cloud. Si vous n'en avez pas, créez un compte IBM Cloud.
  • Une instance Event Notifications Instance.
  • Une clé de l'API IAM pour permettre au SDK d'accéder à votre compte. Créez-en un ici.

Création d'une instance de service Event Notifications

  • Connectez-vous à votre compteIBM Cloud
  • Dans le catalogueIBM Cloud, recherchez 'Event Notifications > Event Notifications.
  • Sélectionnez une Region dans la liste des régions prises en charge et sélectionnez une pricing plan.
  • Fournissez un Service name.
  • Sélectionner resource group.
  • Acceptez les contrats de licence et les dispositions en cochant la case.
  • Cliquez sur Create.

Obtenir les données d'identification de Safari

  • Ajoutez le certificat intermédiaire d'Apple Worldwide à votre chaîne de clés, vous pouvez trouver le certificat ici.

    Certificates, Apple Worldwide Intermediate certificate Site
    Certificates, Identifiers & Profiles

    Certificates, Apple Worldwide Intermediate certificate Add
    Certificates, Identifiers & Profiles

  • Créez un identifiant Web Push dans votre compte Apple Developer.

    L'ID push Web (identificateur de bundle) est un identificateur unique qui identifie une application spécifique. Chaque application nécessite un identifiant Web Push.

  • Allez sur le portail des développeurs Apple et sélectionnez " Certificates, Identifiers & Profiles.

    Certificats, identifiants et
    , identifiants et

  • Accédez à Identifiers > Add identifier button.

    d'
    d'identification*

  • Cliquez sur le bouton " Add a new Identifier.

    Ajouter un nouveau
    un nouveau bouton
    'identification*

  • Sélectionnez l'option d'ID push Web.

    Option Web Push
    Web Push IDs* Option Web Push IDs*
    Web Push IDs*

  • Fournissez l'identificateur et la description de votre ID push Web. L'identificateur est une chaîne de domaine inverse unique pour votre ID push Web, telle que web.com.example.domain (la chaîne doit commencer par web). Si votre site Web est yourwebsite.com, ajoutez l'identificateur sous la forme web.com.yourwebsite.

    Web Push
    Push IDs*Web Push

  • Continuez et cliquez sur " Create certificate sur la page suivante.

    ![](images/en_createcertificate_button.png "de création de certificatBouton de création de certificatBouton de création de " caption-side="bottom"} de création "){: caption="certificat*

    Créer une page{: caption="une page de certificatCréer une page " caption-side="bottom"} certificat

  • Créez une demande de signature de certificat à l'aide de KeyChain et enregistrez-la sur le disque. Pour plus d'informations, voir ici.

    Certificate Signing
    Create Certificate Signing

    Certificate Signing
    Create Certificate Signing

  • Téléchargez le fichier CertificateSigningRequest.certSigningRequest et cliquez sur Continue.

    du certificat de

    Page
    la
    du certificat*

  • Téléchargez le certificat avec l'extension .cer et cliquez deux fois dessus. Il l'ajoute au trousseau d'accès → Mes certificats.

  • Allez dans votre trousseau Accès→ Mon certificat, sélectionnez votre certificat et exportez-le.

    Export Certificate
    Upload Certificate Signing

    Exporter le certificat Ajouter le mot de
    la
    du certificat*

  • Ajoutez un mot de passe (Ne l'oubliez pas) et enregistrez-le en tant que certificat p12.

Ajouter une source d'API générique

Suivez ces étapes :

  • Accédez à la section Sources du tableau de bord Event Notifications.
  • Cliquez sur Add et sélectionnez une source d'API.
  • Entrez un nom et une description facultative, puis cliquez sur Add.

Créer une destination Event Notifications

Cliquez sur Destinations dans la console Event Notifications et ajoutez les détails de destination suivants :

  • Name : ajoutez un nom pour la destination.

  • Description : ajoutez une description facultative pour la destination.

  • Type : sélectionnez le type de notification push Safari dans la liste déroulante.

  • Sélectionnez un plan de destination: Destination de préproduction ou Destination de production.

    • Pre-production destination-sélectionnez cette destination comme destination d'envoi à faible coût, pour vos environnements de développement et de test.
    • Production destination-utilisez la fonctionnalité complète de cette destination. Nombre illimité de dispositifs et de messages sortants autorisés.
  • Mettez à jour les informations d'identification Safari Push avec les détails.

    • Website Name : nom du site Web. Il s'agit de l'intitulé utilisé dans le centre de notification.
    • Website push ID : chaîne de domaine inverse unique pour votre ID push de site Web, telle que web.com.example.domain (la chaîne doit commencer par web).
    • Website URL : URL du site Web qui devrait être autorisé à s'abonner aux notifications push Safari.
    • URL format string: L'URL à laquelle il faut se rendre lorsque l'on clique sur la notification. Utilisez %@ comme caractère générique pour les arguments que vous complétez lors de l'envoi de votre notification. Cette URL doit utiliser le schéma http ou https : sinon, elle n'est pas valide.
    • télécharger le certificat p12 et fournir le certificat 'password.

Créer une Event Notifications rubrique

Sélectionnez Topics dans la console Event Notifications et cliquez sur Create. Entrez les détails de la rubrique suivante :

  • Name : entrez un nom pour la rubrique.
  • Description : ajoutez une description facultative pour le sujet.
  • Source : sélectionnez une source dans la liste déroulante.
  • Event type : sélectionnez le type d'événement dans la liste déroulante.
  • Event sub type : sélectionnez un sous-type d'événement dans la liste déroulante du sous-type d'événement.
  • Severity : sélectionnez la gravité dans la liste déroulante de gravité.
  • Advanced conditions : écrivez vos propres conditions personnalisées, qui doivent suivre les spécifications jsonpath.

Créer un Event Notifications abonnement

Cliquez sur Subscriptions dans la console Event Notifications. Entrez les détails suivants sur l'abonnement :

  • Cliquez sur Click pour afficher l'assistant d'abonnement.

  • Complétez les détails de l'abonnement suivants :

    • Subscription name : nom de l'abonnement.
    • Subscription description : ajout d'une description facultative.
  • Sous la section Subscribe to a topic, sélectionnez une rubrique dans la liste déroulante et une destination dans la liste déroulante de destination.

  • Destination type : sélectionnez un type sous Destination et cliquez sur Add.

Mettre en place Event Notifications SDK web Safari

Le SDK Safari Web permet aux sites Web Safari de recevoir des notifications push. Procédez comme suit pour installer le SDK Firefox Web Event Notifications, initialiser le SDK et sélectionner l'envoi de notifications pour votre site Web.

  • Pour inclure le SDK dans votre projet, ajoutez les fichiers " ENPushSDK.js, " ENPushServiceWorker.js et " manifest_Website.json au dossier racine de votre projet.

  • Éditez le fichier manifest_Website.json.

    {
       "name": "YOUR_WEBSITE_NAME"
    }
    
  • Changez le nom de fichier manifest_Website.json en manifest.json.

  • Incluez le " manifest.json dans la balise " <head> de votre fichier html.

    <link rel="manifest" href="https://github.com/IBM/event-notifications-destination-webpush-sdk/blob/main/manifest_Website.json">
    
  • Inclure IBM Cloud web push SDK dans le script.

    <script src="https://github.com/IBM/event-notifications-destination-webpush-sdk/blob/main/ENPushSDK.js" async></script>
    
  • Procédez comme suit pour permettre au site Web d'initialiser le SDK.

    var enPush = new ENPush()
    
    function callback(response) {
       alert(response.response)
    }
    
    var initParams = {
       "instanceGUID": "<instance_guid>",
       "apikey": "<instance_apikey>",
       "region": "<region>",
       "deviceId": "<YOUR_DEVICE_ID>",
       "safariDestinationId": "<safari_destination_id>",
       "websitePushIdSafari": "<Safari Web Push Id Identifier>"
    }
    
    enPush.initialize(initParams, callback)
    
    • region: région de l'instance Event Notifications. par exemple, us-south,eu-gb, au-syd, eu-de et eu-es.

    • deviceId: facultatif deviceId pour l'enregistrement d'appareil.

  • Pour s'inscrire aux notifications, utilisez l'API " register() ou " registerWithUserId() pour enregistrer l'appareil auprès du service IBM Cloud {{site {{site.data.keyword.en_short}} Sélectionnez l'une des options suivantes :

    • S'enregistrer sans UserId :

      enPush.register(function(response) {
         alert(response.response)
      })
      
    • S'inscrire avec 'UserId. Pour la notification basée sur le " userId, la méthode d'enregistrement accepte un paramètre supplémentaire - le " userId.

    bmsPush.registerWithUserId("UserId",function(response) {
      alert(response.response)
    })
    

    UserId est la valeur de l'identificateur utilisateur avec lequel vous souhaitez enregistrer les périphériques dans l'instance de service push.

  • L'API subscribe abonne le périphérique à une balise. Une fois que le périphérique est abonné à une balise particulière, il peut recevoir des notifications envoyées pour cette balise. Ajoutez le fragment de code suivant à votre application Web pour vous abonner à une liste de balises.

    enPush.subscribe(tagName, function(response) {
      alert(response.response)
    })
    
  • Une fois la configuration terminée, exécutez votre application et enregistrez pour les notifications push.

Envoyer des notifications au périphérique Safari Web

Utilisez l'API d'envoi de notifications pour envoyer la notification push pour le périphérique Firefox. Vous pouvez utiliser le SDK d'administration Nœud ou Go au lieu d'appeler directement l'API.

Recevoir des
des