I partner che partecipano al programma per le liste d'attesa per le prenotazioni 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 in 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 eseguire la procedura di integrazione.
Avvio del processo
La Figura 1 illustra la procedura per avviare i commercianti abilitati per la lista d'attesa nel Centro azioni.
![Figura 1: passaggi di integrazione generali](https://developers.google.cn/static/actions-center/images/waitlists/reserve_with_google_waitlist_integration.png?authuser=8&hl=it)
Nel complesso, i principali flussi di dati tra te (il partner) e Google sono illustrati nella Figura 2:
![Figura 2: diagramma di flusso dei dati di integrazione](https://developers.google.cn/static/actions-center/images/waitlists/waitlist_integration_data_flow_diagram.png?authuser=8&hl=it)
Linee guida per tutti i partner delle liste d'attesa per le prenotazioni
Durante l'implementazione della funzionalità Liste d'attesa per le prenotazioni, tieni presente quanto segue:
- Il servizio per ogni commerciante di liste d'attesa per le prenotazioni deve avere
waitlist_rules
compilato.- Devi utilizzare lo stesso servizio sia per la lista d'attesa che per la prenotazione. In altre parole, se il ristorante consente anche le prenotazioni, è sufficiente aggiungere al servizio i metadati relativi alla lista d'attesa per la prenotazione.
- Per l'implementazione della lista d'attesa è necessario inviare aggiornamenti via SMS
nei seguenti casi:
- Per confermare che l'utente è entrato nella lista d'attesa.
- Per notificare all'utente che la tabella è pronta.
- Per informare l'utente che la sua voce nella 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 che si applicano solo alla lista d'attesa non sono tenuti a fornire feed sulla disponibilità al Centro azioni.
- Il tuo server di prenotazione deve implementare tutti i passaggi specifici per la lista d'attesa elencati 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.
- Il Centro azioni esegue una serie di casi di test per i metodi della lista d'attesa nel server di prenotazione.
Diagramma di flusso relativo allo stato
Questo grafico descrive gli stati che devono essere segnalati in
WaitlistEntry.waitlist_entry_state
quando si risponde 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.
![Figura 3: diagramma di flusso relativo allo stato della lista d'attesa](https://developers.google.cn/static/actions-center/images/waitlists/waitlist_status_flowchart.png?authuser=8&hl=it)
Casi limite comuni
Di seguito sono riportati i casi limite comuni nell'integrazione di liste d'attesa per le prenotazioni e le relative soluzioni preferite.
-
Se alcune dimensioni di gruppo (ma non tutte) non accettano nuove aggiunte alla lista d'attesa perché non è prevista alcuna attesa per il numero di persone indicato, è preferibile restituire
WaitEstimates
per tutti i gruppi nella rispostaBatchGetWaitEstimates
e consentire agli utenti di iscriversi alla lista d'attesa per questi gruppi senza alcuna attesa. Restituire unWaitLength
con 0parties_ahead_count
e/o conestimated_seat_time_range
con 0start_seconds
e con 0end_seconds
perparty_size
senza attesa -
Se uno o più gruppi di persone non accettano nuove aggiunte alla lista d'attesa
perché l'attesa è troppo lunga, è preferibile omettere
WaitEstimates
per il numero di persone in questione nella rispostaBatchGetWaitEstimates
.
Questi approcci sono preferiti poiché offrono all'utente opzioni anche se la lista d'attesa del commerciante potrebbe non essere completamente aperta.
Linee guida per i partner che utilizzano solo le liste d'attesa per le prenotazioni
Tieni presente quanto segue se il server di prenotazione viene utilizzato solo per le liste d'attesa:
- I partner che utilizzano solo le liste d'attesa per le prenotazioni non forniscono feed sulla disponibilità a Prenota con Google.
- I partner che utilizzano solo le liste d'attesa per le prenotazioni non implementano i metodi di prenotazione nel server di prenotazione. Devi invece implementare il server di prenotazione con le istruzioni per l'implementazione della lista d'attesa.
- I partner che utilizzano le liste d'attesa per le prenotazioni non effettuano chiamate API a Google. Ciò significa che i partner che utilizzano solo le liste d'attesa per le prenotazioni non devono configurare un progetto cloud o fornire un indirizzo email dello sviluppatore. Non è necessario completare gli aggiornamenti dell'API in tempo reale. Tuttavia, i feed commerciante e servizio devono comunque essere forniti al Centro azioni.
Linee guida per i partner i cui commercianti devono accettare o rifiutare manualmente le aggiunte alla lista d'attesa
Se i tuoi commercianti richiedono la possibilità di accettare o rifiutare manualmente nuove aggiunte alla lista d'attesa da parte di Google, sono necessari passaggi aggiuntivi:
- Imposta
waitlist_confirmation_mode
suWAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
inwait_estimate
per il numero di persone che richiedono la conferma manuale. Deve essere impostato nella sezioneBatchGetWaitEstimateResponse
eGetWaitlistEntryResponse
. - Le voci della lista d'attesa che sono state richieste dall'utente, ma non ancora accettate dal commerciante, devono essere nello stato
PENDING_MERCHANT_CONFIRMATION
.
Scenari di test per liste d'attesa per le prenotazioni
Google testa 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 essere superati prima del lancio.
Attendi il recupero delle stime
- Vengono restituite stime di attesa per ogni dimensione di parte richiesta in
BatchGetWaitEstimatesRequest
. - Per i gruppi di persone che il commerciante ha la possibilità di accettare o rifiutare
nuove aggiunte alla lista d'attesa, imposta Waitlist_confirmation_mode su
WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
.
Creazione della voce 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 della logica di business.
- Se un tentativo di
CreateWaitlistEntry
ha esito positivo, viene restituita la stessa risposta quando viene ricevuto di nuovo lo stessoCreateWaitlistEntry
. - Se un tentativo di
CreateWaitlistEntry
non va a buon fine, il server tenterà di nuovo quando riceve di nuovo 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 delle
risposte
GetWaitlistEntry
. - Verifica che il timestamp di ogni stato sia impostato nel campo del timestamp appropriato della voce della lista d'attesa nelle risposte
GetWaitlistEntry
.
Eliminazione della voce della lista d'attesa
- Le voci della lista d'attesa esistenti possono essere eliminate. La risposta a un'eliminazione corretta deve essere il protocollo vuoto
{}
.
Disattiva
- Verifica che i commercianti che hanno disattivato l'opzione siano trattati come descritto in Disattivazione dei commercianti.
Esempio di feed del servizio della lista d'attesa (JSON)
Feed di servizio per lista d'attesaDisattivazione da parte del commerciante
Google si aspetta alcune risposte dai commercianti che in precedenza avevano le liste d'attesa abilitate, ma che hanno deciso di disattivare la funzionalità.
Disattivazione immediata
- Restituisci
CLOSED_OTHER
per le richiesteBatchGetWaitEstimates
. - Restituisci
WAITLIST_CLOSED
per le richiesteCreateWaitlistEntry
. - Restituisci correttamente le richieste
GetWaitlistEntry
per gli utenti che sono già nella lista d'attesa.
Disattivazione estesa
- Rimuovi
waitlist_rules
dal feed di servizio del commerciante se il commerciante non disattiva le prenotazioni. - Rimuovere il commerciante dal feed del commerciante se disattiva tutte le integrazioni Google.