Déclencher des notifications push

Notifications déclenchées par le partenaire

Ajouter un message et envoyer une notification

Arrière-plan

Une fois qu'un utilisateur a ajouté un billet, vous pouvez lui envoyer un message concernant ce billet et vous assurer qu'il reçoit une notification à ce sujet. Lorsque vous utilisez la requête d'API Ajouter un message avec un message_type égal à TEXT_AND_NOTIFY, les éléments suivants se produisent :

  1. Un élément "Message" est ajouté au dos du billet (également appelé modèle de détails) et une notification push est envoyée aux utilisateurs qui ont enregistré le billet.
  2. Lorsque l'utilisateur appuie sur la notification, Google Wallet s'ouvre à l'avant du billet (également appelé vue de la carte). Un appel s'affiche en haut de l'écran avec un bouton "Afficher le message".
  3. Si l'utilisateur clique sur l'appel, il est redirigé vers le dos du billet, où les nouveaux messages non lus sont mis en surbrillance.

Quelques éléments à prendre en compte lorsque vous envoyez des messages avec des notifications aux utilisateurs

  • Les utilisateurs doivent avoir activé les notifications pour leurs billets afin de recevoir les notifications push liées aux messages.
  • Les messages peuvent contenir des URI vers votre site Web ou votre application. Les liens hypertexte doivent être liés au billet. Envoyer des utilisateurs vers des liens qui ne sont pas liés au billet constitue une violation du Règlement sur l'utilisation acceptable.
  • Vous pouvez envoyer un maximum de trois messages qui déclenchent une notification push sur une période de 24 heures. Google peut limiter votre quota de diffusion de notifications push s'il estime que vous envoyez du spam à vos utilisateurs.
  • La notification push que les utilisateurs voient sur leur écran de verrouillage est contrôlée par Google Wallet.
  • Vous pouvez utiliser les méthodes UPDATE ou PATCH pour modifier ou supprimer des données de message à l'aide du point de terminaison de classe ou d'objet standard.

Procédure d'intégration

Lorsque vous souhaitez informer les utilisateurs d'un nouveau message d'émetteur ajouté à l'aide de l' API AddMessage, vous devez mettre à jour l'AddMessageRequest afin que le message contenant votre nouveau texte ait le MessageType TEXT_AND_NOTIFY au lieu de TEXT.

Exemple de requête JSON pour ajouter un message et envoyer une notification dans une classe de billets

  
  "id": ISSUER_ID.CLASS_ID",
  "message":
    {
        "header":"My Class message header",
        "body": "My Class message body with a <a href="https://wallet.google">Hyperlink<\a>",
        "id": "message_id",
        "message_type": "TEXT_AND_NOTIFY"
    },
  

Exemple de requête JSON pour ajouter un message et envoyer une notification dans un objet de billets

  
  "id": OBJECT_ID",
  "classId": "ISSUER_ID.CLASS_ID",
  "message":
    {
        "header":"My Object message header",
        "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>",
        "id": "message_id",
        "message_type": "TEXT_AND_NOTIFY"
    },
  

Exemple de réponse pour ajouter un message et envoyer une notification pour une classe de billets

  // The updated resource
      {
      "kind": "walletobjects#walletObjectMessage",
      "header": "My Object message header",
      "body": "My Object message body with a <a href="http://play.google.com/store/apps/details?id=com.google.android.apps.maps">Hyperlink<\a>",
      "id": "message_id",
      "messageType": "textAndNotify"
    },
  

Gestion des exceptions

Toute tentative d'envoi de plus de trois notifications générera une réponse QuotaExceededException . Vous pouvez définir d'autres mises à jour du billet à l'aide de "TEXT" au lieu de "TEXT_AND_NOTIFY", comme indiqué dans la procédure d'intégration.

Mettre à jour un champ et envoyer une notification

Arrière-plan

Une fois qu'un utilisateur a ajouté un billet, vous pouvez déclencher une notification push lorsque vous mettez à jour certains champs. La notification s'affiche sur l'écran de verrouillage de l'utilisateur et l'informe qu'une mise à jour est disponible pour son billet. Cette notification ne se déclenche que pour un sous-ensemble spécifique de champs définis ci-dessous à l'aide des méthodes d'API UPDATE et PATCH. Une fois qu'un appel d'API est effectué pour mettre à jour le billet, les éléments suivants se produisent :

  1. Une notification push est déclenchée et affichée sur l'écran de verrouillage de l'utilisateur, l'informant de une mise à jour du billet.
  2. Lorsque l'utilisateur appuie sur la notification, Google Wallet s'ouvre à l'avant de la carte (également appelé vue de la carte). Un appel s'affiche en haut de l'écran avec un bouton "Vérifier la mise à jour".
  3. Si l'utilisateur clique sur le bouton, il est redirigé vers un écran où il peut voir les champs qui ont été modifiés par la mise à jour.

Quelques éléments à prendre en compte lorsque vous envoyez des notifications de mise à jour de champ

  • Les utilisateurs doivent avoir activé les notifications pour leurs billets afin de recevoir les notifications push liées aux mises à jour.
  • Une notification n'est déclenchée que si l'heure de début de l'événement ou du vol est dans trois heures ou moins, afin d'éviter d'envoyer du spam aux utilisateurs.
  • Vous pouvez envoyer un maximum de trois mises à jour qui déclenchent une notification push sur une période de 24 heures. Google peut limiter votre quota de diffusion de notifications push s'il estime que vous envoyez du spam à vos utilisateurs.
  • La notification push que les utilisateurs voient sur leur écran de verrouillage est contrôlée par Google Wallet.
  • Le champ notifyPreference est un champ temporaire qui n'existe que dans cette requête. Pour les requêtes futures lorsque vous souhaitez déclencher une notification, vous devrez réinitialiser ce champ dans la requête de classe ou d'objet.

Procédure d'intégration

Pour déclencher ces notifications, vous devez utiliser les appels UPDATE ou PATCH existants et spécifier le notifyPreference. Lorsque vous mettez à jour un champ dans une classe ou un objet, vous pouvez ajouter un nouveau champ, notifyPreference, à la requête de classe ou d'objet pour déclencher la notification.

Exemple de requête JSON pour mettre à jour et envoyer une notification dans une classe

    …
    "dateTime":
        {
            "kind": "walletobjects#eventDateTime",
            "doorsOpen": "2024-09-23T19:20:50.00"
        },
    "multipleDevicesAndHoldersAllowedStatus": "multipleHolders",
    "notifyPreference": "notifyOnUpdate",
    …
  

Si vous définissez notifyPreference sur notifyOnUpdate, une notification sera déclenchée, à condition que le champ mis à jour soit actuellement compatible.

Champs pris en charge

FlightObject
  • boardingAndSeatingInfo.seatNumber
  • boardingAndSeatingInfo.seatAssignment

Notifications de proximité

Cette fonctionnalité affiche une notification push aux utilisateurs qui ont activé les notifications et accordé un accès précis et permanent à leur position à l'application Google Wallet. Elle leur rappelle qu'ils ont enregistré un billet pertinent pour leur position actuelle.

Procédure d'intégration

Utilisation

Pour utiliser cette fonctionnalité, vous devez ajouter des lieux à vos classes et objets. Vous pouvez ajouter jusqu'à 10 lieux par classe et 10 par objet. Utilisez MerchantLocations dans la définition de votre classe ou de votre objet. Vous pouvez ajouter ces lieux lorsque vous utilisez les méthodes insert, patch ou update.

Une fois que vous avez ajouté des lieux à une classe ou à un objet, Google envoie des notifications aux utilisateurs lorsqu'ils se trouvent à proximité. Google détermine la distance à laquelle un utilisateur doit se trouver et la durée pendant laquelle il doit rester dans la zone avant que la notification ne soit envoyée. Google contrôle également le texte de la notification.

Exemple de LoyaltyClass avec MerchantLocations défini :
{
  "kind": "walletobjects#loyaltyClass",
  "programLogo": {
  "kind": "walletobjects#image",
  "sourceUri": {
    "uri":
    ...
  }
  },
  "localizedProgramName": {
    "kind": "walletobjects#localizedString",
    "defaultValue": {
      "kind": "walletobjects#translatedString",
      "language": "en",
      "value": "Program Name",
    }
  },
  "id": Id1234,
  "version": "1",
  "allowMultipleUsersPerObject": true,
  "reviewStatus": "underReview",
  "enableSmartTap": false,
  "localizedIssuerName": {
    "kind": "walletobjects#localizedString",
    "defaultValue": {
      "kind": "walletobjects#translatedString",
      "language": "en",
      "value": "Issuer Name"
    }
  },
  "multipleDevicesAndHoldersAllowedStatus": "multipleHolders",
  "merchantLocations": [
    {
      "latitude": 37.79020867928078,
      "longitude": -122.39004
    },
    {
      "latitude": 37.42587,
      "longitude": -122.08620
    },
  ]
}

Comportement attendu

Les utilisateurs devraient recevoir des notifications persistantes concernant leurs billets lorsqu'ils se trouvent dans l'un des MerchantLocations spécifiés. S'ils cliquent sur la notification, leur billet s'ouvre dans Google Wallet. Les utilisateurs peuvent ignorer la notification en balayant l'écran. Lorsqu'un utilisateur quitte le lieu, la notification disparaît.

Notifications automatiques déclenchées par Google Wallet

Notification de disponibilité

Google Wallet envoie une notification à l'utilisateur trois heures avant son vol. L'heure du vol est définie par class.localScheduledDepartureDateTime.

L'utilisateur doit avoir activé les notifications pour les recevoir. Pour cela, vérifiez dans Paramètres > Notifications si l'option Notifications liées à vos cartes est activée.

La notification s'affiche dans la zone dédiée, ainsi que sur l'écran de verrouillage si l'utilisateur a activé les notifications pour l'écran de verrouillage .

Le format de la notification ne peut pas être modifié. Il se présente comme suit :

  Boarding pass for your flight to class.destination.airportIataCode
  

Si l'utilisateur appuie sur la notification et déverrouille son appareil, son billet s'affiche dans l'application Google Wallet.

Si l'utilisateur possède plusieurs billets, seul celui dont la date est la plus proche est affiché. S'il a ajouté des billets groupés billets comme indiqué dans Regrouper plusieurs cartes d'embarquement, la notification n'affiche que l'un des billets du groupe. Toutefois, l'utilisateur peut balayer l'écran vers la gauche ou vers la droite pour afficher les autres billets de ce groupe.

La notification est épinglée et ne s'efface pas automatiquement lorsqu'un utilisateur l'ouvre. Elle s'efface automatiquement 60 minutes après class.localScheduledDepartureDateTime.

Notification de mise à jour du vol

Lorsque certains champs d'un vol sont modifiés, les utilisateurs qui ont ajouté une ou plusieurs cartes d'embarquement reçoivent une notification push sur leur appareil. Certaines conditions doivent être réunies pour cela.

Terminal et porte de départ

Si vous modifiez les champs class.origin.terminal ou class.origin.gate, et que la condition suivante est remplie, l'utilisateur recevra une notification lui indiquant que le champ a été modifié.

  • Il reste moins de trois heures avant le vol avant class.localScheduledDepartureDateTime.

La notification s'affiche au format suivant : "Sample Airlines a modifié la porte d'embarquement de votre vol. L'embarquement est désormais prévu porte A1". Ce format ne peut pas être modifié.

Heures d'embarquement et de départ

Si vous modifiez les champs class.localBoardingDateTime ou class.localEstimatedOrActualDepartureDateTime et que les conditions suivantes sont remplies, l'utilisateur recevra une notification lui indiquant que le champ a été modifié.

  • Il reste moins de trois heures avant le vol avant class.localScheduledDepartureDateTime.
  • L'heure exacte varie d'au moins 10 minutes.

La notification s'affiche au format suivant : "_Sample Airlines a modifié l'heure d'embarquement de votre vol. L'embarquement est désormais prévu à 18:00_". Ce format ne peut pas être modifié.