DialogFlow ES

How to bulk upload intents from a CSV file in Dialogflow

If you are creating a large FAQ chatbot in Dialogflow, typing out all the intents one by one can be a slooooooooow and painful process. Thankfully, Dialogflow has an agent ZIP file import feature, and it is possible to programmatically create this ZIP file. In this article, I describe how you can type out your intent information into a spreadsheet and then use a CSV export of your spreadsheet to generate a Dialogflow agent ZIP file. I also discuss the different aspects you need to consider as you try to use this approach for more complex FAQ bots. By following this template, you should be able to build a tool which can create a Dialogflow FAQ chatbot with the push…

Conversation Design | DialogFlow ES

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? My simple definition would be: The chatbot should keep track of what the user said before, and the conversation should flow accordingly. By the way, this is surprisingly hard to do. So much so that the Dialogflow team has created an entirely new version of Dialogflow called Dialogflow CX which has a pretty sharp learning curve. As you build contextual chatbots, you would have to keep track of parameters (user inputs such as their name, location etc) so that you can pass them between your intents. There are three primary ways to pass parameters between intents. 1 Use followup intents…

Debugging | DialogFlow ES | Tools

Do this when Dialogflow ES matches the wrong intent

Is your Dialogflow bot triggering the wrong intent? I see questions such as these on forums sometimes: In this article, I explain a few things you can do when you need some help figuring out why your Dialogflow agent is behaving like that. This article only applies to Dialogflow ES bot and not for CX bots. Understand Candidate Intents The concept of candidate intents is a very powerful one in Dialogflow ES bots. What is a candidate intent? It is easier to understand candidate intents by understanding non-candidate intents. If an intent cannot match at a given step in the conversation because it has an input context which is not active at that point, it cannot be a candidate. Every…

DialogFlow ES | REST API

Understanding Dialogflow service account roles and their use cases

As you try and use Dialogflow’s REST API, one of the things you will notice is that the documentation talks about “service accounts”. In this article, we will see what these service accounts are and how they are typically used. Instead of going over any big theory (which is also important to fully master the REST API), I will just explain the basic use cases so you have a simpler starting point to understand how they work. What are Dialogflow service accounts? Simply put, a service account provides a way to call Google APIs from your code. Here is the official definition. So we can use these service accounts to access your Dialogflow agent from your code. How to create…

Courses | DialogFlow ES

Course Discounts

I am planning to have substantial discounts on my courses and other products for Thanksgiving 2020. If you are interested in getting email notifications, please sign up to my MBD Deals on Gumroad. You will only get the discount email if you sign up Also, the only folks who will get discount emails are those who sign up for it. I am not going to be announcing these discounts anywhere else. Also, each discount email will only be sent out once, and you will usually have 24-36 hours before the discount expires. So I should pay some money now, so I can pay MORE money later? I know that’s what you are probably thinking, but hear me out. ๐Ÿ™‚ There…

DialogFlow ES | Python | Webhooks

How to debug Dialogflow Python webhook using ngrok

In this tutorial I will explain how you can debug your Python Flask webhook for your Dialogflow bot using ngrok. I use the PyCharm professional IDE (you can also download the free PyCharm community edition) in this tutorial. 1 Create a new Pure Python project You can just start with a regular old Python project. No need to do anything more fancy. 2 Install flask inside the virtual environment Open the Terminal inside your PyCharm IDE. Use pip install Flask to install the Flask web framework inside your virtual environment. 3 Add a new Python file and call it app.py Create a new Python file called app.py. Your project structure should look like below. Add the following code into your…

Uncategorized

EU VAT MOSS Tips for online course creators

Are you confused by the EU VAT MOSS requirements? In this article, I will summarize all the research I did, as well as my recommendations if you are planning to create an online course in 2020 (and beyond). I am also making the following assumptions: you already have a day job which isn’t selling online courses you are mainly interested in course sales as a side income you prefer to be compliant with tax policies ๐Ÿ™‚ Why? Because if it is your full time business, or you have enough time to do VAT taxes by yourself, you can spend a lot of time and become compliant. Obviously there are some online course creators who do just that. But if you…

DialogFlow ES | Mobile App

How to integrate Dialogflow into your Flutter app

This is not a tutorial. But I want to provide some pointers because it seems people are not clear on an important aspect of Dialogflow integrations. I got this question on YouTube: The 4 Layers of a Dialogflow bot I have explained the concept of the 4 layers in a Dialogflow bot before. In the case of a Dialogflow + Flutter (mobile app) integration, you are responsible for both the middleware layer AND the UI layer. This is what makes it so complex (or at least so much more work). How to create the integration So here is what you need to do to integrate Dialogflow into your Flutter app: 1 Create the middleware code The middleware code is responsible…

DialogFlow ES | REST API

Get your DialogFlow agent to initiate the conversation before user types a message

First published: Aug 2017 | Last Updated: Oct 2020 So let us understand the question: When you work with Dialogflow you notice that it follows the “user types something -> agent replies with an answer” sequence. Suppose you wish to get the agent to say something before the user types anything, how do you do it? Example In my CourseBot (seen above), I initiate the conversation by using the same ideas described on this page. Dialogflow Built In Welcome Events When you click inside the Event textbox in Dialogflow, you will notice in the autocomplete a bunch of CHANNEL_WELCOME events. What are these welcome events? In principle, this is the feature you should use to initiate conversations on different channels….

Dialogflow CX

Why doesnโ€™t Dialogflow CX support more 1-click integrations?

A reader recently asked me if Dialogflow CX supports the Dialogflow Messenger integration. Answer: It doesn’t. Update : Now it does support Dialogflow Messenger. Most of the other 1-click integrations from Dialogflow ES are still not available. But more importantly, CX supports almost no integrations out of the box. I think it is important to understand why that might be the case. Unlike ES, there is no free tier in CX I wrote about this in my article comparing Dialogflow ES and CX, and while my initial pricing calculation was off by quite a bit (and was duly corrected by a commenter), the main point is that there is no free tier in CX as of this writing. (There is…

DialogFlow ES

Dialogflow Quickstart Templates

Quickstart templates are small (micro) bots which are designed for a very specific task. There are three parts (files) in these templates usually – a video demonstrating what the bot does, a video demonstrating how to build the bot, as well as the agent ZIP file for the bot. This way, you can download the agent ZIP file and import it into your Dialogflow console and follow along with the video which shows how to build such a bot. There are multiple benefits of using these Dialogflow Quickstart Templates to learn how to build Dialogflow bots they are small and self-contained, so easier to follow what is going on they do not contradict each other. Since all these bots are…

DialogFlow ES | Website Bots | Zobot

Dialogflow Zobot: Selection Triggers the next intent

In this tutorial, I will explain how you can move to the next intent based on a button selection in a Dialogflow Zobot. [1] What we are building We will be creating a bot which provides coupons for courses on my course website (to begin with. More features will be added later). Flowchart Let us take a look at the flowchart for this chatbot. Please take some time to go through my article on Dialogflow flowcharts to get a background on the conventions I have used in this flowchart. In addition to my usual conventions, I use two more conventions in this flowchart: a) The triple slash (///) acts as a separator and indicates a new chat bubble will be…