Kore.ai Dialog tasks represent a full conversational flow between a user and a Bot with a network of nodes that are connected using conditions. For example, if you create a banking Bot, some of the tasks you will want your Bot to do for users is to retrieve and monitor account balances, provide alerts for expenditures or low balances, transfer funds, pay bills, a combination of these or more. Dialog tasks need to handle multiple user intents within a single conversation. For example, “What is your destination?” is a typical question in Book Flight bot that is sometimes followed up with “What’s the weather forecast? ” You can create a dialog task to encompass a full conversation with multiple outcomes as a single task. A dialog task begins with a root intent, Book Flight, can branch out into subtasks, Weather Info, and then return to the primary task. The branch flow is determined at runtime by user input or selection.
Dialog Task Uses
As a developer, you can define Kore.ai Dialog Tasks to:
- Create a conversational flow between the user and the bot
- Build dialogs with branching paths based on user inputs and system responses
- Invoke a child flow within the context of the current flow
- Define and reuse dialog nodes connected by defined conditions
- Add event handlers and get or update the conversation context via Webhook
The following is a Dialog Task for booking flight tickets.
Dialog Task Builder
The Dialog Task Builder is the user interface to build Dialog Tasks. Dialog Tasks consists of a set of connected nodes and the branch paths the bot can take based on a user conversation. It provides easy-to-use tools to add and edit nodes and conditions to define your task flow. It shows you a high-level view of the components by default, and you can adjust the Zoom settings to focus on specific areas. Using the Tracing feature, you can see individual branch paths taken to reach a node from the root intent as shown below.
Creating a Dialog Task
To create a dialog task, you must already have configured a Bot to add a dialog task to.
To add a dialog task
- Open the bot in which you want to create the Dialog Task.
- Hover over the side navigation panel and click Bot Tasks.
- Click Dialog Tasks, and then click the plus icon.
- Enter a name and description for the dialog task, and then click Create & Proceed.
- The Dialog Builder opens with the root intent component and Component Properties panel.
You can also design your Dialog flow using:
Agent Transfer Node – Use it to define a point in a dialog flow to switch to a Live Agent.
Fallback Dialog – If the user intent is ambiguous, invoke the Fallback Dialog, for example, a Live Agent transfer, as an alternative.
Hidden Dialog – Use to invoke tasks that should be hidden from a user dialog flow unless specifically invoked. For example, a user utterance to invoke a Dialog Task external to the current Dialog Flow.
If you are new to the Dialog Builder, you should learn more about the Dialog Builder user interface before preceding. For more information, see Using the Dialog Builder Tool.
Otherwise, your next step is to decide what component type to add and how to transition to the next component. For more information, see the following component types:
- User Intent Node – For more information, see Working with the User Intent Node.
- Entity Node – For more information, see Working with the Entity Node.
- Script Node – For more information, see Working with the Script Node.
- Agent Transfer Node – For more information, see Working with the Agent Transfer Node.
- Service Node – For more information, see Working with the Service Node.
- Bot Response Node – For more information, see Working with the Bot Response Node.
- Confirmation Node – For more information, see Working with the Confirmation Node.
- WebHook Node – For more information, see Working with the WebHook Node.
- Dialog Node – For more information, see Working with the Dialog Node.