Gli intent per la smart home sono semplici oggetti di messaggistica che descrivono l'azione di smart home da eseguire, ad esempio accendere una luce o trasmettere audio a uno speaker.
Tutti gli intent smart home sono contenuti nello spazio dei nomi action.devices
e devi fornire il relativo completamento. Ogni volta che Google Assistant invia un intent al completamento, il token di accesso OAuth 2 di terze parti di un utente viene passato nell'intestazione Autorizzazione.
Questi sono gli intent smart home supportati:
SINCRONIZZA
L'intent action.devices.SYNC
viene utilizzato per richiedere l'elenco di
smart home dispositivi che l'utente ha connesso e che
sono disponibili per l'uso.
Quando un utente configura i propri dispositivi con Google Home app (GHA), viene anche autenticato nella tua infrastruttura cloud. Quindi,
Assistant riceve un token OAuth2. A questo punto, Assistant invia un intent action.devices.SYNC
al tuo fulfillment per recuperare l'elenco iniziale dei dispositivi e delle funzionalità degli utenti dalla tua infrastruttura cloud.
![Questa figura mostra l'interazione tra l'infrastruttura di Google e l'infrastruttura del partner. Dall'infrastruttura di Google è presente un
elenco di partner disponibile per l'app client dell'assistente, che poi
passa all'infrastruttura del partner per completare l'autenticazione OAuth. L'autenticazione
OAuth sul lato partner è costituita da WebView, WebView OAuth,
impostazioni e termini facoltativi e dai servizi cloud del partner. L'infrastruttura del partner restituisce quindi le credenziali OAuth all'app client dell'assistente. I servizi cloud del partner inviano i dispositivi e le funzionalità disponibili ai servizi dell'assistente, che poi memorizzano le informazioni nel grafico Home.](https://developers.home.google.com/static/cloud-to-cloud/primer/images/smarthome001.png?authuser=1&hl=it)
Per evitare di scollegare e ricollegare l'account di un utente, puoi inviare una richiesta di sincronizzazione a Assistant. L'intent action.devices.SYNC
viene inviato al tuo fulfillment per sincronizzare l'elenco di dispositivi e funzionalità. Per ulteriori informazioni, consulta Implementare la sincronizzazione delle richieste.
![Diagramma di flusso di un intent SYNC](https://developers.home.google.com/static/cloud-to-cloud/primer/images/smarthome002.png?authuser=1&hl=it)
Durante la configurazione del fulfillment locale, la
piattaforma della casa locale controlla la risposta SYNC
dal fulfillment
smart home del cloud dell'Azione. Per scoprire di più su come
modificare la risposta SYNC
per supportare il fulfillment locale, consulta
Aggiornamento della risposta SYNC in fulfillment cloud.
QUERY
L'intent action.devices.QUERY
viene utilizzato per eseguire query sullo stato
attuale di smart home dispositivi.
Quando gli utenti fanno query sullo stato del dispositivo, per rispondere a una domanda come
Hey Google, quali luci sono accese in cucina?,
Assistant invia un intent action.devices.QUERY
al tuo evasione degli ordini.
![Diagramma di flusso di un intent QUERY](https://developers.home.google.com/static/cloud-to-cloud/primer/images/query-diagram.png?authuser=1&hl=it)
Per una migliore esperienza utente, devi implementare lo stato del report per segnalare in modo proattivo lo stato attuale dei dispositivi di un utente direttamente a Google Home Graph. Ad esempio, questo consente a Assistant di sapere se l'utente ha acceso una luce smart con un interruttore delle luci fisiche.
![Segnalazione dello stato del dispositivo tramite Stato del report](https://developers.home.google.com/static/cloud-to-cloud/primer/images/smarthome004.png?authuser=1&hl=it)
ESEGUI
L'intent action.devices.EXECUTE
viene utilizzato per fornire i comandi
da eseguire sui dispositivi smart home.
Quando gli utenti inviano comandi ai dispositivi con Assistant, l'evasione dell'ordine riceve un intent action.devices.EXECUTE
che
descrive l'azione e i dispositivi su cui agire. Un utente può eseguire un'azione su un dispositivo con un comando come Hey Google, accendi le luci del salotto.
![Diagramma di flusso di un intent EXECUTE](https://developers.home.google.com/static/cloud-to-cloud/primer/images/smarthome003.png?authuser=1&hl=it)
DISCONNETTI
L'intent action.devices.DISCONNECT
viene attivato per informarti
quando un utente ha scollegato l'account dell'app da Assistant.
Dopo aver ricevuto un intent action.devices.DISCONNECT
, non devi segnalare
lo stato dei dispositivi di questo utente.