Website Name Change
I have changed the name of this website from Mining Business Data to BotFlo. I am offering a 70% off discount on my Dialogflow CX course (till April 15th 2021) for people who can help me spread the word about my new website.
In this article, I will show you 4 features in Dialogflow Messenger which are somewhat obscure – in the sense that many people use the Dialogflow Messenger integration without really learning about them. And in my experience, almost no one knows ALL four of them.
1 Clicked suggestion chips are recognized as normal text message
Recently, I was on a live chat with someone who was interested in the BotFlo app.
And I pointed out that instead of using the List response, he could just use the suggestion chips. At which point he said “Hm, clicked suggestion chips will be recognized as normal text message?”
Yes they are.
Here is an example from my CX bot which helps you choose between ES, CX and Actions Builder.
2 Use the button type for clickable hyperlinks
The Dialogflow Messenger button type includes an Event in the custom payload. Unfortunately, this is quite misleading.
If you remove the Event field, it behaves just like a regular clickable hyperlink and can be used for that purpose if you are building an FAQ bot which responds with hyperlink answers.
3 Use the df-response-received event for conversation logs
In the Dialogflow Messenger Pros and Cons article, I mention that there are enough “hooks” in Dialogflow Messenger to extend its functionality in some important ways.
A perfect example of this is to create logs of your conversations. You can use the df-response-received event, which contains the full JSON payload of both request and response, and can be used to create fairly comprehensive conversation logs.
4 Get a quick preview using renderCustomCard function
Typing out the rich response JSON can be quite tedious in the Dialogflow Messenger.
When the user clicks on the Preview button, you see that the JSON is instantly rendered in the chat widget on the same page. I do this by using the renderCustomCard function.