メインコンテンツまでスキップ

WhatsApp

AnyyのWhatsApp ChannelはMetaの公式Business Cloud APIを使用します。署名付きWebhookでダイレクトメッセージを受信し、設定されたビジネス電話番号の識別情報で返信します。

必要なもの​

  • WhatsAppを有効にしたMetaアプリ。
  • App ID、WhatsApp Business Account ID、Phone Number ID。
  • Cloud APIの利用を許可されたアクセストークン。
  • 所有者が選んだWebhook検証トークン。
  • Metaアプリシークレット。
  • Anyy Gatewayに到達する公開HTTPSルート。

最新のプラットフォーム側の設定は、MetaのCloud APIドキュメントに従ってください。

Dashboardで接続する​

  1. Dashboard → Channel → Addを開きます。
  2. WhatsAppを選びます。既定の項目はBusiness Cloud API webhookです。
  3. App ID、Business Account ID、Phone Number IDを入力します。
  4. アクセストークン、Webhook検証トークン、アプリシークレットを追加します。
  5. 認証情報を保存します。ポリシーの変更にはこのフォームではなく対話型CLIウィザードを使います。
  6. アカウントを保存し、表示されたMetaの前提条件と権限設定を完了します。

コールバック登録前に、メッセージングプラットフォームのリスナーとHTTPSプロキシを有効にします。受信コールバックパスは次のとおりです。

/channels/whatsapp/ACCOUNT_ID/webhook

既定のアカウントではACCOUNT_IDはpersonalです。このパスをHTTPSで公開し、同じ検証トークンを使ってMetaアプリをWhatsAppメッセージイベントに購読します。

アクセスポリシー​

WhatsAppのダイレクトメッセージアクセスはpairing、open、allowlist、disabledに対応し、既定値はpairingです。対話型のanyy setup channelウィザードでWhatsAppを選んで変更します。現在の設定アクションには許可リスト項目のエディターがありません。共通の設定上の制限を参照してください。このプロファイルはグループやネイティブなメディア受け入れには対応していません。

電話番号の識別情報を確認してから保留中の送信者を承認してください。

anyy channel pairing list
anyy channel pairing approve --request REQUEST_ID

プラットフォーム上の制約​

v0.1.107のAnyyは、組み込みのEEA/ブラジル国番号リストに一致する受信者識別情報だけを受け入れ、送信対象とします。DMポリシーをopenにしても、この実装上の制限は回避できません。Metaの最新の利用資格や地域ルールは別途確認してください。Anyyの固定リストは、現在のプラットフォームポリシー全体を表すものではありません。

自由形式の返信には、元のユーザー起点メッセージのコンテキストと、プラットフォームで許可された返信期間が必要です。現在のルートには受信メッセージIDが含まれるため、同じ連絡先の連続したメッセージが必ずしも1つのAnyy Sessionを共有するわけではありません。

WhatsAppを無制限の送信先として扱わない

Anyyは受信者を勝手に作ったり、Metaの会話ルールを回避したりしません。認可された受信会話を起点とし、配信の予約や再試行でもプラットフォームのポリシーを考慮してください。

接続を検証する​

anyy channel doctor whatsapp
anyy channel reload

ビジネス番号へダイレクトメッセージを送り、ペアリングを完了してAnyyが返信できることを確認します。

トラブルシューティング​

問題確認する項目
Webhookチャレンジが失敗する公開HTTPSルートとWebhook検証トークン
イベントに401が返るMetaアプリシークレットとX-Hub-Signature-256の転送
受信できるが送信に失敗するアクセストークン、Phone Number ID、権限、利用資格
送信者が無視されるDMポリシー、ペアリング状態、許可リスト
後から返信が拒否されるユーザー起点の返信可能期間とMetaの最新ルール