Partnerzy uczestniczący w programie listy oczekujących muszą ukończyć konfigurację konta, zanim zaczną działać. Niektóre czynności opisane w przewodniku ogólnym nie są jednak konieczne, aby można było korzystać z funkcji listy oczekujących. Wskazówki na tej stronie wyjaśniają, co muszą zrobić partnerzy, którzy chcą korzystać z listy oczekujących w Zarezerwuj z Google. Przed wykonaniem kroków integracji zalecamy zapoznanie się z omówieniem.
Proces uruchamiania
Ilustracja 1 przedstawia proces uruchamiania w Zarezerwuj z Google sprzedawców z listą oczekujących.
Ogólnie najważniejsze przepływy danych między Tobą (partnerem) a Google są przedstawione na ilustracji 2:
Wytyczne dla wszystkich partnerów korzystających z listy oczekujących
Implementując funkcję listy oczekujących, pamiętaj o tych kwestiach:
- Usługa dla każdego sprzedawcy z listy oczekujących musi zawierać
waitlist_rules
.- Musisz używać tej samej usługi zarówno na liście oczekujących, jak i w rezerwacji. Oznacza to, że jeśli Twoja restauracja także zezwala na rezerwacje, dodaj do usługi metadane związane z listą oczekujących rezerwacji.
- W przypadku implementacji listy oczekujących wysłanie wiadomości SMS jest wymagane w tych przypadkach:
- Aby sprawdzić, czy użytkownik dołączył do listy oczekujących,
- Powiadomienie użytkownika o tym, że tabela jest gotowa.
- Powiadomienie użytkownika o anulowaniu jego pozycji na liście oczekujących.
- SMS-y muszą zawierać link do strony, na której użytkownicy mogą wyświetlić stan listy oczekujących.
- Sprzedawcy z dostępem tylko do listy oczekujących nie muszą przesyłać plików danych o dostępności do usługi Zarezerwuj z Google.
- Twój serwer rezerwacji musi zaimplementować wszystkie czynności związane z listą oczekujących na liście w sekcji Implementowanie serwera rezerwacji. Partnerzy, którzy obsługują zarówno rezerwacje, jak i listy oczekujących, mogą dodawać nowe metody do swojego dotychczasowego serwera rezerwacji.
- Funkcja Zarezerwuj z Google uruchamia zestaw przypadków testowych dla metod listy oczekujących na serwerze rezerwacji.
Schemat blokowy stanu
Ten wykres opisuje stany, które muszą być raportowane w WaitlistEntry.waitlist_entry_state
podczas odpowiadania na wywołania GetWaitlistEntry
. Wykres pokazuje też, kiedy należy wypełnić i wypełnić pola WaitlistEntry.waitlist_entry_state_times.*_time_seconds
oraz kiedy należy wysłać użytkownikowi SMS-a z informacją o wprowadzeniu nowego stanu.
Typowe przypadki skrajne
Poniżej znajdziesz typowe przypadki integracji w przypadku listy oczekujących i preferowane rozwiązania.
-
Jeśli niektóre (nie wszystkie) rozmiary grup nie przyjmują nowych próśb o dołączenie, ponieważ nie ma na nie czekania, oznacza to, że w odpowiedzi
BatchGetWaitEstimates
zwracana jest wartośćWaitEstimates
dla wszystkich rozmiarów grup, a użytkownicy mogą dołączać do listy oczekujących na te rozmiary grup bez żadnego oczekiwania. ZwróćWaitLength
o wartości 0parties_ahead_count
lubestimated_seat_time_range
z wartością 0start_seconds
oraz 0end_seconds
przezparty_size
bez oczekiwania -
Jeśli co najmniej 1 rozmiar grupy nie akceptuje nowych pozycji na liście oczekujących, ponieważ czas oczekiwania jest zbyt długi, preferuj
WaitEstimates
w przypadku tych rozmiarów grup w odpowiedziBatchGetWaitEstimates
.
Te rozwiązania są preferowane, ponieważ dają użytkownikom opcje, mimo że lista oczekujących sprzedawcy może nie być w pełni otwarta.
Wytyczne dla partnerów z listy oczekujących
Jeśli serwer rezerwacji jest używany tylko na listach oczekujących, pamiętaj o tych kwestiach:
- Partnerzy z dostępem tylko do listy oczekujących nie udostępniają plików danych dostępności w usłudze Zarezerwuj z Google.
- Partnerzy korzystający tylko z listy oczekujących nie implementują metod rezerwacji na swoim serwerze rezerwacji. Zamiast tego zaimplementuj serwer rezerwacji zgodnie z instrukcjami implementacji listy oczekujących.
- Partnerzy korzystający tylko z listy oczekujących nie wykonują wywołań interfejsu API do Google. Oznacza to, że partnerzy korzystający tylko z listy oczekujących nie muszą konfigurować projektu w chmurze ani podawać adresu e-mail dewelopera. Nie musisz przechodzić aktualizacji interfejsu API w czasie rzeczywistym. Jednak w przypadku plików danych sprzedawcy i usług należy nadal udostępniać usługę Zarezerwuj z Google.
Wskazówki dla partnerów, których sprzedawcy muszą ręcznie zaakceptować/odrzucić prośby o dodanie do listy oczekujących
Jeśli Twoi sprzedawcy muszą mieć możliwość ręcznego akceptowania lub odrzucania nowych pozycji na liście oczekujących od Google, musisz wykonać te czynności:
- Ustaw
waitlist_confirmation_mode
naWAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
wwait_estimate
w przypadku grup, które wymagają ręcznego potwierdzenia. Należy go ustawić wBatchGetWaitEstimateResponse
iGetWaitlistEntryResponse
. - Pozycje na liście oczekujących, które poprosił użytkownik, ale jeszcze nie zostały zaakceptowane przez sprzedawcę, powinny mieć stan
PENDING_MERCHANT_CONFIRMATION
.
Przypadki testowe na liście oczekujących
Google testuje te przypadki użycia, aby zapewnić działanie metod listy oczekujących na wdrożenie serwera rezerwacji. Google testuje też i monitoruje czas oczekiwania. Wszystkie te testy muszą zakończyć się przed uruchomieniem.
Pobieranie pobierania prognozy
- Szacowany czas oczekiwania jest zwracany dla każdej wielkości określonej w żądaniu (
BatchGetWaitEstimatesRequest
). - W przypadku rozmiarów grupy, w których sprzedawca może akceptować lub odrzucać nowe pozycje na liście oczekujących, ustaw wartość Waitlist_confirmation_mode na
WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
.
Tworzenie pozycji na liście oczekujących
- Wpis listy oczekujących można utworzyć na podstawie żądania
CreateWaitlistEntry
. - Jeśli nie uda się utworzyć wpisu na liście oczekujących, w odpowiedzi pojawi się błąd logiczny.
- Jeśli próba wykonania czynności
CreateWaitlistEntry
zakończy się pomyślnie, po otrzymaniu ponownie tej samej wartościCreateWaitlistEntry
zwracana jest ta sama odpowiedź. - Jeśli próba
CreateWaitlistEntry
zakończy się niepowodzeniem, serwer spróbuje ponownie wykonać odbiór tej samej wartościCreateWaitlistEntry
. - Pozycje na liście oczekujących pojawią się w interfejsie sprzedawcy.
- Wywołania
GetWaitlistEntry
zwracają utworzony wpis na liście oczekujących.
Stany i sygnatura czasowa wpisów na liście oczekujących
- Sprawdź, czy każdy stan wpisu na liście oczekujących jest zwracany prawidłowo w pozycji
GetWaitlistEntry
odpowiedzi. - Sprawdź, czy każda sygnatura czasowa stanu jest ustawiona w odpowiednim polu sygnatury czasowej wpisu na liście oczekujących w odpowiedziach
GetWaitlistEntry
.
Usunięcie pozycji z listy oczekujących
- Pozycje na liście oczekujących można usunąć. Odpowiedź na żądanie usunięcia musi być pustym proto
{}
.
Rezygnacja
- Sprawdź, czy sprzedawcy, którzy zrezygnowali z reklam spersonalizowanych, są obsługiwani w sposób opisany w artykule Rezygnacja sprzedawcy.
Przykładowy plik danych usługi listy oczekujących (JSON)
Plik danych usługi listy oczekującychRezygnacja sprzedawcy
Google oczekuje pewnych odpowiedzi od sprzedawców, którzy wcześniej mieli włączone listy oczekujących, ale zdecydowali się z nich zrezygnować.
Natychmiast zrezygnuj
- Zwróć wartość
CLOSED_OTHER
dla żądańBatchGetWaitEstimates
. - Zwróć
WAITLIST_CLOSED
dla żądańCreateWaitlistEntry
. - Zwróć żądania
GetWaitlistEntry
w przypadku użytkowników, którzy znajdują się już na liście oczekujących.
Dłuższa rezygnacja
- Usuń
waitlist_rules
z pliku danych dla sprzedawców, jeśli sprzedawca nie rezygnuje z rezerwacji. - Usuń sprzedawcę z pliku danych sprzedawcy, jeśli zrezygnował on ze wszystkich integracji z usługami Google.