Transitions connect flow nodes with each other. They determine the paths a dialogue can follow. If there are multiple transitions leaving a node, all transitions are tested in a certain order and the first one whose condition is satisfied is chosen.
Some transitions wait for a user input while others do not. You specify whether a transition should wait for a new input or not with a toggle in the 'Examples' panel.
In case a transition has been set to wait for user input, the flow processing halts until the user has provided an input. Usually, such transitions are placed after output nodes in which the bot asked a question. In Teneo, transitions waiting for user input are displayed as solid lines. Transitions that are set to continue without user input are displayed as dotted lines. This makes the two visually distinguishable from each other:
Transitions can be conditional or unconditional. If a transition is conditional, Teneo will evaluate if a condition is met before it follows the transition. You specify conditionality with a toggle in the 'Examples' panel:
Just like syntax triggers, transitions use language conditions to evaluate if the input of a user meets the criteria to follow a transition. You can either hand-craft the condition yourself, or let Teneo automatically create it for you from a set of examples, after which you can edit the condition. Say that you want to capture extras together with a coffee order:
The language conditions for the 'Milk and sugar' branch may look like this:
For language conditions in transitions it is usually enough to focus on the crucial content-bearing keywords. This way, less important words that might exist in the user's input, are ignored.
You can also use Groovy code in the condition field. The code should be embraced by curly brackets, e.g. {userAge > 18} (which requires the value of the variable userAge to be larger than 18). Language conditions that consist of Groovy code are often used in transitions that continue without user input.
If multiple transitions have the same node as their starting point, you specify the order in which they (or rather: their conditions) should be tested. The order is displayed in the flow graph, as a number on the transition. You change the order in the 'Examples' panel.
When setting up the ordering of the transitions, make sure that the more specific conditions are tested first and the more general ones last. Otherwise the more general ones will never be chosen.
You can specify whether a transition should be considered just once per session, or always. This is useful when you want the behaviour of a flow (or a point of flow) to be different depending on how many times the user visits it.
Was this page helpful?