Meta Messenger インテグレーションを使用すると、ユーザーとやり取りする Meta Messenger bot を作成できます。
仕組み
統合の仕組みは次のとおりです。
- Meta Messenger プラットフォームを使用する Meta アプリを作成します。
- Dialogflow CX インテグレーションと Meta アプリを構成して、相互に通信できるようにします。
- Dialogflow CX インテグレーションでは、Meta Messenger API を使用してユーザーにメッセージを送信します。
- Dialogflow CX インテグレーションは、Messenger プラットフォームの Meta Webhook として機能することで、ユーザーからメッセージを受信します。
設定
統合をテストする前に、プロジェクトで課金が有効になっていることを確認してください。
統合を設定するには:
- 手順に沿って Meta アプリを作成します。Meta アプリ開発
- Meta Messenger プラットフォームを使用するように Meta アプリを設定します。Messenger プラットフォームの Meta Webhook のドキュメントの手順に沿って、次の操作を行います。
- Messenger プラットフォームを Meta アプリに追加します。
- アプリを Meta ページに登録します。ページ登録で
messagesとmessaging_postbacksが有効になっていることを確認します。 - このステップで提供されたアクセス トークンをコピーします。このトークンは、Dialogflow CX コンソールからインテグレーションを構成するために使用されます。
- まだ Webhook の構成、または統合のテストは行わないでください。
- Dialogflow CX コンソールから統合を構成します。
- Dialogflow CX コンソールに移動する。
- ナビゲーション メニューで [管理] タブを選択します。
- [統合] を選択します。
- [Meta Messenger] タイルの [Connect] ボタンをクリックします。
- 構成ダイアログのフィールドに入力します。
- App secret: [App Dashboard Basic Settings] でアプリ シークレットを入力します。
- Verify token: 必要なプライベート トークンを入力します。この値をコピーします。これは Meta Messenger の Webhook を構成するために使用されます。
- Page access token: Meta アプリ設定時にコピーしたアクセス トークンを入力します。
- Enable get started ボタン: このチェックボックスをオンにすると、Get started ボタンが有効になります。
- Webhook URL: この値をコピーします。これは Meta Messenger の Webhook を構成するために使用されます。
- Start: このチェックボックスをオンにすると、エージェントの統合サービスが開始されます。
- Meta アプリのセットアップを完了してテストします。Messenger プラットフォームの Meta Webhook のドキュメントの手順に沿って、次の操作を行います。
- アプリの Meta の Webhook を構成します。上記でコピーした [Webhook URL] と [Verify token] の値を使用します。ページ登録で、
messagesとmessaging_postbacksを必ず有効にしてください。 - アプリをテストします。
- アプリの Meta の Webhook を構成します。上記でコピーした [Webhook URL] と [Verify token] の値を使用します。ページ登録で、
イベント
この統合によって、次のイベントが呼び出されます。カスタム イベント ハンドラを作成して、イベントがトリガーされたときのアクションを定義できます。
| イベント | 説明 |
|---|---|
FACEBOOK_WELCOME |
エンドユーザーが Meta Messenger の [Get Started] ボタンをクリックしたときにトリガーされます。 |
FACEBOOK_MEDIA |
エンドユーザーのメッセージに添付ファイル(音声、画像、動画など)が含まれている場合にトリガーされます。 |
Get started ボタン
Meta Messenger の [Get Started] ボタンを設定します。
この統合サービスを有効にするときに、[Enable Get Started Button] を切り替えます。
この統合サービスでは、Messenger Profile API を呼び出してボタンを有効にできます。
curl -X POST \ -H "Content-Type: application/json" \ -d '{"get_started": {"payload": "FACEBOOK_WELCOME"}}' \ "https://graph.facebook.com/v10.0/me/messenger_profile?access_token=${PAGE_ACCESS_TOKEN}"
FACEBOOK_WELCOMEイベントのカスタム イベント ハンドラを作成します。
ログインページをテストするには:
- Meta のページとの過去の会話を削除する(該当する場合)。
- [Get Started] ボタンは、新しい会話にのみ表示されます。
- Meta ページで新しい会話を開始します。
- [Get Started] ボタンをクリックし、カスタム イベント ハンドラからのレスポンスを確認します。
Messenger Profile API を呼び出して [Get Started] ボタンを管理できます。これはテストに役立ちます。
[使ってみる] ボタンのステータスを確認するには、次のリクエストを使用します。
curl -X GET \
"https://graph.facebook.com/v10.0/me/messenger_profile?fields=get_started&access_token=${PAGE_ACCESS_TOKEN}"
次のリクエストを使用して、[使ってみる] ボタンを無効にできます。
curl -X DELETE \
-H "Content-Type: application/json" \
-d '{"fields": ["get_started"]}' \
"https://graph.facebook.com/v10.0/me/messenger_profile?access_token=${PAGE_ACCESS_TOKEN}"
リッチ レスポンス メッセージ
リッチ レスポンス メッセージは、フルフィルメントのカスタム ペイロードによってサポートされます。詳細については、メッセージ形式に関する Send API Parameters Message Object のドキュメントをご覧ください。
たとえば、次のカスタム ペイロードはテキスト メッセージを提供します。
{
"text": "Hello, world"
}
次のカスタム ペイロードは、画像メッセージを提供します。
{
"attachment": {
"type": "image",
"payload": {
"url": "https://example.com/test.jpg"
}
}
}
チャネル固有のレスポンス
チャネル固有のレスポンスを構成すると、エージェントは DF_CX_FB_MESSENGER チャネルを自動的に使用して Meta Messenger メッセージに応答します。