L'API Google Wallet Passes permet aux partenaires de spécifier un point de terminaison pour l'activation d'un titre de transport. Si une activation est nécessaire, un bouton "Activer" s'affiche. pour l'utilisateur. Lorsque l'utilisateur appuie dessus, le point de terminaison spécifié est appelé avec les paramètres décrits ci-dessous. Le point de terminaison doit s'assurer que les informations d'utilisation de la carte sont valides (code-barres ou (examen visuel) avant de le renvoyer. La carte sera alors mise à jour dans le compte Wallet de l'utilisateur. pour afficher les informations d'utilisation. Notez qu'avant l'activation, toute utilisation existante les informations ne seront pas affichées.
API d'activation
Le point de terminaison d'activation est spécifié dans l'API à l'aide de activationOptions sur la
classe de transports en commun.
Le partenaire est tenu de maintenir un point de terminaison d'activation fonctionnel avec
une latence raisonnable.
activationOptions: {
activationUrl: string
}| Champ | Description |
|---|---|
activationUrl |
URL du point de terminaison du partenaire appelé pour les demandes d'activation. L'URL doit être hébergé sur HTTPS et le fichier robots.txt doit permettre au chemin de l'URL d'être accessible UserAgent:Google-Valuables. |
L'état d'activation est stocké sur l'objet à l'aide du champ activationStatus.
Les états valides sont NOT_ACTIVATED et ACTIVATED. L'activation
le point de terminaison doit mettre à jour l'objet avec l'état ACTIVATED et veiller à ce que
comporte des informations d'utilisation valides, telles qu'un code-barres ou des paramètres d'inspection visuelle. La
Le champ deviceContext peut être utilisé pour l'épinglage à un appareil.
activationStatus: enum (ActivationStatus), deviceContext: { deviceToken: string }, hasLinkedDevice: boolean
| Champ | Description |
|---|---|
activationStatus |
État d'activation de cet objet de transports en commun. Cet état modifie la représentation
la demande et permettre
aux utilisateurs d’agir ; Ex. : un bouton d'activation s'affiche sur
les détails du billet si celui-ci est défini sur Les valeurs acceptées sont les suivantes :
|
deviceContext |
Contexte d'appareil auquel associer l'objet. S'il est défini, les informations d'utilisation ne seront renvoyés qu'à l'appareil donné. |
hasLinkedDevice |
Indique si cet objet est actuellement associé à un seul appareil. |
| Champ | Description |
|---|---|
deviceToken |
Si cette règle est définie, les informations d'utilisation ne sont renvoyées qu'à l'appareil concerné lors de l'activation
de l'objet. Il ne peut pas servir d'identifiant stable pour suivre l'appareil d'un utilisateur. Il
peuvent changer d'une carte à un autre pour le même appareil ou même
pour le même appareil. Pour définir ce paramètre, les appelants doivent également définir
Notez que le |
Épinglage à un appareil
L'épinglage à un appareil est une fonctionnalité qui permet à un utilisateur d'activer un titre de transport sur un appareil
les informations d'utilisation des titres de transport ne s'affichent que sur cet appareil. Ceci est distinct du
multipleDevicesAndHoldersAllowedStatus sur ONE_USER_ONE_DEVICE, qui
ne permet d'afficher le billet que sur un seul appareil. Nous vous recommandons d'utiliser l'état
ONE_USER_ALL_DEVICES avec épinglage à l'appareil.
Avant l'activation, l'utilisateur peut voir le titre de transport et le bouton d'activation sur tous les appareils
vous-même. Une fois activé et épinglé à un appareil, l'appareil épinglé affiche des informations d'utilisation.
et d'autres appareils affichent un bouton d'activation permettant à l'utilisateur de transférer le titre de transport vers un autre
appareil. Si vous ne souhaitez pas déplacer le billet, mais que vous souhaitez l'activer sur n'importe quel appareil,
il est possible de mettre à jour le ticket lors de l'activation sur ONE_USER_ONE_DEVICE au lieu de
par rapport à l'épinglage à un appareil.
Pour implémenter l'épinglage à un appareil, l'objet doit être mis à jour avec le champ deviceToken.
qui est reçue avec les paramètres d'activation ainsi que
en définissant hasLinkedDevice sur "true" dans le même appel d'API. Si vous le souhaitez, le billet peut
être dissocié d'un appareil en définissant hasLinkedDevice sur "false" dans un prochain appel d'API.

Paramètres d'activation
La requête envoyée au point de terminaison d'activation contiendra les paramètres suivants.
Exemple JSON:
{
classId: “123.classId”,
objectIds: [ “123.objectId” ],
expTimeMillis: 1669671940735,
eventType: “activate”,
nonce: “1c6fccce-6f66-11ed-a1eb-0242ac120002”,
deviceContext: “6fba937a-6f6e-11ed-a1eb-0242ac120002”
}
| Identifiant | Description |
|---|---|
classId |
ID de classe complet. Utilise le format suivant: <issuer_id.class_id> |
objectIds |
Tableau complet d'ID d'objets au format suivant: <issuer_id.object_id> |
expTimeMillis |
Délai d'expiration en millisecondes depuis EPOCH. Après le délai d'expiration, le message doit être considéré comme non valide. |
eventType |
Toujours "activate".
|
nonce |
Nonce de suivi des diffusions en double. |
deviceContext |
ID unique généré par Google et représentant l'appareil sur lequel l'utilisateur effectue l'action. Utilisez cet ID lorsque vous effectuez des mises à jour qui associent un objet à un appareil. Cet ID peut ne pas être constant pour les futures requêtes provenant d'un appareil donné. |