Übersicht

Partner, die am Programm für Wartelisten für Reservierungen teilnehmen, müssen zuerst die Kontoeinrichtung abschließen. Einige Schritte in der allgemeinen Anleitung sind jedoch nicht erforderlich, um die Wartelistenfunktion zu nutzen. In den Richtlinien auf dieser Seite wird erläutert, welche Schritte für Partner gelten, die die Wartelistenfunktion von "Mit Google reservieren" nutzen möchten. Wir empfehlen dir, diese Übersicht zu lesen, bevor du die Integrationsschritte durchführst.

Einführungsprozess

Abbildung 1 zeigt, wie du Händler mit Wartelistenfunktion im Actions Center veröffentlichen kannst.

Abbildung 1: Allgemeine Integrationsschritte
Abbildung 1:Allgemeine Integrationsschritte

Die wichtigsten Datenflüsse zwischen Ihnen (dem Partner) und Google sind in Abbildung 2 dargestellt:

Abbildung 2: Diagramm für den Datenfluss
Abbildung 2: Flussdiagramm für Datenintegration

Richtlinien für alle Wartelistenpartner für Reservierungen

Beachten Sie bei der Implementierung der Funktion „Wartelisten für Reservierungen“ Folgendes:

  • Für die Dienstleistung jedes Händlers auf Wartelisten für Reservierungen muss waitlist_rules ausgefüllt sein.
    • Sie müssen für die Warteliste und die Reservierung denselben Service verwenden. Mit anderen Worten: Wenn Ihr Restaurant auch Reservierungen zulässt, fügen Sie der Dienstleistung für die Reservierung einfach die Metadaten für die Warteliste hinzu.
  • Das Senden von SMS-Updates ist in den folgenden Fällen für die Implementierung der Warteliste erforderlich:
    • Bestätigung, dass sich der Nutzer erfolgreich auf die Warteliste gesetzt hat.
    • Der Nutzer wird benachrichtigt, dass seine Tabelle bereit ist.
    • Der Nutzer wird darüber informiert, dass sein Wartelisteneintrag storniert wurde.
  • SMS müssen einen Link zu einer Seite enthalten, auf der Nutzer ihren Wartelistenstatus sehen können.
  • Händler, die nur Wartelisten unterstützen, müssen im Actions Center keine Verfügbarkeitsfeeds zur Verfügung stellen.
  • Auf deinem Buchungsserver müssen alle wartelistenspezifischen Schritte implementiert werden, die unter Buchungsserver implementieren aufgeführt sind. Partner, die sowohl Reservierungen als auch Wartelisten unterstützen, können die neuen Methoden ihrem bestehenden Buchungsserver hinzufügen.
  • Das Actions Center führt eine Reihe von Testläufen für die Wartelistenmethoden auf dem Buchungsserver aus.

Flussdiagramm für Status

In dieser Tabelle werden die Status beschrieben, die in WaitlistEntry.waitlist_entry_state gemeldet werden müssen, wenn auf GetWaitlistEntry -Anrufe reagiert wird. Im Diagramm wird auch angegeben, wann die Felder WaitlistEntry.waitlist_entry_state_times.*_time_seconds aufgezeichnet und ausgefüllt und wann eine SMS an den Nutzer gesendet werden soll, um ihn über den neuen Status zu informieren.

Abbildung 3: Flussdiagramm für den Status der Warteliste
Abbildung: 3 Flussdiagramm für den Status der Warteliste

Häufige Sonderfälle

Im Folgenden sind häufige Grenzfälle bei der Einbindung von Wartelisten für Reservierungen sowie bevorzugte Lösungen dafür aufgeführt.

  • Wenn einige (aber nicht alle) Gruppengrößen keine neuen Wartelisteneinträge akzeptieren, weil es keine Wartezeit auf diese Gruppengrößen gibt, wird vorzugsweise WaitEstimates für alle Gruppengrößen in der BatchGetWaitEstimates-Antwort zurückgegeben und Nutzer können sich ohne Wartezeit auf die Warteliste für diese Gruppengrößen setzen lassen. Gibt einen WaitLength mit 0 parties_ahead_count und/oder mit einem estimated_seat_time_range mit 0 start_seconds und mit 0 end_seconds für die party_size-Werte ohne Wartezeit zurück
  • Wenn eine oder mehrere Gruppengrößen keine neuen Wartelisteneinträge akzeptieren, weil die Wartezeit zu lang geworden ist, wird es bevorzugt, WaitEstimates für diese Gruppengrößen in der BatchGetWaitEstimates-Antwort wegzulassen.

Diese Ansätze werden bevorzugt, da sie den Nutzern Optionen bieten, obwohl die Warteliste des Händlers möglicherweise nicht vollständig geöffnet ist.

Richtlinien für Partner, die nur auf Wartelisten Zugriff haben

Beachte Folgendes, wenn der Buchungsserver nur für Wartelisten verwendet wird:

  • Partner, die nur Wartelisten für Reservierungen nutzen, stellen keine Verfügbarkeitsfeeds für „Mit Google reservieren“ zur Verfügung.
  • Partner, die nur Wartelisten für Reservierungen nutzen, implementieren die Reservierungsmethoden nicht auf ihrem Buchungsserver. Implementiere den Buchungsserver stattdessen mit der Anleitung für die Wartelistenimplementierung.
  • Partner, die nur Wartelisten für Reservierungen nutzen, senden keine API-Aufrufe an Google. Das bedeutet, dass Partner, die nur auf Wartelisten ausgerichtet sind, kein Cloud-Projekt einrichten oder eine Entwickler-E-Mail-Adresse angeben müssen. Sie müssen keine Echtzeit-API-Aktualisierungen durchführen. Händlerfeeds und Dienstleistungsfeeds müssen jedoch weiterhin im Actions Center bereitgestellt werden.

Richtlinien für Partner, deren Händler Hinzufügungen zu Wartelisten manuell akzeptieren/ablehnen müssen

Wenn deine Händler die Möglichkeit benötigen, neue Wartelisten von Google manuell anzunehmen oder abzulehnen, sind zusätzliche Schritte erforderlich:

  • Legen Sie waitlist_confirmation_mode für Gruppengrößen, für die eine manuelle Bestätigung erforderlich ist, in wait_estimate auf WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS fest. Dies muss in BatchGetWaitEstimateResponse und GetWaitlistEntryResponse festgelegt werden.
  • Wartelisteneinträge, die vom Nutzer angefordert, aber noch nicht vom Händler akzeptiert wurden, sollten den Status PENDING_MERCHANT_CONFIRMATION haben.

Testläufe für Wartelisten für Reservierungen

Google testet die folgenden Anwendungsfälle, um zu prüfen, ob die Wartelistenmethoden in deiner Implementierung des Buchungsservers funktionieren. Google testet und überwacht auch die Latenz. Alle diese Tests müssen vor der Einführung erfolgreich sein.

WaitEstimate-Abruf

  • Für jede in einem BatchGetWaitEstimatesRequest angeforderte Gruppengröße werden geschätzte Wartezeiten zurückgegeben.
  • Für Gruppengrößen, bei denen der Händler die Möglichkeit hat, neue Wartelisteneinträge anzunehmen oder abzulehnen, setze „waitlist_confirmation_mode“ auf WAITLIST_CONFIRMATION_MODE_ASYNCHRONOUS.

Wartelisteneinträge erstellen

  • Ein Wartelisteneintrag kann aus einer CreateWaitlistEntry-Anfrage erstellt werden.
  • Wenn die Erstellung der Wartelisteneinträge fehlschlägt, wird in der Antwort ein Fehler in der Geschäftslogik angezeigt.
  • Bei einem erfolgreichen CreateWaitlistEntry-Versuch wird dieselbe Antwort zurückgegeben, wenn dieselbe CreateWaitlistEntry noch einmal empfangen wird.
  • Wenn ein CreateWaitlistEntry-Versuch fehlschlägt, wiederholt der Server einen neuen Versuch, sobald dieselbe CreateWaitlistEntry-Anfrage noch einmal empfangen wird.
  • Wartelisteneinträge werden auf der Benutzeroberfläche des Händlers angezeigt.
  • Bei Aufrufen an GetWaitlistEntry wird der erstellte Wartelisteneintrag zurückgegeben.

Status von Wartelisteneinträgen und Zeitstempel

  • Prüfe, ob jeder Status eines Wartelisteneintrags im Wartelisteneintrag von GetWaitlistEntry-Antworten korrekt zurückgegeben wird.
  • Prüfe, ob jeder Statuszeitstempel im entsprechenden Zeitstempelfeld des Wartelisteneintrags in GetWaitlistEntry-Antworten festgelegt ist.

Wartelisteneinträge löschen

  • Bestehende Wartelisteneinträge können gelöscht werden. Die Antwort auf einen erfolgreichen Löschvorgang muss der leere Proto-{} sein.

Deaktivieren

Beispiel für einen Dienstleistungsfeed für die wartelistenbasierte Integration (JSON)

Dienstleistungsfeed für wartelistenbasierte Integration

Deaktivierung durch Händler

Google erwartet bestimmte Antworten für Händler, die Wartelisten zuvor aktiviert hatten, die Funktion aber deaktiviert haben.

Sofortige Deaktivierung

Erweiterte Deaktivierung

  • Entferne waitlist_rules aus dem Dienstleistungsfeed des Händlers, wenn er Reservierungen nicht deaktiviert.
  • Den Händler aus dem Händlerfeed entfernen, wenn er alle Google-Integrationen deaktiviert hat.