#Tutorial – Como crear un #Amazon #AlexaSkill con Visual Studio 2017, C# y #Azure (2 de N)

Buenas!

Pues bien, en el post de hoy veremos cómo crear un Azure API App, que luego utilizaremos como backend del Alexa Skill que hemos creado en el post anterior.

Tommy describe de una forma excelente como crear un website y prepararlo para trabajar con Alexa Skill en este post (link). Este proyecto utiliza el NuGet Package Alexa Skills Kit.Net para el procesado de los mensajes con Amazon Alexa.

Yo he creado una plantilla para Visual Studio 2017 que se puede descargar desde aquí (link) y que nos permite crear un proyecto ya configurado para trabajar con Alexa Skills.

Nota: la forma rápida de importar esta plantilla es copiar el archivo [WebApi Alexa Skill.zip] al directorio de proyectos de Visual Studio 2017. Usualmente en [%\Documents\Visual Studio 2017\Templates\ProjectTemplates\Visual C#]

Creamos un nuevo proyecto del tipo importado.

I1.jpg

Compilamos el proyecto para refrescar las referencias de NuGet, actualizamos los NuGet packages y ya podemos comenzar a trabajar.

i2.jpg

Los 2 elementos principales a trabajar son

  • Controllers / AlexaController.cs. Un ApiController standard que es el encargado de procesar las peticiones desde Alexa. Tiene 2 puntos de entrada
    • HTTP GET utilizado para pruebas
    • HTTP POST procesa las peticiones de Alexa utilizando [AlexaResponseAsync]
  • Alexa / AlexaResponseAsync.cs. Esta clase es la encargada de procesar los eventos de Alexa.

Es en esta ultima clase donde aplicaremos la mayoría de los cambios. Por ejemplo

  • Línea 7, cambiamos el mensaje que se retorna cuando se activa el Skill
  • Líneas 10 a 22, el mensaje que se retorna en cada Intent, retorna el nombre del Intent y si hay Slots, los slots utilizados en el mismo.

El código resultante es similar al siguiente

Hasta aquí la creación del proyecto web. En el próximo post, veremos como publicar este website y conectarlo con la Alexa Skill.

Happy Coding!

Saludos @ Toronto

El Bruno

References

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s