In this tutorial, I explain how you can use the Dialogflow Messenger to create a checklist bot.
A checklist bot walks the user through a checklist of items.
What we are building
We will be building a bot which checks if the user is familiar with the 10 must know (in my opinion) Dialogflow features.
You can interact with the live bot here.
The image below is the flowchart for the checklist bot. If you would like to learn about the conventions used in the image, take a look at my article on Dialogflow flowcharts.
Note: the picture above is not the full flowchart. You can see that there are 21 collapsed nodes just under the intent named 3.bulkuploadentities.YES. The full flowchart will be too large to paste as an image into an article.
However, the flowchart is very symmetrical, and the same patterns repeat through the entire flowchart. Once you understand how the existing intents pictured in the image work, it is quite easy to extrapolate the flowchart to the entire bot.
Now let us take a look at the intents in this bot.
Default Welcome Intent
Note the following:
- the intent contains the Welcome event
- it includes the training phrase "Start Over"
- it asks the first question "Do you know what the ML Threshold is?" followed by the rich response buttons for Yes and No options
When the user answers No to the first question, we provide them a link (an info card response) with a link to read an article which discusses the must know features in Dialogflow. In other words, as soon as the user answers No to one of the must know features, we help them learn more about it.
Also notice that we allow the user to start the conversation again at the end, using a single suggestion chip.
On the other hand, what if the user answers "Yes" to the first question?
We then move to the next item on the checklist (the next feature) and ask them about it.
If the user answers "No" to the second question (after answering "Yes" to the first, remember), we will once again show them the same article which explains the must know Dialogflow features.
The premise is that the user will keep checking items off the list (i.e. keep answering Yes), but if they cannot check any of the items in the list, we will provide them a link to the article.
And you keep repeating the same pattern for all the items in the checklist. I don't think it is necessary to paste the intent definition for every single intent. 🙂
Let us look at the final two intents next.
The conversation ends when the user reaches the 10th item in the list.
Note that we provide an appropriate message (a sort of congratulations) to the user if they answered "Yes" all the way. And remember that the intent above can only fire if the user answered Yes to all the items in the list.
Download agent ZIP file
You can get the agent ZIP file from my Dialogflow Messenger Example Bots course.
- Dialogflow Messenger Quiz Bot
- Dialogflow Zobot: Selection Triggers the next intent
- Integrating Dialogflow with Zoho live chat
- 5 things you cannot do using the Dialogflow Messenger integration
- Dialogflow Architecture
- Dialogflow Python webhook tutorial
- Dialogflow training
- Dialogflow vs Lex vs LUIS vs Watson vs Chatfuel
- Convert your WordPress website into a Dialogflow FAQ chatbot
- Dialogflow Messenger Interactive Learning Bot