Package google.type

Indeks

Data

Reprezentuje całą lub częściową datę kalendarzową, np. urodziny. Godzina i strefa czasowa są określone w innym miejscu lub nie mają znaczenia. Data jest podawana w kalendarzu gregoriańskim. Może to być:

  • Pełna data z wartościami roku, miesiąca i dnia innymi niż 0.
  • miesiąc i dzień z zerowym rokiem (np. rocznica).
  • Rok bez miesiąca i dnia.
  • Rok i miesiąc z zerowym dniem (np. data ważności karty kredytowej).

Powiązane typy:

Pola
year

int32

Rok daty. Musi być liczbą z zakresu 1–9999 lub 0, jeśli chcesz podać datę bez roku.

month

int32

Miesiąc w roku. Wartość musi mieścić się w przedziale od 1 do 12, lub 0, jeśli chcesz określić rok bez miesiąca i dnia.

day

int32

Dzień miesiąca. Musi zawierać wartość od 1 do 31 i być prawidłową dla roku lub miesiąca albo 0, aby określić tylko rok lub rok i miesiąc, w których przypadku dzień nie ma znaczenia.

DzieńTygodnia

Reprezentuje dzień tygodnia.

Wartości w polu enum
DAY_OF_WEEK_UNSPECIFIED Dzień tygodnia jest nieokreślony.
MONDAY Poniedziałek
TUESDAY Tuesday (wtorek)
WEDNESDAY Wednesday (środa)
THURSDAY Thursday (czwartek)
FRIDAY Friday (piątek)
SATURDAY Saturday (sobota)
SUNDAY niedziela

Interwał

Reprezentuje przedział czasu zakodowany jako sygnatura czasowa rozpoczęcia (włącznie) i sygnatura czasowa zakończenia (wyłącznie).

Data rozpoczęcia musi być równa lub mniejsza od daty zakończenia. Gdy początek jest równy końcowi, przedział jest pusty (nie odpowiada żadnemu czasowi). Jeśli nie określono ani początku, ani końca, przedział pasuje do dowolnego czasu.

Pola
start_time

Timestamp

Opcjonalnie: Początek przedziału (włącznie).

Jeśli zostanie określona, sygnatura czasowa musi być taka sama jak sygnatura czasowa rozpoczęcia lub późniejsza.

end_time

Timestamp

Opcjonalnie: Koniec przedziału (wyłącznie).

Jeśli jest podany, sygnatura czasowa musi być krótsza niż czas zakończenia.

Numer telefonu

Obiekt reprezentujący numer telefonu, odpowiedni jako format transmisji danych przez interfejs API.

Ta reprezentacja:

  • nie należy używać do formatowania numeru telefonu w zależności od lokalizacji, np. „+1 (650) 253-0000 wew. 123”.

  • nie jest przeznaczony do wydajnego przechowywania danych;

  • może nie nadawać się do wybierania numeru – do tego celu należy użyć wyspecjalizowanych bibliotek (patrz „Materiały dodatkowe”)

Aby wykonać jakąś użyteczną czynność na tym numerze, np. sformatować go w różnych przypadkach użycia, najpierw przekształć go w obiekt i18n.phonenumbers.PhoneNumber.

Na przykład w Javie:

com.google.type.PhoneNumber wireProto =
    com.google.type.PhoneNumber.newBuilder().build();
com.google.i18n.phonenumbers.Phonenumber.PhoneNumber phoneNumber =
    PhoneNumberUtil.getInstance().parse(wireProto.getE164Number(), "ZZ");
if (!wireProto.getExtension().isEmpty()) {
  phoneNumber.setExtension(wireProto.getExtension());
}

Materiały referencyjne: – https://github.com/google/libphonenumber

Pola
extension

string

Rozszerzenie numeru telefonu. Rozszerzenie nie jest ustandaryzowane w zaleceniach ITU, z wyjątkiem tego, że jest zdefiniowane jako ciąg liczb o maksymalnej długości 40 cyfr. Oprócz cyfr można tu przechowywać inne znaki wybierania, takie jak „,” (wskazujący na oczekiwanie) lub „#”.

Pamiętaj, że obecnie żaden region nie używa rozszerzeń z krótkimi kodami, więc to pole jest zwykle ustawiane tylko w związku z numerem E.164. Jest on przechowywany oddzielnie od numeru E.164, aby umożliwić w przyszłości rozszerzenia krótkiego kodu.

Pole unii kind. Wymagane. Może to być zwykły numer lub kod krótki. W przyszłości do listy pól oneof możemy dodać nowe pola, dlatego klienci powinni ignorować numery telefonów, dla których nie ustawiono żadnego z tych pól. kind może być tylko jednym z tych elementów:
e164_number

string

Numer telefonu, który zaczyna się od znaku plusa („+”), a następnie zawiera numer telefonu w luźniejszym formacie ITU E.164, który składa się z kodu kraju (1–3 cyfry) i numeru abonenckiego bez dodatkowych spacji ani formatowania. Przykład: – poprawnie: „+15552220123” – niepoprawnie: „+1 (555) 222-01234 x123”.

Format ITU E.164 ogranicza liczbę cyfr do 12, ale w praktyce nie wszystkie kraje go przestrzegają, więc zrezygnowaliśmy z tej restrykcji. Numery krajowe są niedozwolone.

Źródła: – https://www.itu.int/rec/T-REC-E.164-201011-Ihttps://en.wikipedia.org/wiki/E.164. – https://en.wikipedia.org/wiki/List_of_country_calling_codes

short_code

ShortCode

krótki kod,

Źródła: – https://en.wikipedia.org/wiki/Short_code

ShortCode

Obiekt reprezentujący krótki kod, czyli numer telefonu, który jest zazwyczaj znacznie krótszy niż zwykłe numery telefonów i który może być używany do adresowania wiadomości w systemach MMS i SMS, a także do skróconego wybierania (np. „Wyślij SMS-a na numer 611, aby sprawdzić, ile minut zostało Ci w planie taryfowym”).

Krótkie kody są ograniczone do danego regionu i nie można ich wybierać na całym świecie. Oznacza to, że ten sam krótki kod może występować w różnych regionach z różnymi cenami i zasadami korzystania, nawet jeśli te regiony mają ten sam kod kraju (np. Stany Zjednoczone i Kanada).

Pola
region_code

string

Wymagane. Kod regionu BCP-47 lokalizacji, w której można wykonywać połączenia z tym krótkim kodem, np. „US” i „BB”.

Źródła: – http://www.unicode.org/reports/tr35/#unicode_region_subtag

number

string

Wymagane. Cyfry krótkiego kodu bez znaku plusa „+” ani kodu kraju. Na przykład „611”.

PostalAddress

Adres pocztowy. Na przykład adresy do dostawy pocztowej lub adresy płatności. Na podstawie adresu pocztowego usługa pocztowa może dostarczyć produkty do budynku, skrytki pocztowej lub podobnego miejsca. Nie jest ona przeznaczona do modelowania lokalizacji geograficznych (drogi, miast, gór).

W przypadku typowego użytkowania adres jest tworzony przez użytkownika lub importowany z dotychczasowych danych, w zależności od typu procesu.

Porady dotyczące wprowadzania i edytowania adresu: – Użyj widżetu adresu gotowego do użycia w różnych krajach, np. https://github.com/google/libaddressinput. – Użytkownicy nie powinni widzieć elementów interfejsu służących do wprowadzania ani edytowania pól poza krajami, w których są one używane.

Więcej informacji o korzystaniu z tego schematu znajdziesz na stronie https://support.google.com/business/answer/6397478.

Pola
revision

int32

Wersja schematu PostalAddress. Musisz ustawić wartość 0, która jest najnowszą wersją.

Wszystkie nowe wersje muszą być zgodne wstecz ze starszymi wersjami.

region_code

string

Wymagane. Kod regionu CLDR kraju/regionu adresu. Nie jest to nigdy wnioskowane, a użytkownik musi sam sprawdzić, czy wartość jest prawidłowa. Więcej informacji znajdziesz na stronach https://cldr.unicode.org/https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html. Przykład: „CH” dla Szwajcarii.

language_code

string

Opcjonalnie: Kod języka BCP-47 treści podanych pod tym adresem (jeśli jest znany). Jest to często język interfejsu formularza danych lub ma odpowiadać jednemu z języków używanych w kraju/regionie adresu lub ich transliterowanym odpowiednikom. Może to wpływać na formatowanie w niektórych krajach, ale nie ma to kluczowego znaczenia dla poprawności danych i nigdy nie wpłynie na weryfikację ani inne operacje niezwiązane z formatowaniem.

Jeśli ta wartość jest nieznana, należy ją pominąć (zamiast podawać potencjalnie nieprawidłową wartość domyślną).

Przykłady: „zh-Hant”, „ja”, „ja-Latn”, „en”.

postal_code

string

Opcjonalnie: Kod pocztowy w adresie. Nie wszystkie kraje używają kodów pocztowych lub wymagają ich podawania, ale tam, gdzie są one używane, mogą powodować dodatkową weryfikację innych części adresu (np. weryfikacja stanu/kodu pocztowego w Stanach Zjednoczonych).

sorting_code

string

Opcjonalnie: Dodatkowy kod sortowania w danym kraju. Nie jest on używany w większości regionów. W przypadku jego użycia wartość to albo ciąg znaków, np. „CEDEX”, opcjonalnie z numerem (np. „CEDEX 7”), albo tylko liczba, która reprezentuje „kod sektora” (Jamajka), „wskaźnik obszaru dostawy” (Malawi) lub „wskaźnik urzędu pocztowego” (np. Wybrze Kości Słoniowej).

administrative_area

string

Opcjonalnie: Najwyższy podział administracyjny, który jest używany w przypadku adresów pocztowych w kraju lub regionie. Może to być na przykład stan, prowincja, obwód lub prefektura. W Hiszpanii jest to prowincja, a nie wspólnota autonomiczna (np. „Barcelona”, a nie „Katalonia”). W wielu krajach w adresach pocztowych nie podaje się obszaru administracyjnego. Na przykład w Szwajcarii nie należy wypełniać tego pola.

locality

string

Opcjonalnie: Zwykle odnosi się do części adresu zawierającej nazwę miasta. Przykłady: miasto w Stanach Zjednoczonych, miasto w Włoszech, miejscowość w Wielkiej Brytanii. W regionach świata, w których lokalizacja nie jest dobrze zdefiniowana lub nie pasuje do tej struktury, pozostaw pole „locality” puste i użyj atrybutu „address_lines”.

sublocality

string

Opcjonalnie: Podjednostka adresu. Mogą to być na przykład dzielnice, okręgi czy gminy.

address_lines[]

string

Nieuporządkowane wiersze adresu opisujące niższe poziomy adresu.

Wartości w polu address_lines nie zawierają informacji o typie i czasami mogą zawierać wiele wartości w pojedynczym polu (np. „Austin, TX”), dlatego ważne jest, aby kolejność wierszy była jasna. Kolejność wierszy adresu powinna odpowiadać „kolejności na kopercie” w kraju lub regionie, w którym znajduje się adres. W miejscach, gdzie może to się różnić (np. w Japonii), używany jest parametr address_language, aby wyraźnie określić ustawienie (np. „ja” dla kolejności od dużego do małego i „ja-Latn” lub „en” dla kolejności od małego do dużego). Dzięki temu można wybrać najbardziej szczegółowy wiersz adresu na podstawie języka.

Minimalna dozwolona reprezentacja strukturalna adresu składa się z region_code, a wszystkie pozostałe informacje są umieszczane w elementach address_lines. Bez geokodowania można by sformatować taki adres bardzo przybliżony, ale nie można było przeprowadzić żadnej analizy semantycznej dotyczącej żadnych elementów adresu, dopóki nie zostały one co najmniej częściowo rozpoznane.

Utworzenie adresu zawierającego tylko region_code i address_lines, a następnie geokodowanie jest zalecanym sposobem postępowania w przypadku całkowicie nieustrukturyzowanych adresów (zamiast zgadywania, które części adresu powinny być miejscowościami lub obszarami administracyjnymi).

recipients[]

string

Opcjonalnie: Odbiorca pod tym adresem. W pewnych okolicznościach to pole może zawierać informacje na kilku wierszach. Może ona na przykład zawierać informacje o adresacie korespondencji.

organization

string

Opcjonalnie: Nazwa organizacji pod tym adresem.

TimeOfDay

Oznacza porę dnia. Strefa czasowa i data są nieistotne lub są określone gdzie indziej. Interfejs API może zezwalać na sekundy przesunięte. Powiązane typy to google.type.Date i google.protobuf.Timestamp.

Pola
hours

int32

Godziny w formacie 24-godzinnym. Musi być równa lub większa niż 0, a zazwyczaj nie może być większa niż 23. Interfejs API może zezwolić na wartość „24:00:00” w przypadku scenariuszy takich jak godziny zamknięcia firmy.

minutes

int32

minuty w godzinie. Musi być równa lub większa niż 0 i nie może być większa niż 59.

seconds

int32

sekundy. Musi być większa niż 0 i zazwyczaj nie większa niż 59. Interfejs API może zezwalać na wartość 60, jeśli zezwala na sekundy przestępne.

nanos

int32

Ułamki sekundy w nanosekundach. Musi być równa lub większa niż 0 i nie mniejsza niż 999 999 999.

TimeZone

Reprezentuje strefę czasową z bazy danych stref czasowych IANA.

Pola
id

string

Strefa czasowa z bazy danych stref czasowych IANA. Na przykład „Ameryka/Nowy_York”.

version

string

Opcjonalnie: Numer wersji bazy danych stref czasowych IANA. Na przykład „2019a”.