- Step by Step Dialogflow Part 1 – Introducing the FAQ bot
- Step by Step Dialogflow Part 2 – Preparing the FAQ list
- Step by Step Dialogflow Part 3 – Creating an agent from the FAQ list
- Step by Step Dialogflow Part 4 – Intent Mapping
- Step by Step Dialogflow Part 5 – The Wimbledon Finals bot
- Step by Step Dialogflow Part 6 – Populating the entities
- Step by Step Dialogflow Part 7 – Declaring Intents with Entities
- Step by Step Dialogflow Part 8 – Completing the WFBot Intent definitions
- Step by Step Dialogflow Part 9 – how Intent Mapping works under the hood
- Step by Step Dialogflow Part 10 – The Vending Machine Bot
- Step by Step Dialogflow Part 11 – Using contexts to maintain state
- Step by Step Dialogflow Part 12 – Using input and output contexts to manage state
- Step by Step Dialogflow part 13 – Webhooks
- Step by Step Dialogflow part 14 – The florist bot
- Step by Step Dialogflow Part 15 – Identifying intents in the florist bot
- Step by Step Dialogflow Part 16 – How contexts help intent mapping
- Step by Step Dialogflow Part 17 – Follow up intents
- Step by Step Dialogflow Part 18 – Dichotomous key bot
- Step by Step Dialogflow Part 19 – Creating the vending machine bot with follow up intents
This step by step guide was written when Dialogflow was still API.AI. Over time, I have learnt a lot more about how Dialogflow works, and distilled my learning into a simpler and more straight forward Intro to Dialogflow course (free). I have left this guide as is for people who have linked to it, but I recommend that you to learn from the newer material.
One of the examples already provided in the API.AI documentation is an example bot for a florist shop. I really like this example as a teaching tool because it covers so many different features that you will use as you are building out your chatbots. But the biggest reason why I like this example is that someone made the effort to post the agent's ZIP file online so you can download it, create your own agent with it and play around to get a better picture of the different concepts.
In the excellent book Bot Business 101, Ekim Kaya mentions the following:
"My biggest recommendation is to have a very, very detailed conversational flow as to how the scenario will be executed....Intent management is not easy and if it does not work on paper, it will not work on the computer either."
Ekim has been in the bot business for a long time, and you can see from the book's reviews that he knows what he is talking about.
So designing the bot's conversation flow in a flowchart is a good idea.
Florist shop flowchart
The florist shop example from API.AI has a detailed conversational flowchart:
Florist shop conversation flowchart using XMind
I have re-created a flowchart for the florist chatbot using XMind. There are some advantages of using XMind for creating the conversation flowcharts for your chatbot. For example by adding input and output contexts into the flowchart itself (but distinguishing them via a different shape), you can add a ton of detail to the conversation flowchart without making it too difficult to follow. I will write about conversation flowcharts in detail in a future article.
If you would like to get a copy of the mindmap file (.xmind format) - you can get it from my MBD Resources course (chapter 11). I have left out a couple of branches for clarity.
Florist shop Agent ZIP file
Once you are done importing the agent ZIP file, you can follow along with the rest of the guide. The next part talks about identifying the entities and intents from the flowchart.