Best practice

Le seguenti best practice si applicano all'integrazione end-to-end di Prenota con Google e possono essere utilizzate per evitare problemi di usabilità e prestazioni. Una qualità dei dati insufficiente potrebbe comportare la rimozione dell'inventario.

Feed

  • Se un servizio non ha una durata impostata, imposta duration_sec nel feed di disponibilità su uno dei seguenti valori:
    • Il numero di secondi necessari per eseguire il servizio in modo ragionevole.
    • Il numero medio di secondi necessari per completare il servizio.

  • Specifica un valore specifico per il campo Category nel feed del commerciante. Ad esempio, un ristorante potrebbe inviare un tipo specifico, come francese o giapponese. Per i dettagli, consulta Tipi di luogo per potenziali valori di categoria.
  • Imposta i termini di servizio specifici del commerciante nel campo Terms del feed del commerciante affinché la seguente nota venga visualizzata sotto il pulsante Prenota:

    Se continui, accetti i Termini di servizio di <merchant>.
    In questo caso, "Termini di servizio" è un link che, se selezionato, mostra il testo impostato nel campo di testo dei termini.

  • Comprimi i tuoi feed utilizzando gzip

Server di prenotazione

Per ottimizzare l'integrazione dell'API Maps Booking, procedi nel seguente modo:

  • Usa sempre timestamp UNIX in formato UTC.
  • Genera un ID prenotazione univoco quando viene chiamata una nuova prenotazione nell'API CreateBooking .

Aggiornamenti in tempo reale

Per garantire la migliore esperienza utente durante la procedura di prenotazione, procedi nel seguente modo:

  • Per un'implementazione standard, utilizza l'API BookingNotifiche per modificare l'ora di inizio, la durata e lo stato della prenotazione, ad esempio l'annullamento o il mancato arrivo, di un appuntamento.
  • Dopo ogni modifica apportata alla prenotazione da Prenota con Google, invia sempre gli aggiornamenti delle prenotazioni in tempo reale dal sistema con l'API BookingNotification in tempo reale, in modo che i dati non diventino inattivi su Prenota con Google. Ad esempio, puoi annullare, riprogrammare o aggiornare una prenotazione dal tuo sistema in Prenota con Google.
  • Per ogni aggiornamento della prenotazione da UpdateBookingRequest, assicurati che il valore UpdateBookingResponse contenga l'ID prenotazione e che tutti i campi aggiornati debbano riflettere il nuovo valore.
  • Se è implementata una RTU dell'inventario
    • Aggiorna la disponibilità solo in gruppi di 100-1000 slot per chiamata API.
    • Utilizza i campi *Restrict, ad esempio startTimeRestrict, per restringere il target di modifica, ridurre le dimensioni del payload ed evitare di inviare troppi dati non modificati.
    • Se decidi di rimuovere più thread, implementa un backoff esponenziale per evitare errori di limitazione. Se non implementi correttamente un backoff esponenziale, potresti ricevere un RESOURCE_EXHAUSTED errore di quota. Puoi riprovare a eseguire il backoff esponenziale, ma se ti accorgi che il tuo server raggiunge spesso le quote quando esegui ReplaceServiceAvailability, configuralo per eseguire la sostituzione collettiva per la disponibilità. Questa soluzione impedisce gli errori di quota perché riduce il numero di chiamate API che deve essere effettuata dal tuo servizio.
  • Imposta i limiti di tempo per le risposte delle chiamate API a meno di un secondo. Assicurati che il server possa gestire cinque query al secondo (QPS) con latenza inferiore al secondo per almeno il 95% del tempo.