Práticas recomendadas para conectar dispositivos IoT ao Google Assistente

Nick Felker em Google Developers Segue em 27 de jun · 5 min ler

Depois de me mudar para Nova York e me instalar em um apartamento alguns meses atrás, comecei a pensar em maneiras de incorporar a automação em minha nova casa. Naturalmente, acabei adquirindo alguns dispositivos domésticos inteligentes com o Google Assistente! O que me atraiu foi a conveniência de poder controlar esses dispositivos individualmente com um comando de voz.

Com o Assistente, posso aproveitar um amplo ecossistema de dispositivos, criando rotinas para controlar vários dispositivos por vez. (Nada mais que dizer “estou em casa” para acender simultaneamente as luzes da cozinha e começar a tocar música mesmo com as mãos cheias de mantimentos!) O Assistente me permite agendar facilmente as rotinas em determinados dias e horários – os dispositivos são ativados em meu nome sem um comando verbal. Agora, quando saio para o trabalho todas as manhãs, meu vácuo inteligente liga e volto mais tarde naquele dia para uma casa limpa.

Se você é um desenvolvedor de automação residencial criando um dispositivo de IoT ou deseja conectar um dispositivo de IoT existente ao Google Assistente, veja algumas práticas recomendadas.

Direto ao ponto

Muitas ações são conversacionais, invocadas incluindo "conversar com …" em sua consulta. Eles são criados usando ferramentas como o Dialogflow, onde você cria manualmente um conjunto de frases do usuário e determina como responder a elas. À medida que a ação de conversação conquista mais usuários, você precisa atualizar continuamente as frases do usuário para garantir que você lide com vários casos de uso. Como esses usuários crescem internacionalmente, você terá que manter esse projeto em diferentes idiomas.

Em contraste, ao criar uma Ação para casa inteligente , você permite que os usuários controlem diretamente o dispositivo com comandos de voz. O Assistente também permite que os usuários controlem dispositivos de vários provedores de dispositivos inteligentes ao mesmo tempo (por exemplo, "desligue todas as minhas luzes"). Isso ocorre porque seus dispositivos são armazenados no Graph Home , um banco de dados que armazena e fornece dados contextuais sobre a residência e seus dispositivos.

Os benefícios podem se estender além da voz: se o dispositivo de um usuário for uma câmera, luz, tomada, interruptor ou termostato, eles poderão ver uma interface visual no telefone e em visores inteligentes.

Um exemplo de controles de toque que agrupam duas luzes no quarto

Defina seu dispositivo com um tipo e traço (s)

Ao criar uma Ação para casa inteligente, você categoriza seu dispositivo em um tipo específico. O tipo de dispositivo é usado para fins semânticos. Por exemplo, especificar que seu dispositivo é do tipo LIGHT significa que ele será ativado quando o usuário der comandos sobre luzes. Quando duas luzes estão na mesma sala, elas podem ser agrupadas para um acesso mais rápido.

Cada tipo está associado a uma lista de características que declaram as capacidades do dispositivo ao Assistente. Por padrão, os usuários podem consultar traços para o estado atual e enviar comandos de controle para atualizá-los. Para dispositivos que suportam apenas comportamento unidirecional para um determinado traço, como um sensor, os atributos queryOnly e commandOnly aplicam essa restrição. As características do dispositivo que exigem segurança adicional podem incorporar a autenticação de dois fatores , o que permite solicitar uma confirmação simples ou um PIN antes que a solicitação seja aceita.

Tipos e características permitem que você se concentre nos recursos do dispositivo e permita que o Google lide com os elementos da conversa. As características do dispositivo são profundamente integradas ao entendimento natural do idioma do Google com gramáticas que permitem consultas e comandos do usuário em cada um dos idiomas suportados , incluindo quaisquer idiomas adicionais aos quais possamos dar suporte no futuro.

Se você não conseguir expressar o comportamento de seu dispositivo usando o conjunto atualmente disponível de traços predefinidos, poderá descrevê-lo usando os modos e alterná-lo . O atributo Modos descreve atributos do seu dispositivo que possuem configurações discretas. Por exemplo, uma lavadora poderia definir um modo chamado “load” com as configurações “small”, “medium” e “large”. As alternâncias são semelhantes, mas apenas suportam ou desativam os estados binários.

Você pode ver a lista completa dos modos disponíveis e as opções disponíveis em nossa documentação de referência. Para solicitar um novo modo ou ativar / desativar um atributo, crie um novo problema no repositório inicial do GitHub. Se seu dispositivo exigir um comportamento de característica que atualmente não suportamos, solicite uma nova característica preenchendo este formulário . A equipe da casa inteligente regularmente adiciona suporte para novos tipos e características.

Forneça uma integração mais profunda no estado de seus dispositivos

Ao integrar-se à plataforma doméstica inteligente, você é capaz de fornecer integrações profundas para garantir que sua casa esteja funcionando de forma eficaz e segura.

Quando seu dispositivo não está funcionando, sua ação pode retornar um de um conjunto de erros que fornece aos usuários uma mensagem de erro verbal que explica claramente o problema. Por exemplo, se o seu aspirador inteligente estiver preso em um canto e você quiser que ele comece a limpar, ele poderá retornar o erro “deviceStuck”. Se você disser "começar a limpar", o Assistente do Google responderá com "O vácuo está preso". Isso permite que o usuário saiba que o vácuo precisa ser encontrado e salvo.

Se a bateria do aspirador inteligente estiver baixa, mas ainda puder concluir a limpeza, ela poderá retornar uma exceção. Uma exceção sem bloqueio indica que seu comando foi bem-sucedido, mas há algumas informações adicionais que você deve saber. Neste exemplo, ele pode retornar uma exceção sem bloqueio com o código de status “lowBattery”. O Assistente do Google responderá com uma mensagem do tipo: “Ok, começando o vácuo. A propósito, o vácuo tem uma bateria fraca ”.

Como com os traços, essas respostas verbais são traduzidas e estão disponíveis nas dezenas de idiomas atualmente suportados. Isso economiza muito tempo para disponibilizar seus dispositivos domésticos inteligentes em mais lugares do mundo.

Os usuários podem combinar várias dessas tarefas em uma única rotina. Dizer "estou em casa" pode fazer com que vários dispositivos diferentes sejam ligados ou executem outra ação configurável por meio das configurações do Google Assistente.

A casa do futuro

A casa do futuro é aquela que está mais conectada entre os dispositivos que um usuário tem em sua casa. Convidamos você a nos ajudar a chegar a esse futuro conectando seus dispositivos a esse amplo ecossistema. Com uma ação de casa inteligente, você pode aproveitar os recursos integrados da plataforma: controles de toque, i18n, erros e exceções e autenticação de dois fatores.

A equipe da casa inteligente aqui no Google continua trabalhando na adição de novos tipos e características de dispositivos. Deixe-nos saber se há um caso de uso que ainda não é suportado.

Se você quer construir uma Ação para Casa Inteligente e não sabe por onde começar, comece lendo nossa documentação e confira nosso codelab inteligente !