Trigger Ordering
Trigger Ordering allows the user to group Intent Triggers and Prompt Triggers and set a specific order for them.
The sections on this page provide information about the various aspects of Trigger Ordering:
Concept
Trigger Ordering allows the user to group Intent Triggers and Prompt Triggers and set a specific order for them. Since Flows can have several independent triggers, it is necessary to group them and set an order for the Order groups.
When Teneo tests a user input against the solution's Intent Triggers, it does so in a certain order, and stops at the first match that fully satisfies all criteria. Using multiple Intent Triggers makes it possible to create diverse triggers with different degrees of complexity and specificity linking to the same Flow.
For example, you can create a Flow with an Intent Trigger with a Class match and an Intent Trigger with a more complex TLML Syntax match that matches very precise inputs. These triggers can have their own After Matches and Listeners to extract additional information from the input and would have their own ordering.
As Flows can have several triggers, these need to be ordered so that the solution can use them in the right order. This is done by specifying Order groups.
Active Flows First
When searching for a matching trigger, Teneo always gives priority to the Flow that is currently being processed. Thus, each input is first tested against the transitions at the current point of the active Flow, as indicated below.

If there is no active Flow, or no matching transition in the active Flow, Teneo will go through all other Flows of the solution to find a matching trigger. The order in which the triggers are tested is determined by the triggers' order group.
Order Groups
Each trigger belongs to an order group. The triggers of the highest-ranked order group will be tested before Teneo moves on to the next order group, and so on. Typically the most specific triggers should be added to the highest order group, and a more generic syntax trigger to a lower-ranking group. Order groups come in a defined, absolute order; User Intent triggers belonging to a higher ranked Order group are always evaluated before Intent triggers belonging to a lower ranked Order group.

The order groups displayed above are the groups that come with Teneo Dialogue Resources (which you can use as a template when creating a new solution). Let's have a quick look at all of these groups:
- Default - group to store default triggers. Because this is marked as 'default', triggers you add to your solution will automatically be assigned to this group
- TDR - Top - contains triggers from Teneo's Dialogue Resource template solution, which are very specific.
- TDR - Middle - this is the group you should assign triggers which are in between 'Top' and 'Low'.
- TDR - Low - contains the triggers from Teneo's Dialogue Resource template solution that are less specific.
- TDR - Safetynet - this group contains the Safetynet that comes with Teneo's Dialogue Resource template solution.
These pre-defined groups are sufficient for a standard setting. However, you can add more order groups or move triggers from one group to another if needed. Before doing so, it may be worth exploring whether relative ordering achieves the wanted outcome.
When a new solution is created in Teneo Studio, a Default order group is automatically added to the Intent Trigger Ordering. New Intent Triggers created in Flows are automatically added to the Default order group until the user moves it into another group. It is recommended to leave the Default order group empty and move newly created Intent triggers to other order groups after creation.
Please see Work with Order Groups to see all options for Order groups.
Trigger Relations
Inside each order group, the ordering may be further refined between individual triggers. In some cases, this is necessary because multiple triggers within a order group may be competing for inputs. In order to avoid this situation and control the order, you can define a trigger relation between two triggers.
This relative ordering clarifies the order in which the triggers within an order group should be tested. Just like with order groups, the more specific triggers should be put before the less specific ones; otherwise, the most specific triggers would never be tested.

Triggers and relations are treated as separate types of objects. For example, in this image, there are three different objects that can be selected: two triggers, and one relation.
To understand all options for defining trigger relations, please see Work with Trigger Relations.
An Order group can hold both User Intent triggers with and without relations; the Intent triggers without relations are sorted alphabetically from top to bottom in various columns. The Intent triggers with relations are grouped at the top of the Order group followed by the Intent triggers without relations below.
Islands and Singletons
Islands refer to the grouping of related Intent Triggers within an order group. Islands are created by Teneo Studio when asking for trigger ordering suggestions or when users manually create a relation between two Intent Triggers.
An Intent Trigger which has no relation to any other Intent Trigger is called a singleton.
Suggest Ordering
The Suggest Ordering feature can automatically generate suggestions for ordering relations, propose removal of spurious relations, identify Intent Trigger issues which cannot be solved by simply adding or deleting ordering relations and, finally, it can suggest actions on how to resolve these.
The Suggest Ordering feature is based Auto-test results which means that the reliability of this feature depends on the quality and coverage of the User Intent examples added to each Intent Trigger in the solution. It also means that embedded script syntaxes will not be evaluated.
The Suggest Ordering performs the following changes:
- Adds ordering relations between Intent Triggers within the same Order group when justified by Auto-test.
- Deletes unprotected ordering relations when these are not needed according to Auto-test results.
- Creates notification for the user regarding Auto-test failures which the user should review.
When Suggest Ordering has finished, Teneo Studio generates notifications of two types in the left-side panel of the Ordering window:
- Suggested Ordering Problems which covers the detected issues which Teneo cannot solve on its own; these notifications should be closely reviewed by the Teneo Studio user.
- Suggest Ordering Changes which displays the changes performed by the Suggest Ordering feature.
Suggest Ordering Problems
The first part of the notifications provides a resume of the Suggested Ordering Problems, which covers the following categories:
- Non-matching examples
- Triggers in Different Groups
- Mutually matching examples
- Cyclic dependency
- Protected relations in wrong direction.
Non-matching Example
The Non-matching Example notification appears if a positive example of User Intent in a Flow does not match its own Matches. To resolve this, either:
- Update the Matches of the Intent Trigger to cover the positive example.
- Delete the example from the Flow if it is no longer needed.
Read more about matching.
Triggers in Different Groups
If an Intent Trigger from a lower ranked Order group needs to be evaluated before an Intent trigger in a higher ranked Order group, the suggestion is to move one of the Intent triggers to the other Intent trigger's Order group so that the needed relation between them can be added.

Mutually Matching Examples
Mutually matching examples occur when two Intent triggers have an example of User Intent which matches not only the Intent trigger it belongs to, but also the other Intent trigger.
To resolve this, the example and/or the Intent trigger's Matches need to be edited.

Read more about matching.
Cyclic Dependency
Although uncommon, it can happen that a relation is created from trigger B to trigger C to trigger A and then again from trigger A to trigger B. This is a cyclic dependency.
The Suggest Ordering feature checks for these kinds of cyclic dependencies and notifies the user about which Intent triggers are involved.

A cyclic dependency is highlighted in red (rather than orange) in the Intent trigger Ordering view (see above image).
It may not be the red-marked relation that is erroneous, but rather one of the other relations in the cyclic loop. The system has no way of determining which of the relations in a cyclic loop should be removed.
Protected Relation in Wrong Direction
Suggest Ordering also detects when a protected relation might have a wrong direction. Since relations are usually protected for a good reason, the corresponding notification will not change this but rather suggest the user to have an extra look at it.
Suggest Ordering Changes
The Suggested Ordering Changes cover the changes which Teneo automatically applied while running the Suggest Ordering feature which are divided into the following categories:
- Deleted relations
- Added relations
The user can click the right-pointing arrow to select the affected triggers and view the changes in the main view or revert the changes done by Teneo by clicking the Re-create this relation button or the Remove this relation button.

Prompt Triggers
The Concept section has so far covered how to order Intent triggers, which make up for the majority of triggers in a solution. Even though Prompt triggers are ordered separately from the Intent Triggers, their ordering follows the same general principle: more specific triggers should be tested before less specific ones. To view or change the ordering of prompt triggers, simply select the 'Prompt Trigger' icon in the Ordering section of the top ribbon.
Although not explicitly mentioned here, all functionalities of Ordering applies to both Prompt Triggers and Intent Triggers, with the exception of the features concerning Suggest Ordering, which is only available for Intent Triggers.
Conflicting Changes
When the Intent Trigger Ordering window is opened, it loads a local copy of the current Intent Trigger Ordering from the Teneo backend server and work on the (local) copy does not affect anything on the server until the developer saves the changes.
When multiple developers work on the ordering at the same time, notifications may arise when another developer saves changes which affect the work of the current developer. If there are conflicts between what was recently saved to the server and what the current developer is doing, the changes must be accepted before the current developer can save the local copy to the server. This may imply that the developer has to undo some of the changes performed earlier. Harmless changes, such as the addition of a new trigger, are pushed through on the view of ordering automatically.
Teneo Studio supports multiple developers working with the Intent Trigger Ordering at the same time; it is though recommended to work in different order groups to avoid conflicts.
How To
Open Trigger Ordering
The Trigger Ordering window is opened from the top ribbon of the main Teneo Studio window by selecting Intent Triggers or Prompt Triggers in the Ordering area. To get an overview of the order groups of your solution, simply select the 'Intent Trigger' icon in the 'Ordering' section of the top ribbon.

Work with Order Groups
Add an Order Group
To add a new Order group to your solution, follow the below steps:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Navigate over to the 'Groups' tab in the 'Intent Trigger Ordering' window.
- In the Groups section, select Add; a new Order Group will appear at the end of all groups.
- Do not forget to hit Save to preserve the changes.
Delete an Order Group
To delete an Order group from your solution, follow the below steps:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Navigate over to the 'Groups' tab in the 'Intent Trigger Ordering' window.
- Select the Order group you wish to delete and select Delete in the Groups section in the top ribbon.
- Do not forget to hit Save to preserve the changes.
Move Order Groups
To change the order of the Order groups, follow the below steps:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Navigate over to the 'Groups' tab in the 'Intent Trigger Ordering' window.
- Select the Order group you wish to move and select one of the following options in the top ribbon:
- To Top
- Top
- Down
- To Bottom
- Do not forget to hit Save to preserve the changes.
Rename an Order group
To rename an Order group, follow the below steps:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select an Order group and open the Properties panel available in the right side of the Intent Trigger Ordering window.
- Click in the field of the Order group's current name and write the new name.
- Remember to click Save to preserve the changes in the Ordering.
Work with Triggers
Open a Trigger
-
Open the Trigger Ordering Window from the top ribbon in the solution.
-
Select the 'Home' tab.
-
Search for the Trigger you wish to open:
- Use the Filter to find the trigger
- Explore the Order groups to find the trigger
-
Click on the wanted trigger:
-
The Properties panel will display information related to it on the right.
-
If you wish to see the Flow where the trigger is, click Open in the top ribbon.
-
Extract a Trigger
To extract a trigger, first:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the 'Home' tab.
- Open the Order group where you wish to modify triggers.

Use Extract to cut out one or more Intent Triggers from an island, maintaining any immediate relation of the selection.
- Select Triggers C and D by pressing Ctrl+click.
- Click Extract in the Triggers section of the top ribbon in the 'Home' tab.
- The extraction results in Trigger C and D maintaining their relation while no relation is maintained nor added between Trigger B and the rest of the island.
Bridge a Trigger
To bridge a trigger, first:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the 'Home' tab.
- Open the Order group where you wish to modify triggers.

Use Bridge to create a relation from all Intent Triggers preceding the selection to all Intent Triggers immediately after the selection.
- Select Triggers C and D by pressing Ctrl+click.
- Click Bridge in the Triggers section of the top ribbon in the 'Home' tab.
- The bridging results in Trigger C and D maintaining their relation while a new relation bridges from Trigger B to Trigger E.
Extract and Bridge a Trigger
To extract and bridge a trigger, first:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the 'Home' tab.
- Open the Order group where you wish to modify triggers.

Use Extract and Bridge to combine the above two functionalities, extracting the selection and bridging over the gap they created.
- Select Triggers C and D by pressing Ctrl+click.
- Click Extract and Bridge in the Triggers section of the top ribbon in the 'Home' tab.
- The extraction and bridging results in Trigger C and D maintaining their relation in a new island while the relation from Trigger B is being bridged to Trigger E.
Merge a Trigger
To merge a trigger, first:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the 'Home' tab.
- Open the Order group where you wish to modify triggers.

The Merge function makes it possible to join two islands of related Intent Triggers which reside within the same Order group. New relations are created by replacing the selected relation in one island with the selected Intent Trigger(s) of the other island. After the merge, all other relations from before the merge remains the same.
- Select Triggers B and C by pressing Ctrl+click.
- The relation between Trigger D and E is selected.
- Click Merge in the Triggers section of the top ribbon in the 'Home' tab.
- Trigger B and Trigger C are now merged into the island of Trigger D and E. They maintain preceding and following relations by adding a new relation from Trigger D to Triggers B and C and from Trigger B and C to Trigger E.
Move a Trigger
To move a trigger, first:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the 'Home' tab.
- Open the Order group where you wish to modify triggers.

Use Move to cut a selection of triggers from an island of related Intent Triggers and paste them into another location by replacing the selected relation. Any preceding or following relations are left as is.
- Select Triggers B and C by pressing Ctrl+click.
- The relation between trigger D and E is selected.
- Click Move in the Triggers section of the top ribbon in the 'Home' tab.
- Trigger B and C are now moved into the island of trigger D and E while trigger A has become a singleton.
Work with Trigger Relations
Relative ordering between triggers can be defined in the Intent Trigger Ordering window.
Add a Relation
To add a relation, first:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the 'Home' tab.
- Open the Order group where you wish to add a relation.

- Select Triggers A and B by pressing Ctrl+click.
- Click Add in the Relations section of the top ribbon in the 'Home' tab.
- A relation (an arrow) is added between trigger A and trigger B.
- Don't forget to hit Save to preserve the changes.
Trigger relations are defined by arrows between any two triggers in the same Order group. You can simply click on one trigger and drag an arrow to a second one.
Delete a Relation
To delete a relation, follow the below steps:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the['Home' tab.
- Open the Order group where you wish to delete a relation.
- Click on the relation (an arrow) that you wish to delete and either:
- press the keyboard's Delete button
- click Delete in the Relations section of the top ribbon in the 'Home' tab.
- Don't forget to hit Save to preserve the changes.
Bridge a Relation
To bridge a relation, first:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the 'Home' tab.
- Open the Order group where you wish to bridge a relation.
Use Bridge to add new relations between the Intent Triggers leading to the from trigger for this relation to the to trigger; and add new relations leading from the from trigger of this relation to the triggers after the to trigger of this relation.

- Select the relation between Trigger B and Trigger C.
- Click Bridge in the Relations section of the top ribbon in the 'Home' tab.
- A relation bridging over Trigger B is added from Trigger A to Trigger C, and a relation bridging over Trigger C is added from Trigger B to Trigger D.
- Don't forget to hit Save to preserve the changes.
Delete and Bridge a Relation
To bridge a relation, first:
- Open the Trigger Ordering Window from the top ribbon in the solution.
- Select the 'Home' tab.
- Open the Order group where you wish to delete and bridge a relation.
Use Delete and Bridge to delete the currently selected relation and bridge over it.

- Select the relation between Trigger B and Trigger C.
- Click Delete and Bridge in the Relations section of the top ribbon in the 'Home' tab.
- The selected relation is deleted while new relations bridge from Trigger A to Trigger C and from Trigger B to Trigger D.
- Don't forget to hit Save to preserve the changes.
UI
Intent Trigger Ordering Window
The Trigger Ordering window is opened in the solution top ribbon by choosing Intent Triggers or Prompt Triggers in the Ordering section.


Panels
The following panels are available in the Intent Trigger Ordering window:
- Filter (left side)
- Notifications (left side)
- Properties (right side)
Both Intent Trigger Ordering and Prompt Trigger Ordering have the same sections in the top ribbon with the exception of Suggest Ordering, which only applies to Intent Trigger Ordering.
Filter panel
Filters can be a great help when ordering the Intent triggers. There are some advanced options that can be used to zoom in on the exact Intent triggers that the user is interested in.

For filtering triggers the user will find the following options:
- Add to display all the filter types and add a new filter.
- Clear to clear all filters.
- Enable/Disable one or more filters by clicking the enable/disable button next to the selected filter.
- Delete a filter by clicking X.
- Matching: All/Any option allows to config8ure how the filters should work together to return the wanted set of Triggers.
- Selecting Any allows to filter on triggers which match any (one or more) of the specified filters
- Selecting All allows to filter on triggers which match every single defined filter.
- with Depth refers to how many Triggers within the same island are shown. The default setting for the depth is 1, which means that only the filtered Trigger will be shown by default. By increasing the number the user can see more Triggers from the same island.

| Filter type | Description | Related pages |
|---|---|---|
| Text filter | Returns Intent triggers with Flow name or Trigger name containing the word(s) typed in. | |
| Engine Match > example | Allows you to provide a User Intent example which is used to match against all triggers and check which triggers it would potentially match. | User Intent |
| Engine Match > TLML Syntax | Allows you to enter a TLML Syntax that will be used to match all positive examples of User Intent against. E.g. if the user wants to look at the "luggage" knowledge area of the solution, they can enter a syntax like %LUGGAGE.NN.SYN to filter on all the User Intents (and the triggers they belong to) that contain the word "luggage" (or a synonym). | TLML Syntax |
| Search >TLML Syntax | Allows you to search for specific strings in TLML Syntax. | TLML Syntax |
| Search > Description | Allows you to search for specific strings in a Description. | |
| Search > Positive examples | Allows you to search for specific strings in positive examples of User Intent. | User Intent - positive example |
| Search > Negative examples | Allows you to search for specific strings in negative examples of User Intent. | User Intent - negative examples |
| Flow filter | Allows you to filter on the Intent triggers of a specific Flow. | |
| Folder filter | Gives the option to select a Flow folder and filters on all Intent triggers contained by the Flows in that folder. |
Notifications panel
Notifications can be displayed in the Notifications panel when using the Suggest Ordering feature or for notifications from collaborators, Conflicting Changes.
The user can use the blue arrows, next to the notification, to move one of the Intent triggers up or down, or manually move one of the Intent triggers in the main view.

Teneo Studio informs the developer through the Notifications panel and pop-up messages when overlaps or conflicts in changes occur. Before the notification comes in, an alert will be displayed and when clicking OK, receipt of the message is confirmed and the message is displayed in the Notifications panel.
Properties panel
If no trigger is the selected, the Properties panel displays information related to the Ordering, such as number of Order groups, relations and Intent triggers.

When a trigger is selected, the Properties panel displays information related to the selected trigger(s), such as Matches, After Matches (if available), Flow where Intent trigger is used, and positive and negative User Intents. It is possible to navigate and open these elements directly from the Properties panel.

You can select multiple triggers and explore their properties by holding down Ctrl while selecting the triggers.
Protect relations
If a trigger relation is selected, it is possible to see information related to the two Intent Triggers. Additionally, the user can Protect or Un-protect the relation between the two Intent triggers by clicking the drop down menu Protected/Un-Protected.

Tabs
The Intent Trigger Ordering window contains three different tabs:
- Ordering: provides options to view and restore former versions of the ordering
- Home: provides options to manage relations between triggers.
- Groups allows to manage the Order groups.
Ordering Tab

In the Ordering tab, available in the left-side top of the Intent Trigger Ordering window, the user can navigate to the backstage of the ordering window. Here the user will find:
-
The Arrow takes the user back to the Trigger Ordering window.
-
Save saves the current Trigger Ordering.
-
History allows to explore a specific saved version of the ordering by clicking any of the version numbers (in red).
-
Set stable
- Selecting a specific revision of the Ordering, the user is able to set the selected version as the stable version by clicking Set Stable in the in the top ribbon of the older ordering version.
-
Restore
- When an older version of the ordering is opened, the user has the option to Restore that particular version of the ordering with the Restore button available in the top ribbon of the older ordering version.
-
-
Close closes the Trigger Ordering window.
Home Tab

| Section | Icon | Description | Related pages |
|---|---|---|---|
| Ordering | Close | Closes the Trigger Ordering window. | |
| Save | Saves changes to the Trigger Ordering. | ||
| Edit | Undo | To undo actions performed in the ordering. | |
| Redo | To redo actions performed in the ordering. | ||
| View | Zoom To Fit | Fits all Trigger Ordering groups and triggers in the window. | |
| Show all | Displays both enabled and disabled triggers. | ||
| Hide disabled | Removes disabled triggers from the view. | ||
| Expand All | Expands all order groups. | ||
| Collapse All | Collapses all order groups. | ||
| Top to Bottom | Displays all related triggers in islands arranged vertically. | ||
| Left to Right | Displays all related triggers in islands arranged horizontally. | ||
| Triggers | Open | Gives the options to either Open or open and Edit the Flow of a selected trigger. | |
| Extract, and Bridge | Extract extracts the selected triggers as connected group(s), the order between all the triggers before the extracted group and after is not guaranteed. Bridge creates new relations from all triggers leading to this trigger and to all triggers after this trigger. Extract and Bridge extracts the selected triggers as connected group(s), the order between all the triggers before the extracted group and after remains unchanged. | ||
| Merge | Makes it possible to join two islands of related triggers which reside within the same order group. | ||
| Move | Cuts a group of triggers from an island of related triggers and paste it back in another location by replacing the selected relation. Before and after the points of extraction and insertion, all existing relations remain the same. | ||
| Relations | Add | Adds a relation between two triggers. | Relative Ordering Add a Relation |
| Delete | Deletes the selected relation(s) between two triggers. | Relative Ordering Delete a Relation | |
| Delete and Bridge | Deletes the currently selected relation and bridge over it. | ||
| Reverse | Turns the direction of a selected relation around. | ||
| Select Redundant | Selects all redundant relations in all order groups. | ||
| Suggest Ordering | Filtered | Runs Suggest Ordering on triggers which match the currently enabled filter(s). | Suggest Ordering |
| Selected | Runs Suggest Ordering on currently selected triggers and/or Order groups. | ||
| Solution | Runs Suggest Ordering on all triggers in the solution. | ||
| Stable Version | Set | The user can set the current version of the Ordering as stable. To set a previous version of the Ordering as stable version, please see History in the Ordering tab. | Version flags |
| Unset |
Note that for a stable solution to work correctly it is mandatory to set a version of the Intent Trigger Ordering and Prompt Trigger Ordering as stable.
In the View group in the ribbon bar there are buttons to toggle the visibility of disabled triggers. To select multiple groups, hold down the Ctrl key while clicking on group names.
Groups Tab

| Section | Icon | Description | Related pages |
|---|---|---|---|
| Ordering | Close | Closes the Trigger Ordering window. | |
| Save | Saves changes to the Trigger Ordering. | ||
| Edit | Undo | To undo actions performed in the ordering. | |
| Redo | To redo actions performed in the ordering. | ||
| View | Zoom To Fit | Fits all Trigger Ordering groups and triggers in the window. | |
| Show all | Displays both enabled and disabled triggers. | ||
| Hide disabled | Removes disabled triggers from the view. | ||
| Expand All | Expands all order groups. | ||
| Collapse All | Collapses all order groups. | ||
| Top to Bottom | Displays all related triggers in islands arranged vertically. | ||
| Left to Right | Displays all related triggers in islands arranged horizontally. | ||
| Groups | Add | Adds a new Order group, the new group will appear at the bottom of the current Order group view. | |
| Delete | Extract extracts the selected triggers as connected group(s), the order between all the triggers before the extracted group and after is not guaranteed. Bridge creates new relations from all triggers leading to this trigger and to all triggers after this trigger. Extract and Bridge extracts the selected triggers as connected group(s), the order between all the triggers before the extracted group and after remains unchanged | ||
| Set as Default | Makes it possible to join two islands of related triggers which reside within the same order group. | ||
| Move | To Top | Move the selected Order group to the top of the list. | Relative Ordering Add a Relation |
| Up | Moves the selected Order group one position up in the list. | Relative Ordering Delete a Relation | |
| Down | Moves the selected Order group one position down in the list. | ||
| To Bottom | Moves the selected Order group to the bottom of the list. |
Practical Examples
Create a Custom Order Group
Users sometimes communicate using incomplete inputs making it harder to interpret what they want. In this example, we are working with a solution for a fictional coffee shop. We have a Flow in place for ordering coffee, and another for telling the user more about the available coffee selection. To handle ambiguous inputs from users, we want to add another Flow for partial understanding of coffee-related inputs that do not trigger either of our other Flows.
Before our implementation, we have a conversation which looks something like this:
User: coffee
Bot: I'm sorry but I didn't get that.
User: espresso
Bot: I'm not sure I know what you mean?
These kinds of responses do not result in a satisfying user experience. But after we're finished, we will have responses that add more direction to the conversation:
User: coffee
Bot: I understand you would like to talk about coffee. Can you be more specific?
User: what are the coffees you have
Bot: We offer a variety of handcrafted coffee drinks - from espressos to macchiatos to flat whites and more.
In the first part of the example we will create an order group called Project - Low for syntax triggers responding to ambiguous inputs. We will place the order group just before the class intents because we don't want this specialized situation to be second-guessed by machine learning when we already know that it is ambiguous. In the second part, we will create a Flow to respond to ambiguous mentions of the word coffee or any of its synonyms.
Create the Order Group
If you have based your solution on Teneo Dialogue Resources (TDR), you will notice that you already have a set of order groups in your solution. After we have finished defining our custom order group, the ordering will look like this:

First we will create the order group:
- Open your solution.
- Click Intent Triggers in the Ordering section to open trigger ordering window.
- In the Intent Trigger Ordering window, navigate to the Groups tab.
- In the Groups tab click Add to add a new group (it appears at the bottom of the list of groups).
Adjust the Group Ordering
Our group was added at the bottom of the ordering, but we want it to be up higher. In these steps, we will move our group to a more optimal location in the ordering.
-
Select the new order group (it will have a default name like Order Group 1) and while selected, copy this name
Project - Lowinto the name field. -
With the order group still selected, click the Up arrow in the Ribbon to move the group to just above the group of TDR - Low.
-
Save and close the Intent Trigger Ordering window.
Create a Flow for Partial Understanding
In this section we will create a Flow to handle partial understanding. It will use a syntax trigger ordered into the Project - Low group which we just created.
-
Create a new Flow and call it
Partial understanding: Coffee. -
Name the trigger and add positive intent examples. In this case, we will add:
cappuccino
coffee
espresso
... -
Add a 'Language Object' Match with a condition that matches the intent examples. For this example, we will use
COFFEE.NN.SYN. -
In the Triggering section, select the Order Group we created in the steps above: Project - Low. This will change its ordering.
Populate the Output Node and Save
-
Select the output node and give it a name like
Respond to single synonym: Coffee. -
Populate it with a response, such as:
I understand you would like to talk about coffee. Can you be more specific?. -
Add a few more output variations to make your bot look smarter, for example:
I'm not sure what you wanted to ask about coffee. Could you please help clarify?You're talking about coffee. Would you please tell me what you wanted exactly?
-
Hit the 'Save' button.
Try it out
Now the new Flow is ready and can be tested in Tryout. Because the trigger has been assigned to a different order group, there will be a message at the bottom of the Tryout panel that says 'A reload of the engine is required to apply your recent changes'. Click Reload now before testing.
User: coffee
Bot: I understand you would like to talk about coffee. Can you be more specific?