Klient interfejsu Java Booking API

Możesz pobrać naszego klienta interfejsu Java API do aktualizacji w czasie rzeczywistym, aby rozpocząć wdrażanie aktualizacji w czasie rzeczywistym.

Warunek wstępny:

Przygotuj konto usługi i pobierz klucz prywatny.

Wypróbuj:

  1. Pobierz bibliotekę klienta Java, aby rozpakować plik, aby uzyskać pakiet „mapsbooking”.
  2. Utwórz projekt Java w swoim IDE, pobierz przykładowe kody InventoryUpdate.java i BookingNotification.java z tego repozytorium:

    git clone https://maps-booking.googlesource.com/java-maps-booking-api-example
    

    i zaimportuj je do projektu Java w katalogu src.

  3. Skopiuj klucz prywatny (plik JSON) do katalogu src.
  4. Dodaj bibliotekę klienta Java do zależności projektu (uwzględnij pliki jar w katalogu mapsbooking i libs-sources).
  5. Zakończ implementacje w obu plikach Java.

Więcej informacji o interfejsie API REST znajdziesz tutaj.

Rozwiązywanie problemów:

  1. Gdy próbujesz utworzyć nowego sprzedawcę lub usługę z istniejącym identyfikatorem merchantId lub serviceId, zobaczysz ten komunikat o błędzie:

    409 Conflict
    {
      “code” : 409,
      “errors” :
        [{
            “domain” : “global”,
            “message” : “Requested entity already exists”,
            “reason” : “alreadyExists”,
            “debugInfo” : “detail: "[ORIGINAL ERROR] generic::already_exists: ...”\n"
        }],
      “message” : “Requested entity already exists”,
      “status” : “ALREADY_EXISTS”
    }
    
  2. Gdy wykonujesz wywołanie zastępczego dostępności, podając nieprawidłowy identyfikator merchantId lub serviceId, nie zwraca ono komunikatu o błędzie. Dzieje się tak, ponieważ zmiany przedziałów dostępności wprowadzone za pomocą RTU obsługują wykonywanie poza kolejnością, więc nie są powiązane z identyfikatorem merchantId ani serviceId. Przedziały w żądaniu nie będą jednak wyświetlane w środowisku produkcyjnym z powodu nieprawidłowego identyfikatora merchantId lub serviceId. Aby umożliwić wyświetlanie przedziałów, dodaj brakującego sprzedawcę lub usługę za pomocą RTU lub plików danych.
  3. We wszystkich funkcjach aktualizacji parametr „updateMask” musi mieć format FieldMask, aby określić pola do zaktualizowania. Interfejs API musi zmieniać tylko wartości pól określone w masce, a pozostałe pozostawić bez zmian. Jeśli przekażesz nieprawidłowy ciąg UpdateMask, aktualizacja nie zostanie zastosowana. Jeśli podczas aktualizacji nie ma maski pól, operacja dotyczy wszystkich pól (tak jakby została określona maska wszystkich pól). Jeśli chcesz zaktualizować wszystkie pola, ustaw wartość UpdateMask jako pustą.
  4. Żadne pola z wartością 0 nie są wyświetlane w odpowiedzi.