I partner che partecipano al programma della lista d'attesa devono completare la configurazione dell'account prima di iniziare. Tuttavia, alcuni passaggi della guida generale non sono necessari per l'utilizzo della funzionalità della lista d'attesa. Le linee guida di questa pagina spiegano quali passaggi si applicano ai partner interessati a utilizzare la funzionalità della lista d'attesa su Prenota con Google. Ti consigliamo di leggere questa panoramica prima di completare la procedura di integrazione.
Avvio del processo
La Figura 1 illustra il processo per lanciare i commercianti abilitati per la lista d'attesa su Prenota con Google.
Nel complesso, i principali flussi di dati tra te (il partner) e Google sono acquisiti nella Figura 2:
Linee guida per tutti i partner della lista d'attesa
Durante l'implementazione della funzionalità Lista d'attesa, tieni presente quanto segue:
- Il servizio per ogni commerciante della lista d'attesa deve aver completato
waitlist_rules
.- Devi utilizzare lo stesso servizio sia per la lista d'attesa che per la prenotazione. In altre parole, se il tuo ristorante consente anche le prenotazioni, aggiungi semplicemente i metadati relativi alla lista d'attesa al servizio per prenotare.
- L'invio di aggiornamenti SMS è obbligatorio per l'implementazione della lista d'attesa nei
seguenti casi:
- Per confermare che l'utente si è aggiunto alla lista d'attesa.
- Comunicare all'utente che la sua tabella è pronta.
- Per informare l'utente che la voce della sua lista d'attesa è stata annullata.
- Gli SMS devono contenere un link a una pagina in cui gli utenti possono visualizzare lo stato della lista d'attesa.
- I commercianti solo nella lista d'attesa non devono fornire i feed di disponibilità a Prenota con Google.
- Il server di prenotazione deve implementare tutti i passaggi specifici della lista d'attesa riportati in Implementare il server di prenotazione. I partner che supportano sia le prenotazioni sia le liste d'attesa possono aggiungere i nuovi metodi al proprio server di prenotazione esistente.
- Prenota con Google esegue una serie di scenari di test per i metodi della lista d'attesa nel server di prenotazione.
Diagramma di flusso dello stato
Questo grafico descrive gli stati che devono essere segnalati in
WaitlistEntry.waitlist_entry_state
quando rispondi alle chiamate
GetWaitlistEntry
. Il grafico indica anche quando registrare e compilare i campi
WaitlistEntry.waitlist_entry_state_times.*_time_seconds
e quando inviare un SMS all'utente per informarlo che è entrato in un nuovo stato.
Casi comuni dei margini
Di seguito sono riportati i casi limite più comuni nell'integrazione di una lista d'attesa e le soluzioni preferite.
-
Se alcune (ma non tutte) le dimensioni del gruppo non accettano nuove aggiunte,
perché non c'è attesa per queste dimensioni, viene restituito
WaitEstimates
per tutte le dimensioni nella rispostaBatchGetWaitEstimates
e consentire agli utenti di entrare nella lista d'attesa per queste dimensioni senza attesa. Restituisci unWaitLength
con 0parties_ahead_count
e/o con unestimated_seat_time_range
con 0start_seconds
e con 0end_seconds
perparty_size
senza attesa -
Se uno o più gruppi non accettano nuove aggiunte alla lista d'attesa, perché l'attesa è troppo lunga, è preferibile omettere
WaitEstimates
per queste dimensioni nella rispostaBatchGetWaitEstimates
.
Questi approcci sono preferiti perché offrono opzioni all'utente anche se la lista d'attesa del commerciante potrebbe non essere completamente aperta.
Linee guida per i partner che utilizzano solo la lista d'attesa
Tieni presente quanto segue se il server di prenotazione viene utilizzato solo per le liste d'attesa:
- I partner che utilizzano solo la lista d'attesa non forniscono feed di disponibilità a Prenota con Google.
- I partner che utilizzano solo la lista d'attesa non implementano i metodi di prenotazione nel proprio server di prenotazione. Puoi invece implementare il server di prenotazione con le istruzioni per l'implementazione della lista d'attesa.
- I partner che utilizzano solo la lista d'attesa non effettuano chiamate API a Google. Ciò significa che i partner che utilizzano solo la lista d'attesa non devono configurare un progetto cloud o fornire un indirizzo email dello sviluppatore. Non devi completare gli aggiornamenti dell'API in tempo reale. Tuttavia, i feed commerciante e di servizio devono comunque essere forniti a Prenota con Google.
Linee guida per i partner i cui commercianti devono accettare/rifiutare manualmente le aggiunte alla lista d'attesa
Se i commercianti richiedono la possibilità di accettare o rifiutare manualmente le nuove aggiunte alla lista d'attesa da Google, sono necessari ulteriori passaggi:
- Imposta
waitlist_confirmation_mode
suWAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
inwait_estimate
per i gruppi che richiedono la conferma manuale. Questo deve essere impostato nelBatchGetWaitEstimateResponse
e nelGetWaitlistEntryResponse
. - Le voci della lista d'attesa che sono state richieste dall'utente, ma che non sono ancora state accettate dal commerciante devono essere nello stato
PENDING_MERCHANT_CONFIRMATION
.
Scenari di test per la lista d'attesa
Google verifica i seguenti casi d'uso per garantire la funzionalità dei metodi della lista d'attesa nell'implementazione del server di prenotazione. Google testa e monitora anche la latenza. Tutti questi test devono superare il lancio.
Recupero Preventivo
- Le stime di attesa vengono restituite per ogni dimensione del gruppo richiesta in
BatchGetWaitEstimatesRequest
. - Per i gruppi di persone che il commerciante ha la possibilità di accettare o rifiutare
nuove aggiunte alla lista d'attesa, impostanella lista d'attesa_mode_mode su
WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
.
Creazione di voci della lista d'attesa
- È possibile creare una voce della lista d'attesa da una
richiesta
CreateWaitlistEntry
. - Se la creazione della voce della lista d'attesa non va a buon fine, nella risposta viene visualizzato un errore di logica di business.
- Se un tentativo
CreateWaitlistEntry
ha esito positivo, viene restituita la stessa risposta alla stessa ricezioneCreateWaitlistEntry
. - Se un tentativo
CreateWaitlistEntry
non va a buon fine, il server prova nuovamente quando viene ricevuto nuovamente lo stessoCreateWaitlistEntry
. - Le voci della lista d'attesa vengono visualizzate nell'interfaccia del commerciante.
- Le chiamate a
GetWaitlistEntry
restituiscono correttamente la voce della lista d'attesa creata.
Stati e timestamp delle voci della lista d'attesa
- Verifica che ogni stato della voce della lista d'attesa venga restituito correttamente nella voce della lista d'attesa di
GetWaitlistEntry
risposte. - Verifica che ogni timestamp dello stato sia impostato nel campo timestamp appropriato della voce della lista d'attesa in
GetWaitlistEntry
risposte.
Eliminazione della voce della lista d'attesa
- Le voci della lista d'attesa esistenti possono essere eliminate. La risposta a un'eliminazione riuscita deve essere il protocollo vuoto
{}
.
Disattiva
- Verifica che i commercianti disattivati siano trattati come descritto nella sezione Disattivazione da parte del commerciante.
Esempio di feed di servizio della lista d'attesa (JSON)
Feed di servizio per la lista d'attesaDisattivazione del commerciante
Google si aspetta che alcune risposte per i commercianti abbiano precedentemente attivato le liste d'attesa, ma che hanno deciso di disattivarle.
Disattivazione immediata
- Restituisci
CLOSED_OTHER
perBatchGetWaitEstimates
richieste. - Restituisci
WAITLIST_CLOSED
per le richieste diCreateWaitlistEntry
. - Restituisce correttamente le richieste
GetWaitlistEntry
per gli utenti che sono già nella lista d'attesa.
Disattivazione estesa
- Rimuovi
waitlist_rules
dal feed di servizi del commerciante se quest'ultimo non disattiva le prenotazioni. - Rimuovi il commerciante dal feed del commerciante se disattiva tutte le integrazioni di Google.