Un poco de historia
Hace tiempo que me viene picando la curiosidad de los asistentes virtuales y las interfaces de voz. En julio, cuando salió el Google Home Mini en España, me compré uno y lo tengo en el salón conectado al Chromecast y a dos enchufes wifi para regular algunas luces.
Luego en theAntiEvent, en septiembre, propuse una charla en plan marrón para Jordi, porque quería que me hablara de cómo construir aplicaciones para el asistente de Google. Elegí a Jordi porque tiene un juego de scape room para el asistente de Google muy chulo, RIC-Escape, que os recomiendo. Mi propuesta se fusionó con la de Jon, que nos contó cómo usa el asistente en Chrome para temas de usabilidad y me encantó. Desgraciadamente, no hay vídeo.
La historia continúa en la Commit Conf 2018 donde Iván dio una charla sobre cómo había programado un skill, que es como se llaman estas apps en el asistente de Amazon, para Alexa. Ahí decidí que tenía que hacer alguna cosa sencilla para ir aprendiendo y conocer el ecosistema. Elegí la plataforma de Alexa porque Amazon tenía una promo para desarrolladores de skills en español, acababan de sacarlo, y podías llegar a ganar un Amazon Dot por publicar el tuyo.
Pensando en una idea simple se me ocurrió hacer algo relacionado con estrenos de cine para saber qué se estrena en determinado momento, como esta semana, la próxima o este mes. Eso Alexa no lo tiene por defecto aunque sí te dice pelis que hay en cartelera en este momento.
Tomando esa idea básica me puse al lío.
¿Por dónde empiezo?
Una vez tuve la idea del skill que quería hacer me puse a buscar sitios de referencia del ecosistema. Empecé por la charla de Iván e identifiqué como sitios básicos los siguientes:
- El site principal de Amazon para los developers de Alexa en español: https://developer.amazon.com/es/alexa. Desde ahí se puede acceder a toda la doc e info básica para empezar
- La consola del Alexa Skills Kit como punto de partida para crear un skill nuevo y gestionar los existentes: https://developer.amazon.com/alexa/console/ask
- El site con doc: https://developer.amazon.com/es/documentation Aquí de primeras destacar:
- La doc para construir el skill en sí mismo https://developer.amazon.com/es/docs/ask-overviews/build-skills-with-the-alexa-skills-kit.html
- La doc base para entender un custom skill, que es mi caso: https://developer.amazon.com/es/docs/custom-skills/understanding-custom-skills.html. Hay distintos tipos que puedes ver aquí: https://developer.amazon.com/es/docs/ask-overviews/understanding-the-different-types-of-skills.html#skill-models
- Y la doc para el SDK en Java, lo hay para Nodejs y Python también: https://developer.amazon.com/es/docs/sdk/alexa-skills-kit-sdk-for-java.html
Y con esto para post de introducción y empezar creo que es suficiente. En el siguiente post contaré cómo construir el skill usando la consola de Alexa. Eso sería como construir la parte cliente de nuestra aplicación, que luego, en otro post, conectaremos a una función en AWS Lambda que sería como la parte servidora.
Os dejo también el enlace a la store de Alexa de mi skill "Estrenos de cine", lo podéis probar y darme todo tipo de feedback :D Y el repo de github donde voy subiendo cosas.
Enjoy :)