Controle dispositivos IoT com um aplicativo de assistente de voz

Serviço de Bot do Azure AI
Azure IoT Hub
Azure AI services
Azure AI Speech

Ideias de soluções

Este artigo é uma ideia de solução. Se você quiser que expandamos o conteúdo com mais informações, como possíveis casos de uso, serviços alternativos, considerações de implementação ou orientação de preços, informe-nos fornecendo feedback do GitHub.

Esta ideia de solução descreve como criar interfaces de conversação de voz com dispositivos de Internet das Coisas (IoT). Você pode combinar o Serviço de Fala do Azure, o Serviço de Compreensão de Idiomas (LUIS) e o Azure Bot Framework para criar interfaces naturais semelhantes às humanas que controlam dispositivos IoT por meio do Hub IoT do Azure.

Potenciais casos de utilização

  • Controle dispositivos domésticos acessíveis pela Internet, como televisores e geladeiras, por comando de voz.
  • Use voz e linguagem natural para relatar problemas com dispositivos conectados à IoT.

Arquitetura

Diagram showing the architecture of a voice assistant app.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de dados

  1. Através de um dispositivo de voz, o utilizador pede à aplicação assistente de voz para acender as luzes exteriores da casa.

  2. O aplicativo se conecta ao canal do Serviço de Bot de Fala de Linha Direta usando o SDK de Fala do Azure. Quando o reconhecimento de palavras-chave confirma determinadas palavras-chave, a Fala de Linha Direta transcreve a fala para texto e envia o texto para o aplicativo Serviço de Bot hospedado no Serviço de Aplicativo do Azure.

  3. O Serviço de Bot se conecta ao serviço de Compreensão de Idiomas (LUIS). LUIS determina a intenção da solicitação do usuário, TurnOnLight.

  4. O LUIS retorna a intenção ao Serviço de Bot.

  5. Se os dispositivos estiverem conectados ao Hub IoT do Azure, o Serviço de Bot retransmitirá a solicitação por meio do Hub IoT do Azure para acender as luzes externas. O Serviço de Bot usa a API do Hub IoT para enviar o comando para os dispositivos usando métodos diretos, atualizando a propriedade desejada do gêmeo do dispositivo ou enviando uma mensagem de nuvem para dispositivo.

    Se os dispositivos estiverem conectados a uma instalação de IoT de terceiros, o Serviço de Bot se conectará por meio da API de terceiros para enviar um comando aos dispositivos.

  6. O Serviço de Bot retorna os resultados do comando para o usuário gerando uma resposta. O serviço de conversão de texto em fala transforma a resposta em áudio e a passa de volta para o aplicativo de assistente de voz com Direct Line Speech.

  7. O Application Insights reúne telemetria de tempo de execução para desempenho de bots e desenvolvimento de uso.

Componentes

Contribuidores

Este artigo é mantido pela Microsoft. Foi originalmente escrito pelos seguintes contribuidores.

Autor principal:

Próximos passos