Przeznaczenie

Intencje związane z inteligentnym domem to proste obiekty do opisania, które opisują co smart home ma wykonać, np. włączyć światło lub przesyłać dźwięk na głośnik.

Wszystkie intencje smart home znajdują się w action.devices i musisz zapewnić dla niej realizację zamówień. Kiedykolwiek Google Assistant wysyła zamiar do realizacji, token dostępu OAuth 2 innej firmy jest przekazywany w nagłówku autoryzacji.

Oto obsługiwane intencje smart home:

SYNC

Intencja action.devices.SYNC jest używana do wysyłania żądania listy smart home urządzenia, z którymi użytkownik połączył się i są dostępnych do użytku.

Gdy użytkownik skonfiguruje swoje urządzenia z funkcją Google Home app (GHA), uwierzytelniać się w infrastrukturze w chmurze. Następnie: Assistant otrzymuje token OAuth2. W tym momencie Assistant wysyła intencję action.devices.SYNC do Twojego fulfillment do pobrania początkowej listy urządzeń i możliwości użytkownika z Twoją infrastrukturą w chmurze.

Ten rysunek pokazuje interakcję między infrastrukturą Google
    z infrastrukturą partnera. Infrastruktura Google obejmuje
    listę partnerów dostępnych dla aplikacji klienckiej Asystent. Następnie
    przechodzi do infrastruktury partnera w celu ukończenia uwierzytelniania OAuth. Protokół OAuth
    uwierzytelnianie po stronie partnera to
konfiguracja partnera, WebView, OAuth,
    opcjonalne ustawienia i warunki oraz usługi partnerów w chmurze. z infrastrukturą partnera,
    a następnie zwraca dane logowania OAuth do aplikacji klienckiej Asystenta. Partner
    usługi w chmurze wysyłają dostępne urządzenia i funkcje do usług Asystenta,
    który zapisuje te informacje w głównym wykresie.
Rysunek 1. Interakcja między Google a partnerem infrastruktura

Aby uniknąć rozłączania i ponownego połączenia konta użytkownika, możesz wysłać prośbę o synchronizację do Assistant. Powoduje to wysyłanie intencji action.devices.SYNC aby zsynchronizować listę urządzeń i funkcji. Zobacz Zaimplementuj synchronizację żądań, aby dowiedzieć się więcej. i informacjami o nich.

Schemat procesu intencji SYNC
Rysunek 2. Intencja SYNCHRONIZACJI

Podczas konfiguracji lokalnej realizacji Platforma lokalna sprawdza odpowiedź SYNC na smart home Realizacja akcji w chmurze. Aby dowiedzieć się, jak to zrobić, aby zmodyfikować odpowiedź SYNC pod kątem obsługi lokalnej realizacji, zapoznaj się z artykułem Aktualizacja odpowiedzi SYNC w ramach realizacji w chmurze.

ZAPYTANIE

Intencja action.devices.QUERY jest używana do wysyłania zapytań dotyczących bieżącego stanu z smart home urządzeń.

Gdy użytkownicy pytają o stan urządzenia, aby odpowiedzieć na takie pytanie, jak OK Google, jakie światła są włączone w kuchni?, Assistant wysyła intencję action.devices.QUERY do Twojego i realizacji.

Diagram przepływu intencji QUERY
Rysunek 3. Intencja QUERY

Aby zadbać o wygodę użytkowników, zaimplementuj Stan raportu – umożliwia zgłaszanie obecny stan urządzeń użytkownika. Google Home Graph Dzięki temu możemy na przykład Assistant sprawdza, czy użytkownik włączył inteligentne oświetlenie za pomocą fizyczny przełącznik światła.

Raportowanie stanu urządzenia za pomocą stanu raportu
Rysunek 4. Raportowanie stanu urządzenia

WYKONAJ

Intencja action.devices.EXECUTE jest używana do podawania poleceń do wykonania na smart home urządzeniach.

Gdy użytkownicy wysyłają polecenia na urządzenia z urządzeniem Assistant, realizacja otrzymuje intencję action.devices.EXECUTE do Twojej realizacji opisuje działanie oraz urządzenia, na których ma on działać. Użytkownik może wykonać działanie na urządzeniu za pomocą polecenia takiego jak OK Google, włącz światło w salonie.

Diagram przepływu intencji EXECUTE
Rysunek 5. WYKONAJ intencję

ODŁĄCZ

Aktywowana jest intencja action.devices.DISCONNECT, która informuje Cię o tym gdy użytkownik odłączył konto w aplikacji od aplikacji Assistant. Po otrzymaniu intencji action.devices.DISCONNECT nie należy zgłaszać stan urządzeń tego użytkownika.