Better Dialogflow ES Bots
REST API
Webhooks
Slot filling
Context Lifespan
Conversation Design
Bot frameworks
Mobile
Debugging
Tools
Machine Learning

Conversation Design Overview

Four ways to set parameter values in Dialogflow

“what is the correct way to modify parameters using v2 from webhook? When I change them inside “outputContexts” it works. But, what about an intent which is not using context?”

How to add the Default Fallback intent to autogenerated Dialogflow bot

Using the BotFlo app, you can autogenerate different kinds of bots. BotFlo doesn’t automatically add a Default Fallback intent in your agent. In this article I explain how you can easily add the Default Fallback intent.

The 5 Step Training Process for Dialogflow FAQ Bots

A good training process (that is, the process of defining training phrases) can help you build a robust Dialogflow bot. You can actually break this process down into 5 steps. Breaking it down into a 5 step process has two advantages – it acts as a checklist when you are creating your Dialogflow bot. Second, by breaking down a complex process into individual steps, it helps you to keep things simple.

3 ways to pass parameters between intents in Dialogflow ES

One of the big advantages of Dialogflow is that you can build contextual chatbots using it. What are contextual chatbots?

When NOT to use follow up intents in DialogFlow

There are some situations where you shouldn’t use followup intents, because it will not work. There was a chatbot called the Florist bot that was originally used as an example bot in the Dialogflow documentation (when it was still called API.AI).

Three types of Dialogflow contexts

You might not have realized this, but there are actually three types of Dialogflow contexts. And I recommend only one of them.

Extending context duration in Dialogflow

“Yeah i do have undeterministic values for my context variables. I’m writing a Chatbot for my master thesis. I do have different courses – the user is able to get information about it. I use the context variables to track about which course he is now talking about and which intents i have to use (intends that are shared among courses). If the user wants to change the topic to another course i’m setting all the context variables to 0 and initialize the new ones in the new intent and topic.”

Managing session-vars

When you are collecting a set of inputs from the user, you should use a context with a very large lifespan as a sort of a “session variable”. I refer to this as session-vars in many of my videos. There are three things you should remember when using session variables.

Entry vs Non-entry intents

In a previous series, I talked about the C = T + F + S formula for analyzing your Dialogflow chatbot.

The explicative approach to Dialogflow development

I was trying to explain to a coaching student that my approach to Dialogflow development was somewhat opinionated, and when they asked me to elaborate, I realized it would be good to have some term which will capture my opinions.

Read this before building a multi-lingual Dialogflow chatbot

Recently, I was a bit surprised to find out that not all Dialogflow system entities are equally supported in all the languages that Dialogflow supports.

Handling unexpected user input in Dialogflow

As you might know, I don’t recommend using slot filling. This leads us to a question: one of the benefits of slot filling is that you can re-prompt if user provides the input in an unexpected format.

Do you really need that Dialogflow entity?

This is an interesting question, mainly because the person asking it assumes that they need an entity for the type of insurance. (I looked up empresarial – and it means business)

Why you need to add an input context to (nearly) all your intents

This article is meant for multi-turn conversation bots. If you are building a simple FAQ bot which answers questions and doesn’t get any followup questions, it doesn’t apply in that case.

Some tips for choosing the correct entities in Dialogflow

Recently, on the Dialogflow Product forum, there was this question:

Generic filters
>