Übersicht

Mit der Google Wallet Passes API können Partner Drehen Barcodes auf das Google Wallet-Konto übertragen. Diese Barcodes sind nur für kurze Zeit gültig, zusätzliche Sicherheitsmaßnahmen, um das Risiko der Screenshoterstellung von Barcodes zu verringern. Die werden die Barcodes auf dem Gerät RFC 6238 mit dem Partner, der die geheimen Schlüssel an. Wenn ein Partner die Barcodes jedoch lieber selbst generieren möchte, bietet Google eine API, mit der Barcodes im Batch auf Google hochgeladen werden können. Diese Barcodes werden dann an die User Experience die wie rotierende Barcodes funktionieren, kurz in der Anzeige erscheinen. Diese Lösung bezeichnen wir als „von Partnern generiert“. Rotierende Barcodes.

Von Partnern generierte Rotating Barcode API

Von Partnern generierte rotierende Barcodes werden mit demselben -Objekt enthält. Nur der Typ ist erforderlich, wir empfehlen jedoch, einen kleinen Auslöser zu erstellen. eine Reihe von Barcodes (im Wert von ca. 10 Minuten) und senden diese initialRotatingBarcodeValues Der Partner ist dafür verantwortlich, immer ein gültiger Barcode für den Nutzer bereit und initialRotatingBarcodeValues erlaubt wird der nachfolgende Aufruf des Batch-Uploads asynchron.

  rotatingBarcode {
    initialRotatingBarcodeValues: object (RotatingBarcodeValues),
    type: enum (BarcodeType),
  }
Feld Beschreibung
initialRotatingBarcodeValues

object (RotatingBarcodeValues)

Die Werte, die im Barcode codiert werden sollen. Es ist mindestens ein Wert erforderlich. Diese Anfangsbuchstaben Barcodes sollen die Lücke zwischen dem ersten Erwerb des Tickets durch den Nutzer und dem wenn der nachfolgende Aufruf des Batch-Uploads erfolgt.

type

enum (BarcodeType)

Erforderlich. Der Typ dieses Barcodes.

Akzeptable Werte sind:

  • QR_CODE
  • PDF_417

RotatingBarcodeValues
Feld Beschreibung
startDateTime

string

Datum und Uhrzeit ab dem der erste Barcode gültig ist. Barcodes werden durch mit periodMillis.

Datum/Uhrzeit im erweiterten ISO 8601-Format mit Offset.

values[]

string

Die Werte, die im Barcode codiert werden sollen. Es ist mindestens ein Wert erforderlich.

Es gibt keine maximale Anzahl von Werten. Die Größe des Anfragetexts darf 5 MB nicht überschreiten.

periodMillis

number

Die Gültigkeitsdauer der einzelnen Barcodes.

Barcodewerte im Batch aktualisieren

Nachdem das RotatingBarcode-Objekt erstellt wurde, empfehlen wir, jeden Tag, bis der Pass des Nutzers abläuft. Dies kann mit der folgenden REST API-Endpunkts.

Methode: transitobject.uploadrotatingbarcodevalues

Lädt rotierende Barcodewerte in das Verkehrsobjekt hoch, auf das von der angegebenen Objekt-ID verwiesen wird.

HTTP-Anfrage

POST https://walletobjects.googleapis.com/upload/walletobjects/v1/transitObject/{resourc eId}/uploadRotatingBarcodeValues

Pfadparameter

Parameter Beschreibung
resourceId

string

Die eindeutige Kennung für ein Objekt.

Anfragetext

Der Anfragetext (der nicht größer als 5 MB sein darf) enthält eine Instanz von RotatingBarcodeValues (RotatingBarcodeValues)

Methode: transitobject.downloadrotatingbarcodevalues

Lädt rotierende Barcodewerte für das Verkehrsobjekt herunter, auf das vom angegebenen Objekt verwiesen wird ID. Dies ist nützlich, wenn Partner den letzten Batch überprüfen möchten.

HTTP-Anfrage

GET https://walletobjects.googleapis.com/walletobjects/v1/transitObject/{resourceId}/do wnloadRotatingBarcodeValues?alt=media

Pfadparameter

Parameter Beschreibung
resourceId

string

Die eindeutige Kennung für ein Objekt.

Fallback-Mechanismen

Wenn ein ansonsten gültiger RotatingBarcode keine gültigen Barcodes zur Anzeige hat ( noch nicht hochgeladen wurden oder alle aktuellen Barcodes verwendet wurden), wird ein Fehler wird dem Nutzer angezeigt.