Glitchを使ってサンプルコールバックアプリのクローンを作成すれば、Glitchのサーバー上に公開コールバックURLを作成して、それをWebhooksのテストに使うことができます。Glitchプロジェクトを作成する目的は、Webhooksがトリガーされるのに応じて、リアルタイムで閲覧できるログファイルにWebhookペイロードを書き込むことです。
このガイドは、複数のステップから成る処理の一部です。Glitchを使ってサンプルアプリエンドポイントを設定するには、その前に、所定のステップを完了する必要があります。以下のことがすでに完了していなければなりません。
WhatsApp BusinessクラウドAPIを利用してテストメッセージを初めて送信する手順を示すスタートガイド情報については、WhatsApp BusinessクラウドAPIのスタートガイドをご覧ください。
.env
ファイルで、WEBHOOK_VERIFY_TOKEN
の値をランダムな任意の文字列に変更します。次に任意で、アプリダッシュボードの[WhatsApp] > [API設定]から一時/永続アクセストークンの値をコピーし、GRAPH_API_TOKEN
の値に貼り付けます。
/webhook
を追加して、完全なコールバックURLを取得します。 https://<project-name>.glitch.me/webhook
のようになります。エンドポイントの準備が整ったら、アプリダッシュボードに戻る必要があります。
https://<project-name>.glitch.me/webhook
)、そして認証トークンには("HAPPY")を指定します。
Webhook通知がトリガーされたことを確認するには、Glitchに戻って[LOGS]を選択します。出力は次の画像のようになっているはずです。
Webhook通知の完全なペイロードは、次のようになります。{ "object": "whatsapp_business_account", "entry": [ { "id": "0", "changes": [ { "field": "messages", "value": { "messaging_product": "whatsapp", "metadata": { "display_phone_number": "16505551111", "phone_number_id": "123456123" }, "contacts": [ { "profile": { "name": "test user name" }, "wa_id": "16315551181" } ], "messages": [ { "from": "16315551181", "id": "ABGGFlA5Fpa", "timestamp": "1504902988", "type": "text", "text": { "body": "this is a text message" } } ] } } ] } ] }
server.js
をクリックして、Webhookエンドポイントの実装を表示します。
https://<project-name.glitch.me/webhook
のようになります。
Incoming webhook: {"messages":[{"from":"1234567890","id":"ABGGhSkIc2B_Ago-sDy5BNm-1gI5","text":{"body":"Hi"},"timestamp":"1529381066","type":"text"}]} Incoming webhook: {"statuses":[{"id":"gBGGhSkIc2B_AgkXDygfSDwgG5s","recipient_id":"1234567890","status":"sent","timestamp":"1529381072"}]} Incoming webhook: {"statuses":[{"id":"gBGGhSkIc2B_AgkXDygfSDwgG5s","recipient_id":"1234567890","status":"delivered","timestamp":"1529381072"}]} Incoming webhook: {"statuses":[{"id":"gBGGhSkIc2B_AgkXDygfSDwgG5s","recipient_id":"1234567890","status":"read","timestamp":"1529381076"}]}