Tout partenaire participant au programme de listes d'attente pour les réservations doit d'abord terminer de configurer son compte. Cependant, certaines étapes du guide général ne sont pas requises dans le cas de l'utilisation de la fonctionnalité de listes d'attente. Vous trouverez sur cette page une explication des étapes qui s'appliquent aux partenaires souhaitant utiliser la fonctionnalité de listes d'attente de Réserver avec Google. Nous vous conseillons de lire cette présentation avant de suivre les étapes d'intégration.
Processus de lancement
La figure 1 présente le processus de lancement de la fonctionnalité Réserver avec Google pour vos marchands qui utilisent la fonctionnalité de listes d'attente dans Actions Center.
La figure 2 présente les principaux flux de données échangés entre vous (le partenaire) et Google:
Consignes pour tous les partenaires de la fonctionnalité Liste d'attente pour les réservations
Tenez compte des points suivants lorsque vous mettez en œuvre la fonctionnalité de listes d'attente pour les réservations:
waitlist_rules
doit être renseigné pour le service de chaque marchand avec listes d'attente.- Vous devez utiliser le même service pour la liste d'attente et la réservation. En d'autres termes, si votre restaurant accepte également les réservations, il vous suffit d'ajouter les métadonnées associées à la liste d'attente au service de réservation.
- L'envoi de notifications par SMS est obligatoire pour l'implémentation de la liste d'attente dans les cas suivants :
- Pour confirmer que l'utilisateur a bien rejoint la liste d'attente.
- Pour avertir l'utilisateur que sa table est prête.
- Pour informer l'utilisateur que son inscription sur la liste d'attente a été annulée.
- Les messages SMS doivent contenir un lien vers une page sur laquelle les utilisateurs peuvent consulter leur état de liste d'attente.
- Les marchands qui n'utilisent que des listes d'attente n'ont pas besoin de fournir de flux disponibilité à Actions Center.
- Votre serveur de réservation doit intégrer toutes les étapes spécifiques aux listes d'attente décrites dans la section Mettre en œuvre le serveur de réservation. Les partenaires dont les systèmes sont compatibles à la fois avec les réservations et avec les listes d'attente peuvent ajouter les nouvelles méthodes à leur serveur de réservation existant.
- Le centre d'actions exécute un ensemble de scénarios de test pour les méthodes liées aux listes d'attente intégrées au serveur de réservation.
Organigramme de l'état
Ce tableau décrit les états qui doivent être signalés dans
WaitlistEntry.waitlist_entry_state
lors de la réponse aux appels
GetWaitlistEntry
. Le graphique indique également quand enregistrer et renseigner les champs
WaitlistEntry.waitlist_entry_state_times.*_time_seconds
, et quand envoyer un SMS à l'utilisateur pour l'informer qu'il est entré dans un nouvel état.
Problèmes courants
Vous trouverez ci-dessous une liste de différents problèmes pouvant survenir au niveau de l'intégration de listes d'attente de réservations et les solutions que nous vous recommandons.
-
Il peut arriver qu'il n'y ait aucun temps d'attente pour les groupes d'un certain nombre de personnes, mais qu'il y en ait pour les autres groupes, autrement dit que dans certains cas, l'ajout dans une liste d'attente n'a pas lieu. Nous vous recommandons alors de renvoyer la valeur
WaitEstimates
pour tous les cas dans la réponseBatchGetWaitEstimates
et de permettre aux utilisateurs pour lesquels il n'y a aucun temps d'attente d'être ajoutés à la liste. Renvoyez unWaitLength
avec 0parties_ahead_count
et/ou unestimated_seat_time_range
avec 0start_seconds
et 0end_seconds
pour lesparty_size
sans attente. -
Il peut également arriver que dans certains cas, l'ajout dans une liste d'attente n'est plus nécessaire, car le temps d'attente est désormais trop long. Nous vous recommandons alors d'omettre la valeur
WaitEstimates
dans la réponseBatchGetWaitEstimates
dans de tels cas.
Nous vous recommandons ces solutions, car elles donnent à l'utilisateur différentes options, même si la liste d'attente du marchand n'est pas complètement activée.
Consignes pour les partenaires n'utilisant que des listes d'attente pour les réservations
Tenez compte des points suivants si le serveur de réservation est utilisé seulement pour des listes d'attente:
- Les partenaires qui n'utilisent le serveur que pour des listes d'attente ne fournissent pas de flux disponibilité à Réserver avec Google.
- Réservations Les partenaires qui n'utilisent le serveur que pour des listes d'attente ne mettent pas en œuvre les méthodes liées aux réservations. Ils doivent plutôt mettre en œuvre le serveur de réservation en suivant les instructions concernant la mise en œuvre basée sur des listes d'attente.
- Les partenaires qui n'utilisent le serveur que pour des listes d'attente n'envoient pas d'appels d'API à Google. Cela signifie qu'ils n'ont pas besoin de configurer un projet sur le cloud ni de fournir l'adresse e-mail d'un développeur. Vous n'avez pas besoin d'effectuer de mises à jour de l'API en temps réel. Toutefois, vous devez toujours fournir des flux marchands et services à Actions Center.
Consignes pour les partenaires dont les marchands doivent accepter/refuser manuellement les ajouts aux listes d'attente
Des étapes supplémentaires sont nécessaires si vos marchands exigent d'avoir la possibilité d'accepter ou de refuser manuellement de nouvelles entrées dans des listes d'attente provenant de Google:
- Dans le champ
wait_estimate
, définissez le modewaitlist_confirmation_mode
surWAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
lorsqu'une confirmation manuelle est requise en fonction du nombre de personnes. Cette valeur doit être définie à la fois dansBatchGetWaitEstimateResponse
et dansGetWaitlistEntryResponse
. - Définissez l'état
PENDING_MERCHANT_CONFIRMATION
pour les entrées dans une liste d'attente demandées par l'utilisateur, mais pas encore acceptées par le marchand.
Scénarios de test pour les listes d'attente pour les réservations
Google teste les cas d'utilisation suivants pour s'assurer du bon fonctionnement des méthodes de listes d'attente dans la mise en œuvre de votre serveur de réservation. Google teste et surveille également la latence. Tous ces tests doivent réussir avant le lancement.
Récupération de la valeur WaitEstimate
- Des estimations d'attente sont renvoyées pour tout nombre de personnes demandé dans une requête
BatchGetWaitEstimatesRequest
. - Pour tout nombre de personnes pour lequel le marchand a la possibilité d'accepter ou de refuser de nouvelles entrées dans la liste d'attente, définissez le paramètre waitlist_confirmation_mode sur
WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS
.
Créer une entrée dans une liste d'attente
- Une entrée dans une liste d'attente peut être créée à partir d'une requête
CreateWaitlistEntry
. - Si la création d'une entrée dans une liste d'attente échoue, une erreur de logique métier s'affiche dans la réponse.
- Si une tentative de requête
CreateWaitlistEntry
réussit, la même réponse est renvoyée lorsque la même requêteCreateWaitlistEntry
est reçue de nouveau. - Si une tentative de requête
CreateWaitlistEntry
échoue, le serveur effectue une nouvelle tentative lorsque la même requêteCreateWaitlistEntry
est reçue de nouveau. - Les entrées dans des listes d'attente s'affichent dans l'interface du marchand.
- Les appels à
GetWaitlistEntry
renvoient l'entrée dans une liste d'attente qui a été créée.
États et horodatages des entrées dans des listes d'attente
- Vérifiez que chaque état d'entrée dans la liste d'attente est correctement renvoyé dans l'entrée correspondante des réponses
GetWaitlistEntry
. - Vérifiez que chaque horodatage d'état est défini dans le champ d'horodatage approprié de l'entrée dans la liste d'attente des réponses
GetWaitlistEntry
.
Supprimer une entrée dans une liste d'attente
- Les entrées existantes dans des listes d'attente peuvent être supprimées. La réponse à une suppression réussie doit être le proto
{}
vide.
Désactiver
- Vérifiez que les marchands qui ont désactivé la fonctionnalité des listes d'attente sont traités comme décrit dans la section Marchands ayant désactivé la fonctionnalité.
Exemple de flux services avec listes d'attente (JSON)
Flux services avec listes d'attenteMarchands ayant désactivé la fonctionnalité
Google s'attend à certaines réponses de la part de marchands qui utilisaient précédemment la fonctionnalité des listes d'attente, mais qui ont décidé de la désactiver.
Désactivation immédiate de la fonctionnalité
- Renvoyez
CLOSED_OTHER
pour les requêtesBatchGetWaitEstimates
. - Renvoyez
WAITLIST_CLOSED
pour les requêtesCreateWaitlistEntry
. - Renvoyez correctement les requêtes
GetWaitlistEntry
pour les utilisateurs qui figurent déjà dans la liste d'attente.
Désactivation de la fonctionnalité pour un temps prolongé
- Supprimez
waitlist_rules
du flux services pour le marchand en question, s'il n'a pas désactivé la fonctionnalité des réservations. - Supprimez-le du flux marchands s'il a désactivé l'ensemble des intégrations Google.