Conexión de un bot a Alexa
SE APLICA A: SDK v4
Puedes configurar el bot para comunicarte con personas a través de una aptitud personalizada de Alexa. En este artículo se describe cómo crear una aptitud de Alexa mediante alexa Developer Console, conectar el bot a tu aptitud de Alexa en Azure y probar el bot en Alexa.
Requisitos previos
- Suscripción a Azure. Si aún no tiene una, cree una cuenta gratuita antes de empezar.
- Un bot publicado en Azure que quieres conectar a Alexa.
- Una cuenta de Amazon.
Importante
El bot debe usar el SDK Bot Framework versión 4.8 o posterior. Si tienes un bot existente, es posible que tengas que actualizar la versión del SDK y republicar tu bot.
Creación de una aptitud de Alexa
Inicia sesión en la consola para desarrolladores de Alexa y selecciona Crear aptitud.
En la página siguiente:
- Escribe un nombre para tu nueva aptitud.
- Asegúrate de que Elegir un modelo para agregar a la aptitud esté establecido en Personalizado.
- Asegúrate de que Elegir un método para hospedar los recursos de back-end de la aptitud esté establecido en Aprovisionamiento propio.
- Selecciona Crear aptitud.
En la página siguiente:
- Asegúrate de que Elegir una plantilla está establecido en Empezar de cero
- Seleccione Choose(Elegir).
En el panel de aptitudes en Modelo de interacción, selecciona Editor JSON.
En el editor JSON:
Reemplaza los contenidos existentes por el siguiente JSON.
{ "interactionModel": { "languageModel": { "invocationName": "<your-skill-invocation-name>", "intents": [ { "name": "GetUserIntent", "slots": [ { "name": "phrase", "type": "phrase" } ], "samples": [ "{phrase}" ] }, { "name": "AMAZON.StopIntent", "samples": [] } ], "types": [ { "name": "phrase", "values": [ { "name": { "value": "<example-phrase>" } }, { "name": { "value": "<example-phrase>" } }, { "name": { "value": "<example-phrase>" } } ] } ] } } }
Para
invocationName
, cambia <your-skill-invocation-name> al nombre que usarán los usuarios para invocar la aptitud en Alexa. Por ejemplo, si el nombre de invocación de la aptitud era "asistente del adaptador", un usuario podría decir "Alexa, inicia el asistente del adaptador" para iniciar la aptitud.En la matriz
values
detypes
, reemplaza las tres instancias de<example-phrase>
por frases que los usuarios pueden decir para desencadenar la aptitud. Por ejemplo, si un usuario dice "Alexa, pídele al asistente del adaptador que me dé más información sobre el adaptador de Alexa", la frase de ejemplo podría ser "dame detalles del adaptador de Alexa".
Selecciona Guardar modelo y, después, Compilar modelo. Esto actualiza la configuración de tu aptitud en Alexa.
Configura tu bot en Azure
Para completar este paso, necesitarás tu id. de aptitud de Alexa. Obtén el identificador o la dirección URL en el portal de Alexa o ve a la consola para desarrolladores de Alexa y haz clic en Copiar identificador de aptitud. El identificador de aptitud de Alexa debe ser un valor parecido a "amzn1.ask.skill.<some-guid>".
- Abra Azure Portal.
- Abra la hoja de recursos del bot de Azure para el bot.
- Abre Canales y selecciona Alexa.
- En Configuración del canal de Alexa, escribe la información que copiaste en el paso anterior.
- En Escribir identificador de aptitud, escribe el identificador de aptitud de Alexa que copiaste de la consola para desarrolladores de Alexa.
- Seleccione Aplicar.
- Copia elidentificador URI del punto de conexión de servicio de Alexa generado por Azure.
Actualización del registro del bot de Alexa
Inicia sesión en la consola para desarrolladores de Alexa.
Busca y abre la página de configuración de la aptitud.
Seleccione el punto de conexión.
En Tipo de punto de conexión de servicio, selecciona HTTPS.
En Región predeterminada:
- Escribe el identificador URI del punto de conexión de servicio de Alexa que copiaste de Azure Portal.
- En el menú desplegable, elige Mi punto de conexión de desarrollo es un subdominio de un dominio que tiene un certificado comodín procedente de una autoridad de certificado.
Selecciona Guardar puntos de conexión.
Prueba y publica tu aptitud
Si posees un dispositivo Alexa, puedes probar tu aptitud antes de publicarla.
Consulta la documentación para desarrolladores de Alexa Skills Kit para conocer las aptitudes del modelo de voz personalizados para obtener información sobre cómo probar y publicar tu aptitud en tu plataforma.
Información adicional
Para obtener más información sobre las aptitudes de Alexa, consulta la documentación para desarrolladores de Amazon:
- ¿Qué es Alexa Skills Kit?
- Aptitudes del modelo de voz personalizada
- Esquemas de objetos de Alexa Skills Kit
Autenticación de usuario en Alexa
La autenticación de usuario en Alexa se realiza mediante la configuración y el uso de la vinculación de cuentas en la aptitud de Alexa. Para obtener más información, consulta Entender la vinculación de cuentas para aptitudes de Alexa. Puedes requerir la vinculación de cuentas cuando el usuario habilita la aptitud o requerirla como parte de un flujo de conversación.
Si agregas la autenticación de usuario como parte de la conversación:
Adjunte una tarjeta de inicio de sesión en la actividad saliente. Esto se convertirá en una tarjeta Alexa LinkAccount que pide al usuario que inicie sesión con la aplicación Alexa.
Si el usuario vincula correctamente su cuenta a la aplicación, un token estará disponible en las solicitudes posteriores de los datos del canal.
Pasos siguientes
- Para obtener información sobre cómo compilar bots, consulte Cómo funcionan los bots y el inicio rápido Creación de un bot con Bot Framework SDK.
- Para más información sobre la implementación de bots, consulta Tutorial: Aprovisionamiento de un bot en Azure y Tutorial: Publicación de un bot básico.
- Para obtener información sobre la compatibilidad de canales en el servicio de conector del bot, consulta Conectar un bot a canales.
- Para obtener más información sobre los esquemas de Bot Framework, consulta el esquema de actividad de Bot Framework y el esquema de tarjetas de Bot Framework.