Mi primera habilidad
Para iniciarnos en el mundo de las habilidades en Ainhoa vamos a crear un sencillo ejemplo de habilidad de diálogo para hacernos una idea del potencial que nos ofrece esta herramienta.
La idea principal de la habilidad que vamos a implementar es identificar una intención por parte del usuario y realizarle una sencilla pregunta para posteriormente actuar en consecuencia según su respuesta.
Para usar un ejemplo un poco friki 😉, identificaremos si el usuario esta preguntando por Matrix, y si es así, le proponemos que escoga entre la pastilla roja 🔴 o azul 🔵.
Crear la habilidad
Lo primero que debemos hacer es crear la habilidad. Proporcionaremos los siguientes datos en la ventana de creación:
Campo | Descripción | Valor |
---|---|---|
Título | Nombre de la habilidad. Preferiblemente en minúsculas y sin espacios. | matrix_pills |
Descripción | Breve descripción de la habilidad. Debe ser proporcionada en cada uno de los idiomas soportados. | Usa esta función cuando el usuario quiera saber que es Matrix o quiera entrar en Matrix. |
Tipo | Tipo de habilidad. Búsqueda o diálogo. | Diálogo |
Idiomas | Lista de idiomas soportados por la habilidad. | Inglés y español |
Etiquetas | Lista de etiquetas relacionadas con la habilidad. | |
Modo de acceso | Selecciona el modo de acceso a la habilidad. Acceso público o lo miembros. | Acceso público |
Miembros | Lista de miembros que tienen acceso a la habilidad y sus privilegios asociados. |
Podemos ver mas información de como crear una habilidad en éste enlace: Como crear una habilidad.
Configurar las intenciones
Ahora que tenemos creada nuestra habilidad debemos indicar como identificar la intención del usuario. En este caso, la intención es Matrix y la indentificaremos si el usuario pregunta qué es Matrix o quiere entrar en Matrix.
Para ello iremos a la tarjeta de Intenciones de arranque en la barra lateral y agregaremos algunas frases que pueda escribir el usuario y que podremos asociar con nuestra intención. Cuantas mas frases diferentes agregemos mejor podrá nuestro bot identificar la intención. Debemos proporcionar frases en todos los idiomas que tengamos habilitados.
En nuestro caso hemos agregado las siguientes intenciones:
Tienes más información sobre la barra lateral en el siguiente enlace: Barra lateral.
También vamos a agregar como intenciones las posibles respuestas que pueda darnos el usuario. En este caso las opciones son Rojo y Azul. Vamos a la pestaña Intenciones y agregamos dos nuevas intenciones con valores en los diferentes idiomas soportados, como podemos ver a continuación:
Tienes mas información sobre la pestaña de intenciones en el siguiente enlace: Intenciones.
Definir los pasos
Ahora que tenemos creadas las intenciones podemos empezar a definir nuestra conversación agregando los pasos que necesitemos. En este ejemplo, lo que queremos hacer es, una vez identificada la intención de saber más sobre Matrix por parte del usuario, hacerle una pregunta para que escoga qué pastilla quiere y luego mostrar un mensaje según la que haya elegido.
Por tanto necesitaremos los siguientes pasos:
- Enviar un mensaje de bienvenida al usuario para que sepa que hemos detectado sus ganas de saber más sobre Matrix.
- Preguntar que pastilla quiere elegir.
- Proporcionar una respuesta según su elección.
Toda la información sobre como crear los diferentes pasos está en el siguiente enlace: Pasos.
Agregaremos dichos pasos en la pestaña Conversación de la siguiente manera:
1. Mensaje de bienvenida
Creamos un paso de tipo Decir con nuestro mensaje de bienvenida, no proporcionaremos ninguna condición para que se ejecute siempre y seleccionaremos que el siguiente paso es Continuar. Esto permitirá al flujo pasar al siguiente paso.
2. Hacer la pregunta
A continuación le hacemos la pregunta al usuario para que escoga la opción que quiera. Esto lo haremos con un paso Preguntar, no establecemos ninguna condición para que se ejecute siempre.
Proporcionaremos el texto de la pregunta en los diferentes idiomas y seleccionamos como posibles opciones de respuesta las dos intenciones que agregamos, Roja o Azul.
Asignamos la respuesta en una entidad que llamaremos pill. Y por último estableceremos como siguiente paso en Continuar para seguir con el flujo.
El usuario podrá seleccionar una de las dos repuestas posibles, Roja o Azul, pero también podrá escribir la respuesta directamente en el chat. Si la respuesta que proporciona el usuario no coincide con ninguna de las intenciones que hemos definido (#red o #blue), la habilidad mostrará un mensaje diciendo que no ha entendido la respuesta del usuario.
3. Mensaje de respuesta
Por último, debemos comprobar la respuesta del usuario y mostraremos un mensaje diferente según la respuesta elegida. Para hacer esto podemos crear dos pasos diferentes, uno para la respuesta si la elección es Roja y otro para Azul.
Utilizaremos el campo condición para identificar la opción seleccionada y mostrar un mensaje u otro. En este caso, como previamente agregamos intenciones para las posibles respuestas del usuario, crearemos un paso con la condición #red
, el cual mostrará el mensaje que queramos cuando el usuario haga seleccionado la opcion Roja. Y utilizaremos la condición not #red
para responder cuando el usuario haya seleccionado la opción de Azul.
Escribimos el texto que deseamos mostrar en cada una de las opciones y marcamos como siguiente paso Finalizar para acabar el flujo.
Si te fijaste bien, no hemos usado la entidad pill en la que guardamos la respuesta del usuario. Esto es debido a que hemos utilizado intenciones para proporcionarle posibles respuestas al usuario. Pero podemos utilizar el valor proporcionado por el usuario igualmente en nuestra condición como el siguiente ejemplo: @pill.value = "red"
.
No olvides proporcionar los textos en los diferentes idiomas soportados en tu habilidad para asegurarte que funcione correctamente para todos los idiomas.
Probar habilidad
Ya tenemos todo listo para probar nuestra habilidad y revisar si se comporta como esperamos. Antes de continuar, asegúrate que has guardado los cambios haciendo click en el botón Guardar.
Hacemos click en la pestaña Probar habilidad en la que disponemos de un chat en el que interactuar directamente con nuestra habilidad recien creada. Puedes cambiar diferentes parámetros como los idiomas para realizar pruebas.
Toda la información sobre la pestaña de Probar habilidad está en el siguiente enlace: Probar habilidad.
Para iniciar nuestra habilidad simplemente debemos escribir en el chat y podemos comprobar como el flujo de pasos que hemos definido se ejecuta. También puedes hacer click en los mensajes del chat para ver información de depuración asociada que te puede resultar muy útil en tus pruebas.
Podrás realizar cambios en tu habilidad y probar los resultados rápidamente y en diferentes condiciones antes de publicar tu nueva versión.
Enhorabuena 🎉, ya tienes tu primera habilidad lista para ser utilizada en tus bots. Puedes seguir revisando el resto de ejemplos para seguir aprendiendo como aprovechar todo el potencial de las habilidades de diálogo en tus bots.