12. PRÁCTICAS DE CONTROL DE DISPOSITIVOS DOMÓTICOS
12.1 Escenario de integración de servicios
12.3.1 Creación de la habilidad
12.3.2 Desarrollo de la estructura básica de la función lambda
12.4 Encendido y apagado de luces por habitación
12.4.1 Creación de los feeds en Adafruit IO
12.4.2 Desarrollo del programa ESP8266
12.4.3 Creación del modelo de interacción
12.4.4 Desarrollo de la función lambda
12.4.5 Pruebas de la habilidad
12.5 Consulta de la temperatura
12.5.1 Creación del feed en Adafruit IO
12.5.2 Desarrollo del programa ESP8266
12.5.3 Creación del modelo de interacción
12.5.4 Desarrollo de la función lambda
12.5.5 Pruebas de la habilidad
12.6 Programación de la temperatura de la calefacción
12.6.1 Creación de los feeds en Adafruit IO
12.6.2 Desarrollo del programa ESP8266
12.6.3 Creación del modelo de interacción
12.6.4 Desarrollo de la función lambda
12.6.5 Pruebas de la habilidad
12.7 Programación de la hora de encendido de la calefacción
12.7.1 Creación del feed en Adafruit IO
12.7.2 Desarrollo del programa ESP8266
12.7.3 Creación del modelo de interacción
12.7.4 Desarrollo de la función lambda
12.7.5 Pruebas de la habilidad
ANEXO. FUNDAMENTOS DE JAVASCRIPT
Unidad 1
INTRODUCCIÓN
Alexa es un asistente virtual que utiliza una interfaz de voz tanto para recibir peticiones del usuario, como para responderle. Dichas respuestas se darán dentro del contexto de una conversación en la que se simula estar hablando con otra persona. Por eso, antes de empezar a desarrollar aplicaciones para este asistente debe conocer qué son las interfaces de usuario basadas en la voz, y los conceptos básicos que gobiernan los sistemas capaces de mantener conversaciones de forma natural. Puesto que nos centraremos en la utilidad práctica de estas aplicaciones en el ámbito IoT (Internet of Things: Internet de las cosas), también se darán algunas nociones básicas de qué hay detrás de esta tecnología y los motivos que hacen que esté cada vez más presente en nuestras vidas.
1.1 INTERFACES DE VOZ
Hasta no hace muchos años, la interacción hombre-máquina se realizaba con un teclado y una pantalla. De la mano de los móviles llegaron las interfaces táctiles, que aumentaron drásticamente su facilidad de uso. El último paso han sido las interfaces de voz, mediante las que ya no es necesario usar las manos, puesto que la comunicación se realiza hablando con la aplicación.
A este tipo de interfaces capaces de permitir la interacción por medio de la voz, se las conoce por su acrónimo inglés VUI (Voice User Interface: interfaz de usuario de voz). A los dispositivos que las incorporan se les denomina VCD (Voice Command Device: dispositivo de comandos de voz). A nivel empresarial, las primeras aplicaciones que utilizaron esta tecnología fueron los sistemas IVR (Interactive Voice Response: respuesta de voz interactiva), desarrollados en la década de 1980. Son los que hoy en día le atienden cuando llama a los centros de atención de clientes de muchas compañías para solicitar información o realizar determinadas gestiones, antes de pasarle con un agente humano (si fuera necesario). A nivel de usuario, las aplicaciones que disponían de este tipo de interfaces aparecieron más tarde, siendo las primeras las de marcación de teléfonos activada por voz.
La gran aceptación y consecuente expansión de las interfaces de voz se debe a su independencia del hablante, es decir, a que son capaces de entender lo que dice cualquier persona, sea cual sea su idioma, su acento o las particularidades de su voz. Además, con este tipo de interfaces se puede hacer prácticamente lo mismo que con cualquier navegador: buscar información, solicitar que suene su música favorita, administrar calendarios y citas, hacer pedidos, jugar, etc. Pero donde hay un sector en el que cobra especial relevancia es en el de IoT y, en concreto, en el ámbito domótico, que es precisamente en el que se centra este libro.
Las ventajas de uso de las interfaces de voz son la velocidad de entrada (es más rápido hablar que escribir), así como su capacidad para ser incorporadas a dispositivos que no requieran pantalla, pudiendo utilizarse en relojes o pulseras de tamaño reducido. Además, permiten su uso a personas con capacidades visuales o motoras disminuidas. Incluso, puede resultar imprescindible en el desarrollo actividades profesionales que requieran trabajar con ciertas aplicaciones