DialogFlow ES

Dialogflow (API.AI) Skype integration

As you might know, Skype is one of the 1-click integrations available for Dialogflow. But the real work begins after you add the 1-click integration from the console. This article is focused on two main topics: How to render rich controls (such as a card) on the Skype bot How to get user’s responses to those rich controls (such as their button clicks) back into your Dialogflow context Prerequisite: I expect that you have already created a Skype bot and you have gotten the basic conversation flow working inside the Skype bot. Rendering a rich control on the Skype bot This is based on the following thread: https://discuss.api.ai/t/custom-payload-generated-programatically/10184 There is an important thing to consider: do you need just a…

DialogFlow ES

The four types of DialogFlow users

One of my clients had recently mentioned why she chose DialogFlow. “It just seemed to be at the right level of abstraction” That was a good way to put it, but actually I think there are four types of abstraction within DialogFlow with four corresponding types of users. For anyone who wants to work in Dialogflow, it is very good to know which type you are as you choose team members to work with. Type 1 The non-technical user This might be, for example, a business owner or a marketing person who just wants things to work. They are not interested in getting into the weeds of how Dialogflow works. For example, I got this very nice review on Amazon…

DialogFlow ES

How to add a user or invite a developer in Dialogflow (API.AI)

Today on the Dialogflow forum I answered this very question. Here is the answer, in one screenshot: Share feature Interestingly, the Share feature has been around for nearly 4 months. I wrote about it when it was released. Funnily enough, when thinking of the title back then, I actually used the suggestions at the bottom of the Google search results to choose a title 🙂 But looking back, I could have just used a more conversational title. In case it doesn’t work One of the annoying things about this feature is that it doesn’t actually send an email notification to the person you just added (???). You need to send them an email to tell them you have added them….

DialogFlow ES

DialogFlow Web chatbox: Some UI design ideas

To be very clear, this article is not about web design. I am not a web designer, or for that matter a designer of any sorts. I am a DialogFlow trainer/coach/consultant, and I am writing this article after a few attempts to create a web based chatbot based on DialogFlow. You can see plenty of articles on this broad topic on this site, and this article is a proposal based on my learnings till date. (And it will probably be a bit opinionated) My first chatbot The very first chatbot I built with DialogFlow was a sports stats chatbot for getting records about the sport of cricket. It is actually a chatbot with high utility value (by which I mean,…

DialogFlow ES

DialogFlow tutorial: Capturing non-English names from user input

Update Nov 2019 : This tutorial was written in Oct 2017. Dialogflow has since introduced system entity extensions, so you can use that instead. However, I have left this article as it is because the other stuff I talk about (overuse of @sys.any) is still a valid point. In a recent coaching call, a client of mine had some difficulty capturing names using the @sys.given-name entity. In fact, the name which he tried and which failed, was mine 🙂 He replaced the name with @sys.any and was able to capture the name. So he got curious: why not just use @sys.any everywhere? It is not a good idea, and this article will describe why. Capturing non-English names First of all,…

DialogFlow ES

DialogFlow (API.AI) Entity Autocomplete

Update Dec 10th 2018: Template mode is now deprecated Recently, I was showing a coaching client how to use the template mode to capture a person’s name. I walked this client through how to switch to template mode, and how to use the @ symbol. Then I showed how adding a couple of letters after the @ symbol would bring up an autocomplete. That is, the fact that the autocomplete popped up on the screen was an easy way to figure out whether you are in example mode or in template mode (see below for example). As I explained this, he went Oh, so that’s what it is! I always wondered how they got that autocomplete thing to show up…

DialogFlow ES

DialogFlow tutorial: Setting context from your inline webhook using contextOut

One of the nicest things about the new inline webhook editor in DialogFlow is that it allows people who create tutorials to make tightly focused ones instead of wrestling with getting their webhooks deployed. The problem A little while back I wrote a post about getting the user’s complete birthdate in DialogFlow. Turns out, the issue is somewhat non-trivial. Since DialogFlow will accept a date with only a month and a day (e.g. March 15th) as a valid input for the @sys.date entity, the user may not enter a year. The real issue, of course, is that DialogFlow will automatically append the current year as the year in the entered date. This is actually not missing information, but it is…

Conversation Design | DialogFlow ES

How to get a user’s birthdate in DialogFlow (API.AI)

A reader recently asked: How do we create a script that will ask for a date of birth? My immediate thought was, “Oh, that’s easy. You just ask for the date and use the built-in system entity etc”. And quite stupidly, I also acted on that thought and sent the email out. 🙁 But that doesn’t work It is more nuanced than that. Of course! Turns out, because API.AI is so flexible in the way it parses dates, if the user were to respond to that question with just the month and the day API.AI automatically assumes the current year. Now, at the rate at which kids are adopting technology, it is possible that a kid born this year actually…