Facebook Messenger
Facebook ChannelはAnyyをFacebookページに接続します。Messengerイベントは署名付きWebhookで届き、返信にはPageアクセストークンを使用します。
必要なもの
- Messengerを有効にしたMetaアプリ。
- そのアプリで管理するFacebookページ。
- Page IDとApp ID。
- Pageアクセストークン。
- 所有者が選んだWebhook検証トークン。
- Metaアプリシークレット。
- Anyy Gatewayに到達する公開HTTPSルート。
アプリレビュー、ページの購読、権限要件については、Metaの最新のMessenger Platform入門ガイドを使用してください。
Dashboardで接続する
- Dashboard → Channel → Addを開きます。
- Facebookを選びます。既定の項目はMessenger webhookです。
- Page IDとApp IDを入力します。
- Pageアクセストークン、Webhook検証トークン、アプリシークレットを追加します。
- アカウントを保存します。必要ならCLIウィザードでDMポリシーを変更します。
- ページをメッセージイベントに購読し、setup/doctorに表示された権限設定を完了します。
コールバック登録前に、Webhookプラットフォームに従って共通リスナーとHTTPSプロキシを有効にします。コールバックパスは次のとおりです。
/channels/facebook/ACCOUNT_ID/webhook
既定のアカウントIDはpageです。MetaとAnyyに同じ検証トークンを設定します。
ダイレクトメッセージのアクセス
Facebook Messengerはpairing、open、allowlist、disabledのダイレクトメッセージポリシーを使用します。AnyyのプロファイルはFacebookのグループ会話を公開していません。
anyy channel pairing list
anyy channel pairing approve --request REQUEST_ID
対話型のanyy setup channelウィザードでFacebookを選んでポリシーを編集します。Dashboardにはポリシーやペアリング承認の一覧がなく、現在の設定アクションではFacebookの許可リスト項目も編集できません。ペアリングは、その送信者がアシスタントにアクセスすることを認めます。ページと送信者の識別情報を確認し、CLIで承認してから、新しいメッセージを依頼します。
接続を検証する
anyy channel doctor facebook
anyy channel reload
許可されたアカウントからページにメッセージを送ります。受信イベント、ペアリングの流れ、返信を個別に確認してください。
まずプラットフォーム上のロールを持つアカウントでテストする
アプリレビューや一般公開の前は、アプリ/ページで適切なロールを持つMetaアカウントを使用します。Anyyの設定の問題とプラットフォームのアクセス制限を切り分けられます。
トラブルシューティング
| 問題 | 確認する項目 |
|---|---|
| Metaがコールバックを検証できない | HTTPSの到達性とWebhook検証トークン |
| 署名付きイベントが拒否される | アプリシークレットと、リバースプロキシがヘッダー/本文を維持しているか |
| ページは受信できるが返信できない | Pageアクセストークンとメッセージング権限 |
| 送信者に何も届かない | DMポリシー、ペアリング/許可リスト、Gatewayの状態 |
| 管理者だけで動く | Metaアプリのモード、アプリレビュー、ページの購読 |