Eventos y Transiciones
En los flujos de diálogo desarrollados con el diseñador de flujos visuales, los eventos se utilizan para enrutar una conversación a flujos o estados dentro de flujos.
En el nivel de aptitud, los eventos se desglosan en los siguientes tipos:
- Intentar. Estos eventos corresponden a las intenciones de la aptitud. Este evento se produce cuando la entrada del usuario se resuelve en una intención determinada.
- Integrada. Estos son eventos estándar para casos de uso típicos como intención no resuelta, intención de respuesta y error de cuadro de diálogo.
- Finalizar acción de flujo. Se trata de eventos que se definen a sí mismo y que se pueden disparar mediante acciones en estados de flujo final (ambos estados que utilizan el componente de flujo final y estados que terminan implícitamente el flujo).
En el nivel de flujo, los eventos se desglosan en los siguientes tipos:
- Transiciones del sistema. Se trata de eventos incorporados para casos de uso típicos, como entradas de usuario sin resolver, autorizaciones necesarias y errores.
- Transiciones personalizadas. Estos son eventos que puede especificar usted mismo y que normalmente se asignan a acciones de transiciones de componentes. Cuando el flujo alcanza dicha transición, se dispara el evento correspondiente y se llama al estado asignado al evento.
Eventos incorporados para el flujo principal
Evento | Cuando se dispara | Uso |
---|---|---|
Iniciar aptitud | Cuando una aptitud se inicia por primera vez. | Asigne un flujo personalizado para realizar acciones como initalizar sistemas backend o mostrar un menú de ayuda. |
Error de diálogo | Cuando un componente devuelve un error durante una conversación. Este evento también se puede iniciar cuando hay un error en otro flujo y la transición del sistema Error de diálogo de ese flujo no está asignada. | Asignar a un flujo de manejo de errores personalizado. Si este evento arranca pero no hay ninguna asignación, el flujo actual termina y la aptitud genera el mensaje de error por defecto ("Oops! I’m encountering a spot of trouble )".
|
Intención de respuesta | Cuando se resuelve una intención de respuesta. | Asigne un flujo personalizado dedicado a las intenciones de respuesta. |
Intención no resuelta | Cuando la intención del usuario no está resuelta. | Asignar a un flujo de ayuda personalizado. |
Ayuda de Digital Assistant | Cuando el usuario expresa una solicitud de ayuda. Esto solo se aplica cuando el usuario ha accedido a la aptitud a través de un asistente digital y la aptitud está en el contexto actual del asistente digital. | Asignar a un flujo de ayuda personalizado. |
Bienvenido a Digital Assistant | Cuando el usuario inicia el contacto con el asistente digital. Esto solo se aplica cuando el usuario ha utilizado una llamada explícita para acceder a la aptitud a través de un asistente digital pero no ha expresado una intención. | Asignación a un flujo de ayuda o bienvenida personalizado. |
Al especificar flujos para los eventos de ayuda de Digital Assistant y bienvenida de Digital Assistant, no sobrescribirá completamente el comportamiento de la ayuda del asistente digital y las intenciones del sistema unresolvedIntent. Si desea cambiar universalmente ese comportamiento, lo hace en la configuración del asistente digital. Consulte Especificación de estados para las intenciones del sistema de un asistente digital.
Transiciones del sistema para flujos
Para cada flujo, puede aprovechar las transiciones del sistema para definir dónde manejar eventos como errores de diálogo y mensajes fuera de orden.
Para definir el estado que se utiliza para manejar un evento determinado:
- En el separador Configuración del flujo, desplácese hacia abajo hasta la sección Asignaciones de eventos y amplíe.
Verá la subsección Transiciones del sistema.
- Para el evento que desea asignar, seleccione el estado al que desea asignarlo.
Este estado suele ser un componente Invoke Flow que apunta al flujo de la utilidad para manejar el evento. Consulte Llamada a un flujo desde otro flujo.
Estos son los eventos que puede asignar como transiciones de sistema en un flujo.
Evento | Cuando se dispara | Uso |
---|---|---|
Autorizar Usuario | Cuando se alcanza un estado en el que el estado Necesita autorización se resuelve en true .
|
Asignación a un componente de flujo de llamada que llama a un flujo de autorización. |
Error de diálogo | Se produce un error inesperado en la conversación. |
Asignación a un componente Llamar a Flujo que llama a un flujo para el manejo de errores. Si este evento no está asignado y se produce un error en el flujo, se llama al flujo de manejo de errores asignado al evento incorporado de error de cuadro de diálogo para el flujo principal. Cuando el error de cuadro de diálogo no se asigna ni para el flujo ni para el flujo principal, la aptitud genera el mensaje de error por defecto ( |
Mensaje fuera de orden | El usuario selecciona una opción de un mensaje anterior en la conversación en lugar del mensaje actual. | Asigne un componente Invoke Flow que llama a un flujo que ha proporcionado para gestionar mensajes en desorden. |
Entrada de usuario inesperada | El usuario proporciona una entrada de texto en lugar de seleccionar una de las opciones proporcionadas en el mensaje. | Asigne un componente Invoke Flow que llame a un flujo que haya proporcionado para manejar entradas inesperadas. |
Activación y escucha de eventos
Cuando tiene flujos anidados (flujos con subflujos):
- El flujo actual escucha y dispara eventos de acción de flujo incorporados y finales.
- El flujo de llamadas solo escucha eventos de acción de flujo de finalización disparados por el flujo actual. A continuación, cuando el subflujo que ha disparado un evento de acción de fin de flujo ha finalizado, el flujo principal actúa sobre el evento disparado.
El ejemplo principal de esto es cuando una propiedad Acción de un subflujo especifica un evento de acción de flujo final.