Control de dispositivos IoT mediante un asistente de voz

Servicio de bots
Voz
IoT Hub
Language Understanding

Idea de solución Solution Idea

Si desea que ampliemos este artículo con más información, detalles de la implementación, guía de precios o ejemplos de código, háganoslo saber en GitHub Feedback (Comentarios de GitHub).If you'd like to see us expand this article with more information, implementation details, pricing guidance, or code examples, let us know with GitHub Feedback!

Cree sencillas interfaces de conversación con todos los dispositivos a los que se pueda acceder desde Internet (desde un televisor o frigorífico conectados hasta los dispositivos de una central eléctrica conectada).Create seamless conversational interfaces with all of your internet-accessible devices-from your connected television or fridge to devices in a connected power plant. Mediante la combinación del servicio de voz de Azure, Language Understanding Intelligent Service (LUIS) y Azure Bot Framework, los desarrolladores pueden crear interfaces de conversación naturales que se asemejan a las humanas para controlar dispositivos inteligentes mediante Azure IoT Hub.By combining Azure Speech Service, Language Understanding Service (LUIS) and Azure Bot Framework, developers can create natural, human-like conversational interfaces to control smart devices using Azure IoT Hub.

ArchitectureArchitecture

Diagrama de la arquitectura

Flujo de datosData flow

  1. Mediante el uso de voz, el usuario pide a la aplicación del asistente para voz que active las luces exteriores de la casa.Using voice, the user asks the voice assistant app to turn on the exterior house lights.
  2. Con el SDK de voz, la aplicación se conecta a Direct Line Speech.Using the Speech SDK, the app connects to Direct Line Speech. Si en la comprobación de las palabras clave estas se confirman, la voz se transcribe a texto y se envía a Bot Service.If keywords are confirmed by Keyword Verification, the speech is transcribed to text and sent to the Bot Service.
  3. Bot Service se conecta al servicio Language Understanding Intelligent Service (LUIS).The Bot Service connects to Language Understanding service (LUIS). LUIS permite que una aplicación comprenda lo que una persona quiere en sus propias palabras.LUIS allows an application to understand what a person wants in their own words. La intención de la solicitud del usuario (ejemplo: TurnOnLight) se devuelve a Bot Service.The intent of the user's request (example: TurnOnLight) is returned to the Bot Service.
  4. La solicitud se retransmite al dispositivo.The request is relayed to the device.
    • Si el dispositivo está conectado a Azure IoT Hub, Bot Service se conecta a Service API de Azure IoT Hub y envía el comando al dispositivo mediante un método directo, una actualización de la propiedad deseada del dispositivo gemelo o un mensaje de la nube al dispositivo.If the device is connected to Azure IoT Hub, Bot Service connects to Azure IoT Hub Service API and sends the command to the device using either a Direct Method, an update to the device twin's Desired Property, or a Cloud to Device message.
    • Si el dispositivo está conectado a una nube de IoT de terceros, Bot Service se conecta a la API de servicio de terceros y envía un comando al dispositivo.If the device is connected to a third party IoT cloud, Bot Service connects to the third-party service API and sends a command to the device.
  5. El bot devuelve al usuario los resultados del comando mediante la generación de una respuesta que incluye el texto que se va a decir.The Bot returns the results of the command to the user by generating a response that includes the text to speak.
  6. La respuesta se convierte en audio mediante el servicio de conversión de texto a voz y se vuelve a pasar a la aplicación del asistente de voz mediante Direct Line Speech.The response is turned into audio using the Text-to-speech service and passed back to the voice assistant app by Direct Line Speech.
  7. Application Insights recopila datos de telemetría en tiempo de ejecución para ayudar en el desarrollo con respecto al uso y el rendimiento del bot.Application Insights gathers runtime telemetry to help development with bot performance and usage
  8. Azure App Service hospeda la aplicación de Bot Service.Azure App Service hosts the Bot Service application.

ComponentesComponents

  1. Documentación de asistentes de vozVoice assistants documentation
  2. Tutorial: Habilitación del bot con voz mediante el SDK de vozTutorial: Voice-enable your bot using the Speech SDK
  3. ¿Qué es Direct Line Speech?What is Direct Line Speech
  4. Azure Bot ServiceAzure Bot Service
  5. Speech to TextSpeech to Text
  6. Text to SpeechText to Speech
  7. Palabras clave personalizadasCustom Keywords
  8. Language Understanding Intelligent Service (LUIS)Language Understanding Service (LUIS)
  9. Azure IoT HubAzure IoT Hub

Pasos siguientesNext steps