Ręczne rejestrowanie urządzenia za pomocą interfejsu API REST

Na potrzeby szybkiego programowania możesz szybko zarejestrować lub zaktualizować model urządzenia i instancję, używając narzędzia do rejestracji dostępnego w pakiecie SDK Asystenta Google.

Jeśli nie chcesz korzystać z tego narzędzia, możesz ręcznie zarejestrować lub zaktualizować urządzenie za pomocą pliku JSON i interfejsu API REST. Możesz to zrobić na dowolnym komputerze. Najpierw uzyskaj token dostępu, a potem przejdź do odpowiedniej sekcji.

Uzyskiwanie tokena dostępu

  1. Sprawdź, czy narzędzie do autoryzacji jest aktualne:

    python -m pip install --upgrade google-auth-oauthlib[tool]

  2. Uzyskaj dane logowania, aby zarejestrować nowy model urządzenia. Odwołaj się do pliku JSON skopiowanego na urządzenie w poprzednim krok.

    google-oauthlib-tool --scope https://www.googleapis.com/auth/assistant-sdk-prototype \
          --headless --client-secrets /path/to/client_secret_client-id.json

    W terminalu powinien pojawić się URL:

    Please visit this URL to authorize this application: https://...

  3. Skopiuj adres URL i wklej go w przeglądarce (możesz to zrobić na komputerze lub innym komputerze). Po zatwierdzeniu w przeglądarce pojawi się kod, np. „4/XXXX”. Skopiuj ten kod i wklej go w terminalu:

    Enter the authorization code:

    Jeśli autoryzacja się powiodła, zobaczysz odpowiedź JSON podobną do tej:

    {
       "scopes": ["https://www.googleapis.com/auth/assistant-sdk-prototype"],
       "token_uri": "https://accounts.google.com/o/oauth2/token",
       "token": "ya29.GlujBLa_kuXZ5GnGBPBe_A6NpczLcpOtglEC0wHVORnmEhHETzlSW",
       "client_id": "795595571889-6iesr9a3nkmnipbdfnqi6gehiklm2m28.apps.googleusercontent.com",
       "client_secret": "Un8_TNFnb55555auSAGasvAg",
       "refresh_token": "1/4ZMBhTR3bTYWVEMatYWLOxW755555hlQXZI5uC02F2U"
     }

    Jeśli zamiast tego widzisz UNAUTHENTICATED, oznacza to, że wpisany kod jest nieprawidłowy. Spróbuj ponownie, skopiuj i wklej cały kod.

  4. Znajdź token w odpowiedzi JSON. Skopiuj ten token dostępu (bez cudzysłowów podwójnych) do zmiennej środowiskowej:

    ACCESSTOKEN=access-token

Operacje na modelu urządzenia

Zdefiniuj i zarejestruj model urządzenia

  1. Utwórz plik (np. device_model.json) opisujące cechy modelu urządzenia. Więcej informacji znajdziesz w dokumentacji dotyczącej formatu JSON modelu urządzenia.

  2. Zarejestruj model urządzenia, korzystając z jednej z tych metod. Pamiętaj, aby w adresach URL poniżej zastąpić atrybut project_id powiązany z modelem urządzenia.

    • Użyj tego polecenia:

      curl -s -X POST -H "Content-Type: application/json" \
      -H "Authorization: Bearer $ACCESSTOKEN" -d @device_model.json \
      https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/deviceModels/
    • Wyślij żądanie HTTPS z tymi atrybutami:

    W obu przypadkach serwer powinien zwrócić kopię wysłanego przez Ciebie kodu JSON modelu urządzenia. Jeśli model znajduje się już na serwerze, otrzymasz komunikat o błędzie ALREADY_EXISTS.

Pobieranie modelu urządzenia

Pobierz model urządzenia, korzystając z jednej z tych metod. Pamiętaj, aby w adresach URL poniżej wstawić project_id i device_model_id powiązane z modelem urządzenia.

Wyświetl listę modeli urządzeń

Wyświetl wszystkie modele urządzeń w danym projekcie, korzystając z jednej z tych metod. Pamiętaj, aby w adresach URL poniżej zastąpić atrybut project_id powiązany z modelami Twoich urządzeń.

Aktualizowanie modelu urządzenia

Zaktualizuj model urządzenia, korzystając z jednej z tych metod. Pamiętaj, aby zastąpić wartości project_id i device_model_id powiązane z modelem urządzenia.

W obu przypadkach serwer powinien zwrócić kopię zaktualizowanego pliku JSON z wysłanym modelem urządzenia.

Usuwanie modelu urządzenia

Usuń model urządzenia, korzystając z jednej z tych metod. Pamiętaj, aby w adresach URL poniżej wstawić project_id i device_model_id powiązane z modelem urządzenia.

Operacje instancji urządzenia

Definiowanie i rejestrowanie instancji urządzenia

  1. Utwórz plik (np. test_device.json), która identyfikuje urządzenie. Więcej informacji znajdziesz w dokumentacji pliku JSON instancji urządzenia.

  2. Zarejestruj urządzenie za pomocą jednej z tych metod. Pamiętaj, aby w adresach URL poniżej zastąpić atrybut project_id powiązany z modelem urządzenia.

    • Użyj tego polecenia:

      curl -s -X POST -H "Content-Type: application/json" \
      -H "Authorization: Bearer $ACCESSTOKEN" -d @test_device.json \
      https://embeddedassistant.googleapis.com/v1alpha2/projects/project_id/devices/
    • Wyślij żądanie HTTPS z tymi atrybutami:

    W obu przypadkach serwer powinien zwrócić kopię wysłanego przez Ciebie kodu JSON instancji urządzenia. Jeśli instancja istnieje już na serwerze, zobaczysz błąd ALREADY_EXISTS.

Pobieranie instancji urządzenia

Pobierz wystąpienie urządzenia za pomocą jednej z tych metod. Pamiętaj, aby w adresach URL poniżej zastąpić atrybut project_id powiązany z modelem urządzenia i urządzeniem id.

Wyświetlanie listy instancji urządzeń

Wyświetl wszystkie instancje urządzeń w danym projekcie, używając jednej z tych metod. Pamiętaj, aby zastąpić parametr project_id powiązany z wystąpieniami urządzeń w poniższych adresach URL.

Usuwanie instancji urządzenia

Usuń wystąpienie urządzenia, korzystając z jednej z tych metod. Pamiętaj, aby w adresach URL poniżej zastąpić atrybut project_id powiązany z modelem urządzenia i urządzeniem id.