Sprawdzone metody

Poniższe sprawdzone metody dotyczą pełnej integracji rezerwacji w Centrum działań i można ich użyć, aby uniknąć problemów z użytecznością i wydajnością. Niska jakość danych może doprowadzić do usunięcia zasobów reklamowych.

Pliki danych

  • Jeśli usługa nie ma określonej długości, ustaw duration_sec w pliku danych dostępności na jedną z tych wartości:
    • Liczba sekund potrzebnych na wykonanie usługi w rozsądny sposób.
    • Średnia liczba sekund wymaganych do wykonania usługi.

  • Zadbaj o to, by pole Category w pliku danych sprzedawcy było określone. Na przykład restauracja może przesłać określony typ, taki jak francuska lub japońska. Więcej informacji o potencjalnych wartościach kategorii znajdziesz w sekcji Typy miejsc.
  • Ustaw warunki korzystania z usług dla konkretnego sprzedawcy w polu Terms w pliku danych Merchant Center, aby pod przyciskiem Zarezerwuj wyświetlała się ta notatka:

    Przechodząc dalej, akceptujesz Warunki korzystania z usługi <merchant>.
    W tym przypadku „Warunki korzystania z usługi” to link, który po kliknięciu wyświetla tekst ustawiony w polu tekstowym warunki.

  • Kompresuj pliki danych za pomocą narzędzia gzip

Serwer rezerwacji

Aby zoptymalizować integrację interfejsu Maps Booking API:

  • Zawsze używaj sygnatur czasowych UNIX w formacie UTC.
  • Wygeneruj unikalny identyfikator rezerwacji po wywołaniu nowej rezerwacji przez interfejs API CreateBooking .

Powiadomienia w czasie rzeczywistym

Aby zapewnić użytkownikom najlepsze wrażenia podczas procesu rezerwacji, wykonaj te czynności:

  • W przypadku implementacji standardowej do zmiany godziny rozpoczęcia, czasu trwania i stanu rezerwacji (np. anulowania lub nieobecności) spotkania użyj interfejsu BookingPowiadomienia.
  • W przypadku jakichkolwiek zmian dotyczących rezerwacji w Centrum akcji po Twojej stronie zawsze wysyłaj z systemu aktualizacje rezerwacji w czasie rzeczywistym za pomocą interfejsu BookingPowiadom API w czasie rzeczywistym, aby dane po stronie Centrum działań nie stawały się nieaktualne. Możesz na przykład anulować, przełożyć lub zaktualizować rezerwację z poziomu systemu w Centrum działań.
  • W przypadku każdej aktualizacji rezerwacji z: UpdateBookingRequest upewnij się, że wartość UpdateBookingResponse zawiera identyfikator rezerwacji i że wszystkie zaktualizowane pola muszą odzwierciedlać nową wartość.
  • Jeśli zaimplementowane są RTU dotyczące zasobów reklamowych:
    • Aktualizuj dostępność tylko w partiach po 100–1000 przedziałów na wywołanie interfejsu API.
    • Użyj pól *Restrict (takich jak startTimeRestrict), aby zawęzić cel edycji, zmniejszyć rozmiar ładunku i uniknąć ponownego wysyłania zbyt dużej ilości niezmienionych danych.
    • Jeśli odłączysz kilka wątków, zaimplementuj wykładniczy czas ponowienia, aby zapobiec błędom ograniczania. Jeśli nie wdrożysz poprawnie wykładniczego ponowienia, może wystąpić błąd limitu RESOURCE_EXHAUSTED. Możesz ponowić próbę wykładniczego ponowienia, aby je obsłużyć, ale jeśli stwierdzisz, że serwer często osiąga limity po uruchomieniu ReplaceServiceAvailability, skonfiguruj serwer w taki sposób, aby zbiorczo przełączył się w celu zapewnienia dostępności. To rozwiązanie zapobiega błędom związanym z limitem, ponieważ zmniejsza liczbę wywołań interfejsu API, które musi wykonać Twoja obsługa.
  • Ustaw limit czasu odpowiedzi na wywołanie interfejsu API na mniej niż 1 sekundę. Upewnij się, że serwer może obsłużyć 5 zapytań na sekundę z opóźnieniem wynoszącym poniżej sekundy przez co najmniej 95% czasu.