Controlar dispositivos IoT com um aplicativo de assistente de voz

Serviço de Bot da IA do Azure
Hub IoT do Azure
Serviços de IA do Azure
Fala de IA do Azure

Ideias de solução

Esse 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 diretrizes de preços, informe-nos fornecendo comentários do GitHub.

Essa ideia da solução descreve como criar interfaces de conversação de voz com dispositivos Internet das Coisas (IoT). Você pode combinar o Serviço de Fala do Azure, o Serviço de Reconhecimento Vocal (LUIS) e o Azure Bot Framework para criar interfaces naturais semelhantes a humanos que controlam dispositivos IoT por meio do Hub IoT do Azure.

Possíveis casos de uso

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

Arquitetura

Diagram showing the architecture of a voice assistant app.

Baixe um Arquivo Visio dessa arquitetura.

Fluxo de dados

  1. Por meio de um dispositivo de voz, o usuário pede ao aplicativo assistente de voz para ativar as luzes externas da casa.

  2. O aplicativo se conecta ao canal do Serviço de Bot de Fala de Linha Direta por meio do SDK de Fala do Azure. Quando o reconhecimento de palavra-chave confirma determinadas palavras-chave, a Fala de Linha Direta transcreve a fala em 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 Reconhecimento Vocal (LUIS). O LUIS determina a intenção da solicitação do usuário, TurnOnLight.

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

  5. Se os dispositivos estiverem conectados ao Hub IoT do Azure, o Serviço de Bot retransmite a solicitação por meio do Hub IoT do Azure para ativar as luzes externas. O Serviço de Bot usa a API do Hub IoT para enviar o comando aos dispositivos usando métodos diretos, atualizando a propriedade desejada do dispositivo gêmeo ou enviando uma mensagem de nuvem a 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 assistente de voz com Fala de Linha Direta.

  7. O Application Insights coleta a telemetria do runtime para ajudar o desenvolvimento com o desempenho e uso do bot.

Componentes

  • O Serviço de Bot fornece um ambiente integrado para o desenvolvimento de bots.
  • O Serviço de Fala oferece recursos de fala líderes do setor, como conversão de fala em texto, conversão de texto em fala, tradução de fala e reconhecimento de locutor.
  • O Serviço de Reconhecimento Vocal (LUIS) aplica inteligência de aprendizado de máquina personalizada ao texto de linguagem natural e conversacional para prever o significado e extrair informações relevantes.
  • O Hub IoT é um hub de mensagens de nuvem central para comunicações bidirecionais entre aplicativos IoT e dispositivos.
  • O Application Insights é um recurso do Azure Monitor que fornece gerenciamento extensível de desempenho de aplicativos (APM) e monitoramento de aplicativos Web ao vivo.

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Autor principal:

Próximas etapas