Teneo Developers
Table of Contents
Was this page helpful?

Share to

Transition

Introduction

A transition is a connection between one Flow node and another, a Flow node can have one or more transitions coming in and leaving; and when more than one transition is leaving the same node, the user can define Matches or After Matches to specify in which case one transition should be triggered over another, so as such the transition itself cannot do anything, but functionalities can be added to the transition for it to allow for certain behaviors in the Flow. It is also possible to add examples of User Intent to a transition.

Adding User Intent to a transition indicates that there is an expectation of this transition to act on inputs, meaning an input should be given by the end-user to be able to continue to the next node. It also means, inside Teneo Studio Desktop, that Auto-test is available for the entered examples of User Intent and as the transition is expected to be conditional, i.e., the Match is marked with TODO until the user specifies Match requirements.

When User Intent are not added to the transition, it means that the transition is not expected to act on a user input, and the transition can be unconditional (i.e. neither Matches nor After Matches are defined), but it could also be conditional on, for example, variables or scripts (i.e. is weatherLocation set?, is the user logged in?, etc.) only that this conditionality is not directly linked to the current user input. Therefore, a transition with no User Intent but with some Matches defined allows users to have a conditional transition that is not Auto-tested (in Teneo Studio Desktop).

When the user adds a new transition in the Flow editor, transitions from any node but an Output node are by default unconditional and not required to match intent and therefore do not need any defined Matches to continue to the next node in the Flow. If the user adds a new transition from an Output node, the default however is that User Intent is expected and the section is marked with TODO until examples of User Intent and Matches are added. Lastly, if a transition leaving a node already exists, then any new transition added from the same node will by default get the same settings pre-selected as the already existing transition.

Transition Specifics

Transition panel

Selecting a transition in the Flow editor allows to open the right-side Transition panel in the Flow window, here the user will find the following properties:

  • Transition section:
    • Add name: give the transition a name; the name is displayed in the Flow editor
    • Add description: add a short description of the transition
    • Change start: allows to change the starting point of the transition by selecting another node in the Flow from the dropdown menu
    • Change end: allows to change the ending point of the transition by selecting another node in the Flow from the dropdown menu
  • User Intent allows to write examples of User Intent
    Adding User Intent and examples indicate that the transition is conditional on intents and the Match section will be marked with TODO until Matches are defined
  • Match allows to add Matches to the transition
  • After Match allows to add After Matches to the transition
  • Triggering section:
    • Get input before continuing: if ticket, the end-user must provide an input before the Flow process continues to the next node; User Intent will become available, the TODO label becomes visible, and the user should provide examples and define Matches
    • Order: if multiple transitions start from the same node, specify in which order they (or rather their Matches) have to be evaluated
    • Advanced Options:
      • Match only once per session: indicates if the transition should be executed just once per session or may be repeated
      • Match only the selected sentence) (only available when Get input before continuing is not selected): allows the user to select which part of the existing input will be used when testing the Matches and executing the After Matches of the transition
      • Test sentence from: "Last to first"/"First to last": by default, sentences in the end-user's input are tested "Last to first", but this setting allows to set the testing from "First to last" (testing sentences in the same order as they appear in the end-user's input).
  • Metadata allows to define Metadata at node level

Get input before continuing

A transition is, by default, set to continue to the next node in the Flow without asking the user for an input. But when it is set to Get input before continuing, the end-user needs to provide an input before continuing to the next Flow node; this is marked in the Flow editor with a Give Response label.
When ticking the box, the User Intent section will be marked with TODO encouraging the developer to add examples of User Intent; the Match settings should also be defined.

Note that the Give Response label doesn't indicate that all transitions leaving the label are input consuming and therefore Studio displays a warning icon next to non input consuming transitions when both input consuming and non input consuming transitions exists on a Give Response label for the developer to easily spot this and be able to review the desired behavior.

Draw Transitions

Draw transition automatically

The transition is automatically drawn in the Flow editor by following the below steps:

  • In the Flow editor, click the Plus where the new node(s) should be connected
  • Select the wanted node or element in the popup menu; an overview of all Flow nodes and elements is available here
  • The new node is added, remember to Save the Flow to preserve the changes.

Alternatively, follow the below steps:

  • In the Flow editor, select the node from which the new node should be connected (the new node will be added after the selected node)
  • Click the corresponding button in the top ribbon's Add Node area
  • The new node is added, remember to Save the Flow to preserve the changes.

Draw transition manually

To manually draw a transition, follow the below steps:

  • In the Flow editor, click anywhere in the white area to de-select any previously selected node
  • Click the corresponding button in the top ribbon's Add Node area
  • The new node is added
  • Now, manually by clicking one Flow node and maintaining the mouse button pressed, draw the transition to the following node
  • Remember to Save the Flow to preserve the changes.