How to do Dialogflow Integrations with facebook messenger? - dialogflow-es

I follow the instruction provided by diaglogflow as the below, however, it did not work.
The "Get Started" button do pop up for my page's messenger, but click on it or say words in the default welcome message (I did set the intent as Facebook welcome) doesn't trigger any response.
Do I miss any setting?
Pic.1 Get started do appear but no response:
Steps provided by diaglogflow:
Get your Facebook Page Access Token and insert it in the field below.
Create your own Verify Token (can be any string).
Click 'START' below.
4.Use the Callback URL and Verify Token to create an event in the Facebook Messenger Webhook Setup.
Pic.2 Integration setting in dialogflow(left) and messenger setting in Facebook(right):
Pic. 3 Default welcome intent in diaglogflow and it's response(I had clicked the save button):
Pic4. Messenger set up for Webhook version

It seems you've configured the webhook for your app. Make sure you've subscribed your app to a Facebook Page.
Click 'Add or Remove Pages' and select the pages you want to
subscribe your app to. Your webhook will receive events for each
selected page when people chat with it through Messenger.
In the 'Access Tokens' section there will be a Generate Token button
for each authorized Page. Make sure to save the access token, it's
needed to send messages using the Send API.
For each authorizedPage, the 'Webhooks' section will contain the fields the
app can subscribe to. Click on "Add Subscriptions" to select desired fields.
At a minimum, we recommend you choose messages and messaging_postbacks to get started.
Don't forget to choose message_postbacks. If still you face the issue re-configure the webhook. In addition test your messenger response from dialogflow from right side try it --> hi/hello --> and click default response change it to messenger if you can see the expected message from response tab that means you are missing something from page integration. I am attaching a snapshot of checking messenger response from dialogflow:
official documentation

To add Tasnuva's answer, the subscription button is in the field of:
"messenger setting--> webhooks--> add/remove page right side button."
I was once confused by the add/remove page at the access page token field.
Click the button in the red square to edit it:

Related

DialogFlow Manual Handover to Facebook Messenger

I've successfully setup a DialogFlow bot which integrates with Facebook Messenger.
Is it possible for a human user to log into the Facebook Messenger inbox and take manual control over the conversation?
When I log into the Facebook Messenger inbox I've been unable to stop the bot from replying to the user and as a result it ends up being a 3 way conversation between me, the user and the bot.
This usecases makes sense but is not well documented. Facebook mentions this in the handover protocol documentation:
Taking Thread Control From Facebook Page Inbox
For Messenger experiences that enable live chat via Facebook Page Inbox, the handover protocol allows the Page admin to manually initiate a take thread control event by moving the conversation from 'Done' to the 'Inbox'. It is important to note that the thread would immediately be passed to Facebook Page Inbox irrespective of the current app’s role.
I guess this is what you need.
What you need to do is this:
Find the conversation you want to manual control
Check 'Move to Done'
FInd the conversation again by adding the 'done'-filter
Click the Move to Main button (the envelop in the top right
corner)
Remove the 'done' filter to find the conversation
from now on, the inbox has control and your chatbot will not respond if the user types a message. You will be the only one responding
If you need the chatbot to manage the conversation again, just click on the Move to Done-checkmark and the chatbot has control again.
Ps: the documentation also suggests you to subscribe to two webhooks (Standby and messaging-handovers). To be honest: for me it worked with and without subscribing to these webhooks

With a dialogflow chabot, are "actions on Google" available in Slack?

I did a bot that does a quiz. So far if I'm able to try talking to it through Dialogflow interface:
I need to click on "actions on Google".
But I am not able to do retrieve the same answers in Slack.
I did the following:
In the Slack app, go to the 'Bot users' section and click the 'Add a Bot User' button.
In the Slack app ‘Basic Information’ section, copy the 'Client ID', 'Client Secret' and 'Verification Token' and paste their values into the respective fields below.
Start the bot.
Copy the 'OAuth URL' value below and paste it into the 'Redirect URL(s)' field from the ‘OAuth & Permissions’ section of your Slack app settings. Save URLs.
Copy Events Request URL from the field below and paste it to Request URL in the ‘Events Subscription’ section of your Slack app.
Enable events in the ‘Event Subscriptions’ section.
Select necessary events in "Subscribe to Bot Events" section for example message.im, message.group, message.channel, im_created. These events will define which message types (direct, in channel, etc.) your bot will react to. Save changes. I selected message.im, message.groups, message.channels, im_created
In the Slack app settings, go to 'Manage Distribution' and add the bot to your Slack team using the 'Add to Slack' button.
In Slack I added on the left bar Dialogflow bot.
Are actions in Google used for a dialogflow chabot available when talking to it in Slack?
No, actions on google features are not available in Slack. This is because actions on google are features are used to create a chatbot for Google Assistant. Each time you select Actions on Google in the chat window of Dialogflow, you preview what your conversation looks like for Google Assistant conversations.
Since you have already created a Slack bot and integrated it with your Slack channel, so you should be able to send any responses that you create in the Default or Slack tab of the responses to your bot. Just click on the + sign in the response tab and add Slack as a channel of your bot, then click on Add Response to start creating responses just for Slack using Dialogflows UI.
If you want to use other message types in Slack using Dialogflow, have a look at the docs. It lists how you can create Rich responses for Slack bots.

I can't change telegram token in Integration section of Dialogflow. "Bot was not stopped"

I have Dialogflow support bot integrated with telegram bot for our customer support.
All worked fine.
Recently token of telegram bot was changed.
Of course, telegram bot now doesn't answer because token was changed and now it is not linked with Dialogflow.
And I can't modify token in Dialogflow - field with token is grey-colored and cannot be edited.
I can only click STOP in Telegram integration window where I can see "Bot was not stopped".
Any suggestions?
thanks!
Until this publication did not resolve, it is a mistake of Dialogflow. According to this link, you have to create a new agent and link a new token to a new Telegram bot to work ... that is, redo everything again.
To update the token you can follow these instructions:
Go to the "Integrations" UI, and select "Telegram"
Use the blue toggle in the right corner to deactivate the integration with telegram (See the blue toggle in the image for reference)
Click on the toggle again (it is now grey) to activate the integration
You can now update the token
After making the changes in the token, select "START"
Taken from Google Issue Tracker

Dialogflow Console doesn't show Facebook Messenger option for responding

Here's what I mean. The only response from Dialogflow is shown.
I have integrated facebook messenger, and it works fine when testing with the messenger. I want to access the JSON data that Dialogflow console provides when I'm interacting with messenger.
It will only show up, if you have added something explicitly for facebook in the facebook response tab or the webhook response.
You can however find the JSON data from your facebook interactions in the history. Click on the three dots next to a response and click raw interaction log

Change bot user name in slack for dialogflow bot

I am recently working on dialog flow bot (API.ai)
I have integrated my chatbot with slack from API.ai. When I start conversation and continue chatting, I found that bot username displayed in slack shown as Dialog flow Bot. But I have configured the name as treselle. How to change it?
Please find the screenshot below:
Yes! you can change it.
Go to your slack chatbot application.
Click on about tab.
enter image description here
Click on settings button.
Below "Bot user", select edit bot name button beside the bot name.
I'm not sure it's possible or at least I couldn't make it neither.
If you're a developer too, here is what you can do:
create a Slack app and bot, with enabled events subscriptions that will call your application webhook each time a message is sent to your bot
create a DialogFlow agent that you will call using 'query' API
create your own web application with a webhook route called by Slack, from which you can call DialogFlow API
This way you'll be able to customize every single details, including username, description, icon of the Slack bot, and send messages with rich content!
Here are more details: https://blog.eleven-labs.com/en/en/replace-erp-by-slack-bot-with-dialogflow-and-symfony/
I was wondering the same thing. Apparently you can't change the name of the bot until it is public. Here's a quote from the documentation...
Once logged in, navigate to the instance and locate the bot user called #dialogflow-bot.
Note: In order to change the name of the agent or add a logo, you'll need to make the bot public.
https://dialogflow.com/docs/integrations/slack

Resources