Alexa. Desarrollo de aplicaciones IoT para Arduino y ESP8266. Tomás Domínguez Mínguez

Читать онлайн.
Название Alexa. Desarrollo de aplicaciones IoT para Arduino y ESP8266
Автор произведения Tomás Domínguez Mínguez
Жанр Математика
Серия
Издательство Математика
Год выпуска 0
isbn 9788426732910



Скачать книгу

de Alexa o en cualquier otro que usted conozca. Por simplicidad se utilizará el de Alexa y, en concreto, la opción que le permita el desarrollo de código JavaScript, es decir, que pueda ejecutarse en Node.js: “Alexa-Hosted (Node.js)”.

Illustration

      De forma muy simplificada, Node.js es un entorno de ejecución de código JavaScript de lado de servidor (a diferencia del empleado en los navegadores web, en el lado cliente).

Illustration

      En realidad, cuando usa la opción “Alexa-Hosted (***)”, está usando AWS Lambda para alojar y ejecutar el código de la habilidad. La ventaja que proporciona es que no tendrá que gestionar dicho servicio desde su propia consola (diferente de la de Alexa), por lo que se gana en agilidad de desarrollo (aunque se pierde en flexibilidad).

      Solo podrá trabajar con JavaScript o Python, y estará limitado a los recursos proporcionados de forma gratuita (AWS Free Tier). En cualquier caso, se ha elegido esta opción porque para las prácticas desarrolladas a lo largo del libro esto no supondrá ninguna limitación, además de ser gratuito.

Illustration

      Más adelante se explicarán las diferentes formas de alojar el código de una habilidad.

      Pulse el botón “Create skill” que hay en la parte superior derecha de la ventana.

Illustration Illustration

      Debajo del botón “Create skill” puede ver las opciones con las que se creará la habilidad: de tipo personalizada, alojada en el propio servicio Alexa y, en este caso, en servidores de la región N. Virginia. Una región es una zona geográfica donde se ubican físicamente los servidores administrados por Amazon. Si pulsara el desplegable de esta última opción, podría elegir otra diferente.

      Se mostrará una nueva ventana en la que tendrá que elegir la plantilla a partir de la que quiere empezar a desarrollar su propia habilidad. Va a usar la que está seleccionada por defecto (“Hellow World”), por lo que solo tendrá que pulsar el botón “Continue with template”.

Illustration

      Hecho esto, se encontrará finalmente la pantalla desde la que podrá empezar a crear y configurar todos los componentes de su habilidad.

Illustration Illustration

      A la derecha vera una serie de mensajes informativos que le indican (de arriba abajo) que esta habilidad ya podría utilizarse, un tutorial en el que le enseñan cómo está construida y un aviso para que cambie el nombre con el que quiera invocarla. Pulse en el icono con el aspa para eliminarlos.

      Antes de empezar a desarrollar el modelo de interacción de una habilidad, conviene conocer las posibilidades que le ofrece la consola. En primer lugar, observe que el encabezado tiene ahora una serie de pestañas. En ellas se agrupan las opciones de configuración que hay disponibles en las distintas fases del desarrollo de la habilidad.

Illustration

      El contenido de cada una de ellas es el siguiente:

      • “Build.” Aquí es donde creará el modelo de interacción de su habilidad. Las opciones que aparezcan serán diferentes dependiendo del tipo de habilidad elegida, que en su caso ha sido la personalizada. Es la pestaña seleccionada por defecto cuando entre en una habilidad.

      • “Code.” Al haber elegido la opción en la que el código se aloja en el propio servicio, desde esta pestaña podrá editar y desplegar el código JavaScript de su habilidad.

      • “Test.” Contiene un simulador de Alexa que le permitirá probar el comportamiento de la habilidad.

      • “Distribution.” Muestra una vista previa de cómo aparecería su habilidad en la tienda de habilidades. No la va a utilizar porque las que desarrolle serán de carácter privado.

      • “Certification.” Permite realizar los chequeos previos necesarios para publicar una aplicación (habilidad). Por el mismo motivo indicado el punto anterior, tampoco la usará.

      • “Analytics.” Presenta las métricas de uso de su habilidad, así como el número de sesiones abiertas, el número de clientes únicos (en su caso uno, al ser una habilidad privada), el número de intenciones invocadas, etc.

      Además, en la parte izquierda de dichas pestañas podrá ver el nombre de la habilidad y un enlace (“Your Skills”) que le llevará a la página inicial de la consola, aquella en la que muestra la lista de habilidades que tenga creadas. Púlselo.

Illustration

      Como puede apreciar en la imagen inferior, ahora aparece la habilidad que acaba de crear, en la que, además del nombre, se indica el idioma (español de España), la última vez que se ha modificado (en este caso cuando se creó) y su estado (en desarrollo).

Illustration

      A la derecha hay un menú desplegable con las siguientes opciones:

      • “Measure.” Le llevará a la pestaña “Analitycs” de la habilidad.

      • “Edit.” Irá a la pestaña “Build” de la habilidad.

      • “Delete.” Borra la habilidad.

Illustration

      Pulse en el nombre de la habilidad “Máquina de café” para volver a la pantalla en la que se encontraba anteriormente. Ahora observe que, justo debajo del enlace “Your Skills”, se encuentra el idioma de la habilidad (el español, tal como indicó al crearla). Si pulsa sobre él, podrá añadir nuevos idiomas (una misma habilidad podría llegar a usarse en varios idiomas). Para ello, deberá seleccionar la opción “Language Settings” del menú desplegable.

Illustration

      Aparecerá una ventana con todos los idiomas en los que puede ser usada la habilidad (ahora solo el español). Pulsando en el enlace “Add new language” se desplegarán todos aquellos que podrían añadirse. Solo tiene que ir seleccionándolos uno a uno. En caso de error, podrá eliminarlos con el enlace “Remove” que hay a su derecha.

Illustration

      Situados debajo del campo con el idioma se encuentran los grupos de opciones de configuración de la habilidad.

Illustration

      De todos ellos, únicamente trabajará con las opciones del grupo “CUSTOM”, ya que son las que le permitirán establecer el modelo de interacción de una habilidad.

      En el siguiente grupo (“MODELS”) podrá añadir o borrar un modelo de interacción a esta habilidad. Al haberla