Événements et transitions
Dans les flux de dialogue développés avec Visual Flow Designer, les événements sont utilisés pour acheminer une conversation vers des flux ou des états au sein de flux.
Au niveau de la compétence, les événements sont divisés en types suivants :
- Intention. Ces événements correspondent aux intentions de la compétence. Un tel événement se produit lorsque l'entrée utilisateur se résout en une intention donnée.
- Prédéfinie. Il s'agit d'événements standard pour des cas d'utilisation courants tels que l'intention non résolue, l'intention de réponse et l'erreur de dialogue.
- Arrêter l'action de flux. Il s'agit d'événements que vous définissez vous-même et qui peuvent être déclenchés par des actions dans les états de flux de fin (les deux états qui utilisent le composant Flux de fin et les états qui mettent implicitement fin au flux).
Au niveau du flux, les événements sont divisés en types suivants :
- Transitions de système. Il s'agit d'événements intégrés pour les cas d'utilisation courants tels que les entrées utilisateur non résolues, les autorisations requises et les erreurs.
- Transitions personnalisées. Il s'agit d'événements que vous pouvez spécifier vous-même et qui sont généralement affectés à des actions de transition de composant. Lorsque le flux atteint une telle transition, l'événement correspondant est déclenché et l'état mappé à l'événement est appelé.
Événements intégrés pour le flux principal
Événement | Lors du déclenchement | Comment utiliser |
---|---|---|
Démarrer l'aptitude | Lorsqu'une compétence commence pour la première fois. | Mapper à un flux personnalisé pour effectuer des opérations telles que l'initialisation des systèmes dorsaux ou l'affichage d'un menu d'aide. |
Erreur de dialogue | Lorsqu'une erreur est générée par un composant au cours d'une conversation. Cet événement peut également être déclenché lorsqu'il y a une erreur dans un autre flux et que la transition du système Erreur de dialogue de ce flux n'est pas mappée. | Mappez-le à un flux personnalisé de traitement des erreurs. Si cet événement est déclenché mais qu'il n'y a pas de mappage, le flux courant est interrompu et la compétence affiche le message d'erreur par défaut ("Oops! I’m encountering a spot of trouble )".
|
Intention de réponse | Lorsqu'une intention de réponse est résolue. | Mappez à un flux personnalisé dédié aux intentions de réponse. |
Intention non résolue | Lorsque l'intention de l'utilisateur n'est pas résolue. | Mapper à un flux d'aide personnalisé. |
Aide de Digital Assistant | Lorsque l'utilisateur envoie une demande d'aide. Cela ne s'applique que lorsque l'utilisateur a accédé à la compétence au moyen d'un assistant numérique et que celle-ci se trouve dans le contexte courant de l'assistant numérique. | Mapper à un flux d'aide personnalisé. |
Bienvenue dans Digital Assistant | Lorsque l'utilisateur entre en contact avec l'assistant numérique. Cela ne s'applique que lorsque l'utilisateur a utilisé un appel explicite pour accéder à la compétence au moyen d'un assistant numérique, mais n'a pas exprimé d'intention. | Mappez-le à un flux de bienvenue ou d'aide personnalisé. |
En spécifiant des flux pour les événements Aide de Digital Assistant et Bienvenue de Digital Assistant, vous ne remplacez pas complètement le comportement de l'aide de l'assistant numérique et des intentions système unresolvedIntent. Si vous voulez modifier universellement ce comportement, vous le faites dans les paramètres de l'assistant numérique. Voir Spécifier les états pour les intentions système d'un assistant numérique.
Transitions de système pour les flux
Pour chaque flux, vous pouvez tirer parti des transitions du système pour définir où vous gérez les événements tels que les erreurs de dialogue et les messages dans le désordre.
Voici la marche à suivre pour définir l'état utilisé pour traiter un événement donné :
- Dans l'onglet Configuration du flux, faites défiler l'affichage vers le bas jusqu'à la section Mappages d'événements et développez-la.
Vous verrez la sous-section Transitions de système.
- Sélectionnez l'état de l'événement à mapper.
Cet état est généralement un composant Invoke Flow qui pointe vers le flux de l'utilitaire pour gérer l'événement. Voir Appeler un flux à partir d'un autre flux.
Voici les événements que vous pouvez mapper en tant que transitions système dans un flux.
Événement | Lors du déclenchement | Comment utiliser |
---|---|---|
Autoriser l'utilisateur | Lorsqu'un état est atteint où son état Requires Authorization (Nécessite une autorisation) se résout à true .
|
Mappez-le à un composant Invoke Flow qui appelle un flux d'autorisation. |
Erreur de dialogue | Une erreur inattendue est survenue dans la conversation. |
Mappez-le à un composant Invoke Flow qui appelle un flux pour le traitement des erreurs. Si cet événement n'est pas mappé et qu'une erreur se produit dans le flux, le flux de traitement des erreurs mappé à l'événement intégré pour le flux principal de l'erreur de dialogue est appelé. Lorsque l'erreur de dialogue n'est mappée ni pour le flux ni pour le flux principal, la compétence affiche le message d'erreur par défaut ( |
Message hors commande | L'utilisateur sélectionne une option dans un message précédent de la conversation plutôt que dans le message courant. | Mappez-le à un composant Invoke Flow qui appelle un flux que vous avez fourni pour le traitement des messages dans le désordre. |
Entrée d'utilisateur inattendue | L'utilisateur fournit une entrée textuelle au lieu de sélectionner l'une des options fournies dans le message. | Mappez-le à un composant Invoke Flow qui appelle un flux que vous avez fourni pour gérer les entrées inattendues. |
Écoute et déclenchement d'événements
Lorsque vous avez des flux imbriqués (flux avec sous-flux) :
- Le flux courant écoute et déclenche les événements d'action de flux intégrés et de fin.
- Le flux d'appel écoute uniquement les événements d'action de flux de fin déclenchés par le flux courant. Ensuite, lorsque le sous-flux qui a déclenché un événement d'action de flux de fin est terminé, le flux parent agit sur l'événement déclenché.
L'exemple principal est celui où la propriété Action d'un sous-flux spécifie un événement d'action de flux de fin.