Sometimes as you are debugging your bot you might notice something perplexing. The exact same question gets two completely different responses from your Dialogflow Console and from your channel integration (e.g. website bot).
This is usually because the Dialogflow Console still uses your context from the previous conversation you typed in.
That is why you have the Reset Contexts link in the Console.
Make sure you clear the contexts of your previous conversation by clicking on the Reset Contexts link before you start a new conversation.
Why does this happen?
Explaining why this happens requires a good understanding of how sessionIDs work. I will go over that topic in a future post.
But the quick summary is that Dialogflow is using the same sessionID (you can verify this by clicking on the COPY CURL link) across multiple conversations. So it is sending the same sessionID to the REST API, and the old contexts from your previous conversation are still active.
And these old contexts can sometimes cause different answers for the same question depending on whether or not they are active.
On the other hand, in your (say) website bot, you will usually reload the page (and thus change the sessionID) before starting the next conversation, so it has a different behavior than what you see in the console.
- Reader Question: What if a specific system entity isn’t available in all languages in a multi-lingual bot?
- How much can Machine Learning ACTUALLY help with answering free-form questions?
- Dialogflow Toolkit vs MBD Membership
- Dialogflow Knowledge Connector : Pros and Cons
- How to integrate Telegram with Dialogflow
- Why I avoid using slot filling (required parameters) in Dialogflow
- Free Tool: Convert your WordPress website into a Dialogflow FAQ chatbot
- Dialogflow Mega Agent Tutorial
- Reader Question: Will followup events work when an intent has an input context?
- How to learn Dialogflow in a week