Atividade

Intents de casa inteligente são objetos de mensagens simples que descrevem qual ação do smart home executar, como acender uma luz ou transmitir áudio para um alto-falante.

Todas as intents smart home estão no namespace action.devices, e você precisa fornecer fulfillment para elas. Sempre que Google Assistant envia uma intent para fulfillment, o token de acesso de OAuth 2 de um usuário é transmitido no cabeçalho de autorização.

Estas são as intents smart home compatíveis:

SINCRONIZAR

A intent action.devices.SYNC é usada para solicitar a lista de dispositivos smart home que o usuário conectou e está disponível.

Quando um usuário configura os dispositivos com o Google Home app (GHA), ele também é autenticado na infraestrutura em nuvem. Em seguida, Assistant recebe um token OAuth2. Neste ponto, Assistant envia uma intent action.devices.SYNC para o fulfillment para recuperar a lista inicial de dispositivos e recursos do usuário da infraestrutura em nuvem.

Esta figura mostra a interação entre a infraestrutura do Google e a infraestrutura do parceiro. Da infraestrutura do Google, há uma lista de parceiros disponíveis para o app cliente do Assistente que, em seguida, flui para a infraestrutura do parceiro para concluir a autenticação OAuth. A autenticação OAuth no lado do parceiro é o WebView de configuração do parceiro, o WebView do OAuth, os termos e configurações opcionais e os serviços de nuvem do parceiro. Em seguida, a infraestrutura do parceiro retorna as credenciais do OAuth para o app cliente do Assistente. Os serviços de nuvem do parceiro enviam dispositivos e recursos disponíveis para os serviços do Assistente, que armazenam as informações no Home Graph.
Figura 1: interação entre a infraestrutura do Google e do parceiro

Para evitar a desvinculação e vincular novamente a conta de um usuário, envie uma solicitação de sincronização para Assistant. Isso envia a intent action.devices.SYNC ao fulfillment para sincronizar a lista de dispositivos e recursos. Consulte Implementar a sincronização de solicitações para mais informações.

Diagrama de fluxo de uma intent de sincronização
Figura 2: intent de sincronização

Durante a configuração do fulfillment local, a plataforma Home local verifica a resposta SYNC do fulfillment na nuvem da sua ação smart home. Para saber mais sobre como modificar a resposta SYNC para oferecer suporte ao fulfillment local, consulte Atualizar a resposta do SYNC no fulfillment da nuvem.

CONSULTA

A intent action.devices.QUERY é usada para consultar o estado atual de dispositivos smart home.

Quando os usuários estiverem consultando o status do dispositivo, para responder a uma pergunta como Ok Google, quais luzes estão acesas na cozinha?, Assistant envia uma intent action.devices.QUERY para o fulfillment.

Diagrama de fluxo de uma intent QUERY
Figura 3: intent QUERY

Para uma melhor experiência do usuário, implemente o Estado do relatório para relatar de forma proativa o estado atual dos dispositivos de um usuário diretamente para Google Home Graph. Por exemplo, isso permite que Assistant saiba se o usuário ligou um dispositivo de iluminação inteligente com um interruptor físico.

Como informar o estado do dispositivo usando o estado do relatório
Figura 4: informar o estado do dispositivo

EXECUTE

A intent action.devices.EXECUTE é usada para fornecer comandos a serem executados em dispositivos smart home.

Quando os usuários enviam comandos para dispositivos com Assistant, o fulfillment recebe uma intent action.devices.EXECUTE para o fulfillment que descreve a ação e os dispositivos para agir. O usuário pode executar uma ação em um dispositivo com um comando como Ok Google, acender as luzes da sala de estar.

Diagrama de fluxo de uma intent EXECUTE
Figura 5: intent EXECUTE

DESCONECTAR

A intent action.devices.DISCONNECT é acionada para informar quando um usuário desvincula a conta do app de Assistant. Depois de receber uma intent action.devices.DISCONNECT, não informe o estado dos dispositivos desse usuário.