Using the Dialogflow Facebook Messenger integration, you can create a Facebook Messenger bot to interact with your end-users.
Limitations
Only the default agent language is supported by this integration.
How it works
This is how the integration works:
- You create a Facebook app that uses the Facebook Messenger platform .
- You configure the Dialogflow integration and Facebook app, so that they communicate with each other.
- The Dialogflow integration sends messages to the end-user by using the Facebook Messenger API .
- The Dialogflow integration receives messages from the end-user by acting as the Facebook Messenger Webhook .
Setup
To set up the integration:
-
Follow the steps to create a Facebook app: Facebook App Development .
-
Set up the Facebook app to use the Facebook Messenger Platform. Follow steps in the Setting Up Your Facebook App documentation to accomplish the following:
- Add the Messenger Platform to your Facebook app.
- Subscribe your app to a Facebook page. You are provided with an access token at this step. Copy this value. This token will be used to configure the integration from the Dialogflow Console.
- Do not configure the webhook or test your integration yet.
-
Configure the integration from the Dialogflow Console:
- Go to the Dialogflow ES Console .
- Click Integrationsin the left sidebar menu.
- Click Facebook Messenger.
-
A configuration dialog opens:
- Show old callback URL: If this toggle is shown, it defaults to off. This is a temporary option to accommodate a recent modification to the Facebook Messenger API. Do not change this toggle unless instructed by Dialogflow support. After all agents have been updated, this option will be removed.
- Callback URL: Copy this value. This will be used to configure the Facebook Messenger Webhook.
- Verify Token: You can enter any private token you desire. Copy this value. This will be used to configure the Facebook Messenger Webhook.
- Page Access Token: Enter the access token you copied when creating the Facebook page.
- Start: Click to start this integration service for your agent.
-
Finish setup of the Facebook app and test it. Follow steps in the Setting Up Your Facebook App documentation to accomplish the following:
- Configure the Facebook webhook for your app. Use the Callback URLand Verify Tokenvalues you copied above. Be sure to enable messagesand messaging_postbacks.
- Test your app.
Events
The following events are invoked by this integration:
Event | Description |
---|---|
FACEBOOK_WELCOME
|
Triggered when an end-user starts a conversation with your bot. |
Rich response messages
This integration translates some rich response messages messages to Facebook Messenger Platform message types .
Image responses
Image responses
are sent to Facebook Messenger as Facebook Messenger file attachment messages
.
The message.attachment.type
value is set to image
.
The following formats are supported:
- jpg
- png
- static gif
- animated gif
Card responses
Card responses are sent to Facebook Messenger as Facebook Messenger generic templates .
Quick reply responses
Quick reply responses are sent to Facebook Messenger as Facebook Messenger quick replies .
Custom payload responses
To send other types of Facebook Messenger messages, you can use a custom payload .
The general format of the custom payload looks like:
{ "facebook": { message } }
In place of message
, provide the Facebook Messenger message
object.
For details of the message
object, see the Facebook Messenger API reference
.
For example:
- Send an audio link:
{ "facebook": { "attachment": { "type": "audio", "payload": { "url": "https://example.com/audio/test.mp3" } } } }
- Send a playable video:
{ "facebook": { "attachment": { "type": "video", "payload": { "url": "https://example.com/video.mp4" } } } }
- Send a file:
{ "facebook": { "attachment": { "type": "file", "payload": { "url": "https://example.com/file.pdf" } } } }