RotatingBarcode

Zapis JSON
{
  "type": enum (BarcodeType),
  "renderEncoding": enum (BarcodeRenderEncoding),
  "valuePattern": string,
  "totpDetails": {
    object (TotpDetails)
  },
  "alternateText": string,
  "showCodeText": {
    object (LocalizedString)
  },
  "initialRotatingBarcodeValues": {
    object (RotatingBarcodeValues)
  }
}
Pola
type

enum (BarcodeType)

Typ tego kodu kreskowego.

renderEncoding

enum (BarcodeRenderEncoding)

Kodowanie renderowania kodu kreskowego. Jeśli podasz kod kreskowy, będzie on renderowany w danym kodowaniu. W przeciwnym razie Google wybiera najbardziej znane kodowanie.

valuePattern

string

Wartość kodu kreskowego zakodowana w postaci ciągu znaków. Ten ciąg obsługuje te zamiany: * {totp_value_n}: zastąpiony wartością TOTP (patrz TotpDetails.parameters). * {totp_timestamp_millis}: zastąpiona sygnaturą czasową (w milisekundach od początku epoki), w której wygenerowano kod kreskowy. * {totp_timestamp_seconds}: zastąpiony sygnaturą czasową (w sekundach od początku epoki), w której wygenerowano kod kreskowy.

totpDetails

object (TotpDetails)

Szczegóły używane do oceny zastępowania wartości {totp_value_n}.

alternateText

string

Opcjonalny tekst, który zastąpi domyślny tekst wyświetlany pod kodem kreskowym. To pole jest przeznaczone na czytelny dla człowieka odpowiednik wartości kodu kreskowego, który jest używany, gdy nie można go zeskanować.

showCodeText

object (LocalizedString)

Opcjonalny tekst, który będzie wyświetlany, gdy kod kreskowy jest ukryty za przyciskiem wywołującym działanie. Dzieje się tak w przypadkach, gdy karta ma włączoną funkcję smart tap. Jeśli nie zostanie określony, Google wybierze domyślny.

initialRotatingBarcodeValues

object (RotatingBarcodeValues)

Tylko dane wejściowe. UWAGA: ta funkcja jest dostępna tylko w przypadku transportu publicznego. Opcjonalny zestaw początkowych wartości kodów kreskowych, które się zmieniają. Umożliwia to dołączenie do obiektu niewielkiej podgrupy kodów kreskowych. Wartości kolejnych kodów kreskowych, które zmieniają się, należy przesyłać za pomocą punktu końcowego UploadRotatingBarcodeValues.

TotpDetails

Konfiguracja zastępowania kodów OTP na podstawie czasu. https://tools.ietf.org/html/rfc6238

Zapis JSON
{
  "periodMillis": string,
  "algorithm": enum (TotpAlgorithm),
  "parameters": [
    {
      object (TotpParameters)
    }
  ]
}
Pola
periodMillis

string (int64 format)

Przedział czasu używany do generowania wartości TOTP (w milisekundach).

algorithm

enum (TotpAlgorithm)

Algorytm TOTP użyty do wygenerowania hasła jednorazowego.

parameters[]

object (TotpParameters)

Parametry TOTP dla każdego z podstawień {totp_value_*}. Parametry TotpParameters o indeksie n są używane do zastąpienia wartości {totp_value_n}.

TotpAlgorithm

Wartości w polu enum
TOTP_ALGORITHM_UNSPECIFIED
TOTP_SHA1 algorytm TOTP z RFC 6238 z funkcją skrótu SHA1,

TotpParameters

Konfiguracja klucza i długości wartości. Patrz https://www.rfc-editor.org/rfc/rfc4226#section-5.3

Zapis JSON
{
  "key": string,
  "valueLength": integer
}
Pola
key

string

Klucz tajny używany do generowania wartości TOTP zakodowany jako ciąg Base16.

valueLength

integer

Długość wartości TOTP w postaci cyfr dziesiętnych.

RotatingBarcodeValues

ładunek zawierający wiele wartości kodów kreskowych i datę/godzinę rozpoczęcia.

Zapis JSON
{
  "startDateTime": string,
  "values": [
    string
  ],
  "periodMillis": string
}
Pola
startDateTime

string

Wymagane. Data i godzina, od których jest ważny pierwszy kod kreskowy. Kody kreskowe będą się zmieniać za pomocą wartości periodMillis zdefiniowanej w polu RotatingBarcodeValueInfo obiektu.

Są to data i godzina w rozszerzonym formacie ISO 8601 z przesunięciem. Czas można określić z dokładnością do nanosekundy. Przesunięcia można określić z dokładnością do sekund (mimo że przesunięcie w sekundach nie jest objęte normą ISO 8601).

Na przykład:

W UTC 1985-04-12T23:20:50.52Z to 20 minut i 50,52 sekundy po godzinie 23 w dniu 12 kwietnia 1985 roku.

1985-04-12T19:20:50.52-04:00 to 20 minut i 50,52 sekundy po godzinie 19 w dniu 12 kwietnia 1985 roku, 4 godziny przed UTC (ta sama chwila co w przykładzie powyżej). Gdyby wydarzenie odbyło się w Nowym Jorku, byłby to odpowiednik czasu letniego wschodnioamerykańskiego (EDT). Pamiętaj, że przesunięcie jest różne w regionach, w których obowiązuje czas letni, w zależności od pory roku.

values[]

string

Wymagane. Wartości do zakodowania w kodzie kreskowym. Musisz wpisać co najmniej 1 wartość.

periodMillis

string (int64 format)

Wymagane. Czas ważności każdego kodu kreskowego.