Control de dispositivos IoT con una aplicación de asistente para voz

Servicio de Bot de Azure AI
Azure IoT Hub
Servicios de Azure AI
Voz de Azure AI

Ideas de solución

Este artículo es una idea de solución. Si te gustaría que ampliemos este artículo con más información, como posibles casos de uso, servicios alternativos, consideraciones de implementación o una guía de precios, comunícalo a través de los Comentarios de GitHub.

En esta idea de solución se describe cómo crear interfaces conversacionales de voz con dispositivos de Internet de las cosas (IoT). Puede combinar Azure Speech Service, Language Understanding Service (LUIS) y Azure Bot Framework para crear interfaces naturales similares a las humanas que controlan los dispositivos IoT a través de Azure IoT Hub.

Posibles casos de uso

  • Controlar dispositivos domésticos accesibles desde Internet, como televisores y neveras por comando de voz.
  • Use voz y lenguaje natural para notificar problemas con dispositivos conectados a IoT.

Architecture

Diagram showing the architecture of a voice assistant app.

Descargue un archivo Visio de esta arquitectura.

Flujo de datos

  1. Mediante un dispositivo de voz, el usuario pide a la aplicación del asistente para voz que active las luces exteriores de la casa.

  2. La aplicación se conecta al canal de Bot Service Direct Line Speech mediante el SDK de Voz de Azure. Cuando el reconocimiento de palabras clave confirma ciertas palabras clave, Direct Line Speech transcribe la conversión de voz en texto y envía el texto a la aplicación Bot Service hospedada en Azure App Service.

  3. Bot Service se conecta al servicio Language Understanding Intelligent Service (LUIS). LUIS determina la intención de la solicitud del usuario, TurnOnLight.

  4. LUIS devuelve la intención al Bot Service.

  5. Si los dispositivos están conectados a Azure IoT Hub, Bot Service retransmite la solicitud a través de Azure IoT Hub para encender las luces exteriores. Bot Service usa la API de IoT Hub para enviar el comando a los dispositivos mediante métodos directos, actualizar la propiedad deseada del dispositivo gemelo o enviar un mensaje de nube al dispositivo.

    Si los dispositivos están conectados a una instalación de IoT de terceros, Bot Service se conecta a través de la API de terceros para enviar un comando a los dispositivos.

  6. Bot Service devuelve al usuario los resultados del comando mediante la generación de una respuesta. El servicio de texto a voz convierte la respuesta en audio y la pasa de nuevo a la aplicación del asistente de voz con Direct Line Speech.

  7. Application Insights recopila datos de telemetría en tiempo de ejecución para el uso y el rendimiento del bot.

Componentes

  • Bot Service proporciona un entorno integrado para el desarrollo de bots.
  • Speech Service ofrece funcionalidades de voz líderes del sector, como conversión de voz en texto, texto a voz, traducción de voz y reconocimiento del hablante.
  • Language Understanding Service (LUIS) aplica inteligencia de aprendizaje automático personalizado a una conversación o un texto de lenguaje natural para predecir el significado y extraer información pertinente.
  • IoT Hub actúa como un centro de mensajes en la nube central para la comunicación bidireccional entre aplicaciones y dispositivos IoT.
  • Application Insights es una característica de Azure Monitor que proporciona administración extensible del rendimiento de aplicaciones y supervisión para aplicaciones web en vivo.

Colaboradores

Microsoft mantiene este artículo. Originalmente lo escribieron los siguientes colaboradores.

Autor principal:

Pasos siguientes