Introduzione alle liste d'attesa

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.

Figura 1: passaggi di integrazione di alto livello
Figura 1: passaggi di integrazione di alto livello

Nel complesso, i principali flussi di dati tra te (il partner) e Google sono acquisiti nella Figura 2:

Figura 2: diagramma del flusso di dati di integrazione
Figura 2: Diagramma di flusso dei dati di integrazione

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.

Figura 3: diagramma di flusso dello stato della lista d'attesa
Figura: 3 Diagramma di flusso dello stato della lista d'attesa

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 risposta BatchGetWaitEstimates e consentire agli utenti di entrare nella lista d'attesa per queste dimensioni senza attesa. Restituisci un WaitLength con 0 parties_ahead_count e/o con un estimated_seat_time_range con 0 start_seconds e con 0 end_seconds per party_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 risposta BatchGetWaitEstimates.

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 su WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS in wait_estimate per i gruppi che richiedono la conferma manuale. Questo deve essere impostato nel BatchGetWaitEstimateResponse e nel GetWaitlistEntryResponse.
  • 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 ricezione CreateWaitlistEntry.
  • Se un tentativo CreateWaitlistEntry non va a buon fine, il server prova nuovamente quando viene ricevuto nuovamente lo stesso CreateWaitlistEntry.
  • 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

Esempio di feed di servizio della lista d'attesa (JSON)

Feed di servizio per la lista d'attesa

Disattivazione 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

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.