Skip to main content

Guide chatters through conversations using Answer flows and quick replies

Definitions

Answer Flows are the different ways you can structure Answers and quick reply buttons to guide the chatter through a conversational journey. Any response from the bot that includes more than one Answer per chatter question, is considered a type of Answer Flow.

Answer Flows can be thought of visually as flowcharts. These flows can vary in complexity, ranging from simple linear steps to detailed structures with different branches that can be accessed depending on a chatter’s choices. It’s like a choose-your-own-adventure for the chatter!

The steps (or branches) of the flow are individual Answers, represented as quick reply buttons. Quick reply buttons act as links that trigger other Answers in the bot, if selected. When multiple quick reply options are presented to the chatter, the title of the quick reply button that they select becomes their question, and the other buttons disappear.

Use cases

There are four main use cases for Decision Trees & Quick Replies:

Use Case 1: Menu

Chatter's view

Grouping related topics that can be accessed by a top-level main menu.

Example

A chatter asks to “sign up for a new data plan” but there are multiple plan options available. The bot should acknowledge the action that the chatter wants to take, and provide the list of plan options as quick reply buttons.

telecom_chat_1.png

Use Case 2: Suggestions

Chatter's view

Anticipating additional questions and proactively offering topics that the chatter might want to learn about.

Example

A chatter is asking about setting up a travel notification on their credit card. The bot should Answer their question, but also suggest Answers about:

  • travel insurance

  • travel mile rewards cards

  • tips for using credit cards abroad

travel_notice.png

Note

The difference between Menus and Suggestions: Using a Menu Answer, the chatter must select a quick reply option in order to receive the full information that they are looking for. Using quick Replies to offer Suggestions provides the chatter with related information that they didn’t explicitly ask for. In this case, the chatter could choose not to view any of the suggested options because their original question has already been addressed in the Answer presented.

Use Case 3: Linear steps

Chatter's view

Breaking up long pieces of content into more manageable steps.

Example

A chatter asks how to create an account, but there are many steps to follow. Group a few steps into one Answer at a time. At the end of each Answer, include a QR button that triggers the next Answer in sequence. The chatter indicates when they are ready for the next grouping of instructions by clicking on a quick reply button, often labelled as "Continue."

AnswerUseCase_LinearSteps1.png
AnswerUseCase_LinearSteps2.png

Use Case 4: Differentiation

Chatter's view

Funneling chatters who ask a general question towards the specific Answer, based on their responses to disambiguating questions.

Example

A chatter asks how to download the mobile app, but there are different instructions depending on their phone’s operating system. In order to direct them to the appropriate instructions for their specific device (Apple or Android), have the bot ask them what type of phone they’re using.

AnswerUseCase_Differentiation1.png
AnswerUseCase_Differentiation2.png

Build a decision tree

It's best to plan out your decision tree structure before you start to build the Answers in the bot. If possible, write a draft first, and then build the Answers from the bottom up. Starting with the Answers at the end of the flow means that they will be ready to link to using quick replies when building the Answers above them.

This isn’t a requirement, and you can always build from the top down, just remember to go back and add the quick reply links to the Answers earlier in the flow.

Step-by-step example

The screenshots below show an overview of this process using the menu example. As a reminder, here is what the chatter would see:

AnswerUseCase_Menu.png
  1. Build the decision tree branches first.

    AnswersBuild_Tree1.png
  2. Build an Answer for the top menu.

    AnswersBuild_Tree2.png
  3. In the menu Answer, link the subsequent Answers in the flow using the Quick Replies block. Add each Answer you want to add to create the quick reply buttons that will appear at the bottom of the menu Answer. For more examples, see the Write answer titles and quick replies section of this topic.

    AnswersBuild_Tree3.png

When creating Answers that are part of a decision tree, it's a good idea to make sure your labels are clear so you don't get lost:

  • Answer title

  • Quick replies

  • Content management (tags and/or descriptions)

Write answer titles and quick replies

Creating a succinct but descriptive title is essential for decision tree management in the Answers view. The more complex a tree, the more detailed “breadcrumbs” are required in the Answer titles to know where they fall within the larger sequence or structure.

These Answer titles can become long (e.g., if deep into a decision tree flow) or include details meant for bot management, but not the chatter. Remember to add a quick reply label when creating the Answer, so that it’s descriptive and appropriate for the chatter’s view.

You can write quick reply labels in two places:

  • In the Answer's settings, in the Answer Label field. This label will then be the default text for both quick replies and when the Answer appears in Needs Clarification and Suggestions scenarios.

  • In the Quick Replies block in your Answer. Once you select an Answer, its default label appears. You can override it by typing in a new label for this particular instance in the bot. Doing so doesn't affect the default label.

Note

If you don't write an Answer label, the default label when it appears as a quick reply will be the exact Answer title. Keep this in mind if your Answer title isn’t written for the chatter’s view.

There are a couple best practices to follow:

Use Case: Linear steps

Chatter's view

Include "Part X of Y" to indicate which step the user is seeing, and how many total steps there are in the tree.

Examples

  1. Answer title: Creating account - 1/3

    • Answer label: Creating an account

  2. Answer title: Creating account - 2/3

    • Answer label: Continue

  3. Answer title: Creating account - 3/3

    • Answer label: Continue

AnswerUseCase_LinearSteps1.png
AnswerUseCase_LinearSteps2.png

Use Case: Differentiation or Menu

Chatter's view

Include the title of the main Answer (and any Answers that come before), separated by the > symbol.

Examples

  1. Answer title: Download the app

    • Answer label: none needed; can use the default Answer title

  2. Answer title: Download the app > iOS

    • Answer label: iOS (e.g. Apple iPhone)

  3. Answer title: Download the app > Android

    • Answer label: Android (e.g. Google Pixel)

AnswerUseCase_Differentiation1.png
AnswerUseCase_Differentiation2.png

Manage content using tags and descriptions

Tags allow you to categorize your answers. In the Answer's Settings window, you can create one or more unique tags for each decision tree and apply them consistently to all the Answers in the flow. Once a tag has been created, it can be selected from the list of existing tags when creating or editing Answers. You can create tags yourself, but you will also find that there is a default "Top" tag. This tag will allow you to indicate which answers are the top of a decision tree or answer flow, or put another way, where a chatter begins their journey within a multi-answer flow.

The Description field in the Answer's Settings window can also help you manage decision trees. Consider naming each decision tree (e.g. Journey 1 - Creating an account) and using the Description field to keep track of the name and any other relevant details.

AnswersSettings_Differentiation.png

Searching and filtering by tag or Description

You can search for answers with a particular tag by either clicking on a tag in the sidebar, typing the tag name into the search bar inside square brackets [ ], or using the Filter by tags menu and selecting one or more tags. This will filter the Answers, so that only Answers with all of the tags you searched for appear.

AnswersSearch_Tags.png

The Description field is part of the search results in the Answers View. You can search for the decision tree name that you assigned as the description, or other unique keywords that relate to the decision tree you’re looking to isolate using search/filter.

AnswersSearch_Description.png

Training for decision trees

The top level of a decision tree will always require training. The amount and breadth of its training will depend on how you want chatters to work through the flow:

Option 1: Top-down only

If you want to guide chatters through the flow starting from the top, then the branches of the decision tree should have no training. Instead, the highest level Answer (e.g. a top-level menu) needs to have training that not only would match chatters to the menu, but that also encompasses the topics covered in all of the branches. The chatter can then only see the branches' content by advancing through the decision tree, using quick replies.

This style is most commonly used for linear steps, where a chatter must go through Answers in order from top to bottom, using the quick reply options to proceed.

Example: The 3-part instructions to set up an account

What the chatter sees:

AnswerUseCase_LinearSteps1.png

What the training looks like for the top-level:

AnswerTraining_LinearSteps1.png

What no training looks like for the second (and third) level:

AnswerTraining_LinearSteps2.png

Option 2: Skip-ahead

You can allow chatters to skip a Menu or other higher level Answers if their question is detailed enough to match to a more specific Answer. For this to work best, ensure that the Menu/top level Answer has fairly broad/unspecific training and that the training for the branches include all the details.

If the Menu and the branches aren’t unique enough, then the bot might not be able to confidently differentiate between them, and could offer them all as Clarifications. This isn’t a bad thing, as the chatter will still get to their Answer, it just makes it less straightforward for them.

Example: The data plan Menu

What the chatter sees:

AnswerUseCase_Menu.png

What the broad/general training looks like for the Menu:

AnswerTraining_Menu1.png

What the detailed training looks like for the branches:

AnswerTraining_Menu2.png

Have any questions? Contact your Ada team—or email us at help@ada.support.