Para todos los usuarios recién llegados al fascinante mundo de los asistentes virtuales, es posible que en los primeros días de uso todavía resulte muy prematuro aventurarse a crear habilidades de Alexa sin conocer muy bien el potencial de estos dispositivos.
Sin embargo, para aquellos que hayan estado barajando algunas ideas ya basadas en la experiencia y con las que estos dispositivos pudieran hacerles la vida más fácil, desarrollar skills para Alexa no es tan complejo como parece si se conoce la idea a grandes rasgos. Este avance de la tecnología, que son los asistentes inteligentes, ofrecen muchas posibilidades de personalización, es por ello que vamos a contarte cómo crear skills de Alexa. ¡Toma nota!
Crear habilidades de Alexa puede estar al alcance de cualquiera
El concepto de “Alexa” no es algo nuevo en la tecnología, dado que en cierto grado se considera una rama tecnológica que Amazon ha estado incubando durante más de una década. A la hora de adentrarnos en el terreno del desarrollo, es importante saber que Amazon provee una serie de herramientas online que facilitan la labor en gran medida para programar skills de Alexa sin necesidad de tener muchos conocimientos de desarrollo.
En primer lugar, es necesario adquirir el llamado “Alexa Skill Kit”, también llamado ASK, el cual ofrece una colección de API y herramientas que simplifican para nosotros una parte del trabajo duro de programación. Este se puede descargar de la página de desarrolladores de Amazon (developer.amazon.com). Después de este primer paso vamos a analizar todos los ingredientes que un buen cocinero de skills requiere para su correcto desempeño.
Aprende a crear una skill para Alexa
En primer lugar, Amazon nos ofrece un entorno de desarrollo un tanto peculiar basado principalmente en una interfaz visual que simplificará bastante todo el proceso de organización. Todo el desarrollo se ejecuta a través de la famosa plataforma AWS (Amazon Web Service), la cual podría decirse que es de momento la base de operaciones de todos los sistemas tecnológicos de Amazon.
Por eso el primer paso es crearse una cuenta en Amazon Developers Services (ADS) para poder crear lo que llamaremos un “modelo de interacción” que detallaremos más adelante.
Primera parte para programar skills de Alexa: los modelos de interacción
Una vez hemos pasado por el proceso de creación de cuenta, con el Alexa Skills Kit simplemente seleccionamos “Crear una Skill” y le ponemos un nombre. En este mismo paso, también podremos definir el idioma de la Skill.
A continuación, ya estamos preparados para crear el primer modelo de interacción. El modelo, de manera resumida, es la entidad que representará la Skill en cuestión, por lo que debe incorporar varios elementos: nombre de invocación, declaraciones (utterances), propósitos (intents), etc.
Una vez elegido un nombre para la invocación, tenemos que definir los propósitos de dicha interacción. Esto es algo muy particular de la Skill que estemos desarrollando. Por ejemplo, si queremos hacer un buscador de dinosaurios, podemos plantear:
- Un propósito para ejecutar una acción, el cual recogerá el nombre del dinosaurio en cuestión.
- Otro propósito para cancelar la acción llevada a cabo.
- Otro para devolver algún resultado nulo, en caso de no encontrar dinosaurios.
- Uno que sirva para ayudar al usuario en caso de duda.
Es importante plantear todos los escenarios como posibles estados en los que la aplicación pueda acabar en función de nuestras intenciones.
Segunda parte: Eligiendo los puntos de destino (Endpoints)
En este paso intermedio tenemos que decidir si queremos que nuestro modelo de interacción trabaje con un servidor de nuestra propiedad donde hayamos implementado nuestra lógica, o si preferimos usar servicios de Amazon como AWS Lambda, según veremos en el último paso.
Si optamos por esta segunda opción, en este paso tenemos que seleccionar cuál va a ser el punto de destino (endpoint), es decir, a dónde debe dirigirse Alexa cuando “invoquemos” el comando en cuestión. Yendo al apartado de Endpoints, simplemente tendremos que seleccionar una función AWS Lambda y ya estaremos preparados para el último punto.
Última parte para desarrollar skills para Alexa
Una vez tenemos el modelo creado, la última parte es sin duda la más compleja y requiere que busquemos algunos ejemplos de código online. En este apartado necesitaremos crear la función en AWS Lambda, servicio que permite ejecutar código remoto muy parecido al conocido Google Script. Por lo tanto, este es el único punto donde podríamos necesitar saber de programación o bien tirar de ejemplos que ya existen y adaptarlos a nuestra idea.
En este código tomaremos como referencia el modelo anteriormente creado y haremos realidad sus “propósitos” (por ejemplo, buscando en Wikipedia información sobre dinosaurios).
Sería demasiado largo explicar este proceso, pero teniendo la idea en mente y siguiendo estas tres partes, el concepto general queda lo suficientemente visible para decidir si puede resultarnos de interés en última instancia.