Sometimes I see questions like these in the Dialogflow forum. So, I got one intent working. How can I now “move” the conversation to the next intent? Answer In Intent1, declare an output context called contextA. In the next intent you want to fire, use contextA as the input context. You have now chained Intent1 and Intent2 using contextA. Is that all? There is quite a bit more. But that’s the basic idea for every intent you are trying to chain into the conversation. A practical example I need to get three values from the user – their given name, their last name and their zip code. I will be using the naming convention I mentioned in my previous post. […]
Do you capture user input in your chatbot? For example, do you ask them to provide their name, or email, or other information? I have recently started using the following convention in the bots I am building (as well as advising on). The intent Suppose you have an intent which should get user’s email address. You can, of course, name it “EmailAddress”, but that isn’t very obvious. Obvious to whom, you might ask. Where you use it The key, of course, is where you use the intent name. One use for the intent name, for example, is in the test console. Looking at the intent name, you can tell what intent was just mapped. When you receive user input, you […]
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 […]
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 […]
Today on the Dialogflow forum I answered this very question. Here is the answer, in one screenshot:
I have been writing a series of articles based on some of the common knowledge gaps I see in the clients that I help out with coaching. One of these knowledge gaps is that they don’t know about the Prebuilt SmallTalk agent.
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, […]
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.
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 […]