Intents

As intents de casa inteligente são objetos de mensagens simples que descrevem qual integração do Cloud-to-cloud deve ser realizada, como acender uma luz ou transmitir áudio para um alto-falante.

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

Estas são as intents de smart home aceitas:

SINCRONIZAR

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

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

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

Para evitar desvincular e vincular novamente a conta de um usuário, envie uma sincronização de solicitaçã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 SYNC
Figura 2: intent SYNC

Durante a configuração do fulfillment local, a plataforma do Google Home local verifica a resposta SYNC do fulfillment na nuvem da sua Ação do smart home. Para saber como modificar sua resposta de SYNC para oferecer compatibilidade com o fulfillment local, consulte Atualizar a resposta de SYNC no fulfillment na nuvem.

QUERY

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

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

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

Para oferecer a melhor experiência do usuário, implemente o Report State para informar proativamente o estado atual dos dispositivos de um usuário diretamente ao Google Home Graph. Por exemplo, isso permite que o Assistant saiba se o usuário acendeu uma iluminação inteligente com um interruptor físico.

Como informar o estado do dispositivo usando o Report State
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, seu fulfillment recebe uma intent action.devices.EXECUTE que descreve a ação e os dispositivos em que ela será realizada. Um usuário pode executar uma ação em um dispositivo com um comando como Ok Google, acenda 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 do Assistant. Depois de receber uma intent action.devices.DISCONNECT, não informe o estado dos dispositivos desse usuário.