Interfejs API Karty w Portfelu Google umożliwia partnerom określenie punktu końcowego, za pomocą którego aktywujesz bilet na przejazd. Jeśli konieczna jest aktywacja, użytkownik zobaczy przycisk „Aktywuj”. Po jego kliknięciu wywołany będzie określony punkt końcowy z parametrami opisanymi poniżej. Przed jego zwróceniem punkt końcowy powinien sprawdzić, czy karta zawiera prawidłowe informacje o wykorzystaniu karty (kod kreskowy lub ogląd). Dopiero wtedy karta w Portfelu użytkownika zostanie zaktualizowana, tak aby zawierała informacje o wykorzystaniu promocji. Pamiętaj, że przed aktywacją nie będą się wyświetlać istniejące informacje o wykorzystaniu promocji.
Interfejs API aktywacji
Punkt końcowy aktywacji jest określony w interfejsie API za pomocą activationOptions
w klasie transportu.
Partner jest odpowiedzialny za utrzymanie działającego punktu końcowego aktywacji z rozsądnym czasem oczekiwania.
activationOptions: { activationUrl: string }
Pole | Opis |
---|---|
activationUrl |
URL punktu końcowego partnera, który byłby wywoływany w przypadku żądań aktywacji. Adres URL powinien być hostowany na HTTPS, a plik robots.txt powinien umożliwiać dostęp do ścieżki adresu URL przez UserAgent:Google-Valuables. |
Stan aktywacji jest przechowywany w obiekcie za pomocą pola activationStatus
.
Prawidłowe stany to NOT_ACTIVATED
i ACTIVATED
. Punkt końcowy aktywacji powinien zaktualizować obiekt o stan ACTIVATED
, a także zapewnić obiektowi prawidłowe informacje o wykorzystaniu promocji, takie jak kod kreskowy lub parametry inspekcji wizualnej. Pole deviceContext
może służyć do przypinania urządzenia.
activationStatus: enum (ActivationStatus), deviceContext: { deviceToken: string }, hasLinkedDevice: boolean
Pole | Opis |
---|---|
activationStatus |
Stan aktywacji tego obiektu transportu publicznego. Ten stan zmieni reprezentację zgłoszenia i pozwoli użytkownikom na podjęcie działania. Jeśli na przykład w szczegółach zgłoszenia jest renderowany przycisk Aktywuj, jeśli ustawiona jest wartość Akceptowane wartości:
|
deviceContext |
Kontekst urządzenia, z którym ma być powiązany obiekt. Jeśli zasada jest skonfigurowana, informacje o wykorzystaniu promocji będą zwracane tylko na dane urządzenie. |
hasLinkedDevice |
Wskazuje, czy ten obiekt jest obecnie połączony z jednym urządzeniem. |
Pole | Opis |
---|---|
deviceToken |
Jeśli jest ustawiony, informacje o wykorzystaniu promocji będą zwracane do danego urządzenia tylko po aktywacji obiektu. Nie można go używać jako stabilnego identyfikatora do śledzenia urządzenia użytkownika. Może się zmieniać w różnych kartach na tym samym urządzeniu, a nawet w przypadku różnych aktywacji dla tego samego urządzenia. W przypadku ustawienia tej opcji elementy wywołujące muszą też ustawić Pamiętaj, że |
Przypinanie urządzenia
Przypinanie do urządzenia to funkcja, która umożliwia użytkownikowi aktywowanie biletu na jednym urządzeniu i wyświetlanie informacji o wykorzystaniu biletu tylko na nim. Różni się to od multipleDevicesAndHoldersAllowedStatus
właściwości ONE_USER_ONE_DEVICE
, które umożliwiają wyświetlanie biletu tylko na 1 urządzeniu. Zalecamy używanie stanu ONE_USER_ALL_DEVICES
z przypinaniem urządzenia.
Przed aktywacją użytkownik może zobaczyć bilet i przycisk aktywacji na dowolnym ze swoich urządzeń. Po aktywowaniu i przypięciu na urządzeniu przypięte urządzenie będzie wyświetlać informacje o wykorzystaniu promocji, a na innych urządzeniach pojawi się przycisk aktywacji, który umożliwi użytkownikowi przeniesienie biletu na inne urządzenie. Jeśli przenoszenie zgłoszenia nie jest pożądane, ale aktywacja na dowolnym urządzeniu jest taka sama, można zaktualizować zgłoszenie podczas aktywacji do ONE_USER_ONE_DEVICE
, zamiast przypinać urządzenie.
Aby zaimplementować przypinanie urządzeń, należy zaktualizować obiekt za pomocą pola deviceToken
, które otrzymuje parametry aktywacji, oraz ustawić hasLinkedDevice
na wartość prawda w tym samym wywołaniu interfejsu API. W razie potrzeby można odłączyć zgłoszenie od urządzenia, ustawiając dla atrybutu hasLinkedDevice
wartość false (fałsz) w przyszłym wywołaniu interfejsu API.
Parametry aktywacji
Żądanie wysłane do punktu końcowego aktywacji będzie zawierać podane niżej parametry.
Przykład JSON:
{ classId: “123.classId”, objectIds: [ “123.objectId” ], expTimeMillis: 1669671940735, eventType: “activate”, nonce: “1c6fccce-6f66-11ed-a1eb-0242ac120002”, deviceContext: “6fba937a-6f6e-11ed-a1eb-0242ac120002” }
Identyfikator | Opis |
---|---|
classId |
Pełny i jednoznaczny identyfikator klasy. Używa tego formatu: <issuer_id.class_id> |
objectIds |
Pełna i jednoznaczna tablica identyfikatorów obiektów w tym formacie: <issuer_id.object_id> |
expTimeMillis |
Czas ważności w milisekundach od początku epoki. Po upływie okresu ważności wiadomość musi zostać uznana za nieprawidłową. |
eventType |
Zawsze "activate" .
|
nonce |
Identyfikator jednorazowy pozwalający śledzić zduplikowane dostawy. |
deviceContext |
Wygenerowany przez Google unikalny identyfikator urządzenia, na którym użytkownik wykonuje działanie. Tego identyfikatora należy używać podczas aktualizacji, które łączą obiekt z urządzeniem. Ten identyfikator może nie być stały w przypadku przyszłych żądań z danego urządzenia. |