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 jest określone, kod kreskowy jest renderowany przy użyciu tego kodowania. 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ępowana sygnaturą czasową (w sekundach od początku epoki), w której został wygenerowany 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 działaniem powodującym kliknięcie. 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 branży transportu publicznego. Opcjonalny zestaw wartości początkowej rotacji kodu kreskowego. 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 OTP.

parameters[]

object (TotpParameters)

Parametry TOTP dla każdej 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 długości klucza i 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 znaków w formacie Base16.

valueLength

integer

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

RotatingBarcodeValues

Ładunek zawierający wiele wartości kodu kreskowego oraz 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. Godzinę można określić z dokładnością do nanosekundy. Przesunięcia można określić z dokładnością do sekundy (pomimo że przesunięcie takie 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.