Déclencher des notifications push

Notifications déclenchées par les partenaires

Ajouter un message et envoyer une notification

Arrière-plan

Une fois qu'un utilisateur a ajouté une carte, vous pouvez lui envoyer un message lié à cette carte et vous assurer qu'il en est informé. Lorsque vous utilisez la requête Add Message API avec un message_type égal à TEXT_AND_NOTIFY, les événements suivants se produisent :

  1. Un élément Message est ajouté au dos de la carte (également appelé Modèle d'informations) et une notification push est envoyée aux utilisateurs ayant enregistré la carte.
  2. Une fois que l'utilisateur appuie sur la notification, Google Wallet s'ouvre au premier plan du pass (c'est-à-dire la vue Carte). Un encadré s'affiche en haut de l'écran avec un bouton "Afficher le message".
  3. En cliquant sur la bulle, les utilisateurs sont redirigés vers le dos de la carte, où les nouveaux messages non lus sont mis en évidence.

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

  • Les utilisateurs doivent avoir activé les notifications pour leurs pass 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 hypertextes doivent être associés au pass. Envoyer les utilisateurs vers des liens qui ne sont pas liés au pass constitue une infraction au Règlement sur l'utilisation acceptable.
  • Vous pouvez envoyer un maximum de trois messages déclenchant 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 les 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 de l'émetteur ajouté à l'aide de l'API AddMessage, vous devez mettre à jour AddMessageRequest afin que Message, qui contient votre nouveau texte, ait MessageType défini sur TEXT_AND_NOTIFY au lieu de TEXT.

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

  
  "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 Pass

  
  "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 Pass

  // 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 de notification plus de trois fois générera une réponse QuotaExceededException . Toute autre modification apportée à la carte peut être définie à l'aide de TEXT au lieu de TEXT_AND_NOTIFY, comme indiqué dans les étapes d'intégration.

Mettre à jour le champ et envoyer une notification

Arrière-plan

Une fois qu'un utilisateur a ajouté un titre de transport, 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 de son pass est disponible. Cette notification ne sera déclenchée que pour un sous-ensemble spécifique de champs définis ci-dessous à l'aide des méthodes d'API UPDATE et PATCH. Lorsqu'un appel d'API est effectué pour mettre à jour la carte, les événements suivants se produisent :

  1. Une notification push est déclenchée et s'affiche sur l'écran de verrouillage de l'utilisateur pour l'informer d'une mise à jour de la carte.
  2. Une fois que l'utilisateur appuie sur la notification, Google Wallet ouvre la carte en premier plan (vue de la carte). L'utilisateur voit alors un encadré en haut de l'écran avec un bouton "Examiner la mise à jour".
  3. En cliquant sur le bouton, l'utilisateur est redirigé vers un écran où il peut voir les champs qui ont été modifiés par la mise à jour.

Éléments à prendre en compte lors de l'envoi de notifications de modification de champ

  • Les utilisateurs doivent avoir activé les notifications pour leurs cartes afin de recevoir les notifications push liées aux mises à jour.
  • Vous pouvez envoyer un maximum de trois mises à jour déclenchant 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 pour cette requête. Pour les futures requêtes dans lesquelles 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 devrez utiliser les appels UPDATE ou PATCH existants et spécifier 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 un cours

    …
    "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 modifié soit actuellement compatible.

Champs pris en charge

EventTicketClass
  • eventName
  • eventVenue.name
  • eventvenue.address
  • eventDateTime.doorsOpen
  • eventDateTime.start
EventTicketObject
  • eventSeat.seat
  • eventSeat.row
  • eventSeat.section
  • eventSeat.gate

Notifications Nearby

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

Procédure d'intégration

Utilisation

Pour utiliser cette fonctionnalité, vous devez ajouter des lieux à vos cours et à vos objets. Vous pouvez ajouter jusqu'à 10 lieux par cours et 10 par objet. Utilisez MerchantLocations dans la définition de votre classe ou de votre objet. Vous pouvez ajouter ces emplacements 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 proximité requise et la durée de séjour dans la zone avant l'envoi de la notification. Google contrôle également le texte de la notification.

Voici un exemple de LoyaltyClass avec les MerchantLocations définies :
{
  "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 doivent recevoir des notifications persistantes concernant leurs pass lorsqu'ils se trouvent dans l'un des MerchantLocations spécifiés. S'il clique sur la notification, son billet s'ouvre dans Google Wallet. Les utilisateurs peuvent ignorer la notification en balayant l'écran. Lorsque l'utilisateur quitte le lieu, la notification disparaît.

Notifications automatiques déclenchées par Google Wallet

Notification à venir

Google Wallet envoie une notification à l'utilisateur trois heures avant l'événement. L'heure de l'événement est définie par class.dateTime.start.

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 :

  class.eventName
  

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 comme indiqué dans Regrouper plusieurs billets d'événements, 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 du 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.dateTime.start.