web-dev-qa-db-ja.com

Facebook Webhookを構成する方法は?

開発中のアプリケーション用に Facebook webhooks を構成したい。

私がこれまでにしたことは:

  1. FBアプリを作成する
  2. アプリの設定に移動し、新しいWebhookを作成します:
    1. 有効なコールバックURLを追加します
    2. 特定のフィールドを選択してください
  3. 設定を正常に保存します

これで、ページサブスクリプションを照会すると、次の応答が返されます。

{
  "data": [
    {
      "object": "page",
      "callback_url": "CALLBACK_URL",
      "fields": [
        "feed"
      ],
      "active": true
    }
  ]
}

これは有効なようです。

次に何をすればいいですか?特定のページのフィードから聞き始める方法は?

5
Kamil Lelonek

これが Webhookを使用してリアルタイムでAPI更新を受信するための全体的な構成です

ステップ1

  1. Facebookページを作成する
  2. https://www.facebook.com/pg/YOUR_PAGE_NAME/about/?tab=page_info にアクセスし、Facebook Page IDを読んでください。下。

ステップ2

  1. 開発者アカウントとFacebookアプリを作成します
  2. 上記のポイントで説明したFacebook App IDをコピーします。

ステップ3

  1. コールバックURLを処理するサーバーアプリケーションを作成します。いくつかの例は GitHub で入手できます。
  2. 前の手順で作成したFacebookアプリケーションでコールバックURL を設定します。

ステップ4

FacebookアプリをFacebookページにサブスクライブします。これを行うには、 Graph API Explorer を開きます。

  1. ページアクセストークンを取得する Alt text

特定のアプリケーションを選択したことを確認してください。

  1. 権限を付与した後、特定のページを選択します。トークンはAccess Tokenフィールドに配置されます。
  2. 特定のURLに対して POSTリクエスト を作成します。

    /YOUR_PAGE_ID/subscribed_apps
    

概要

それでおしまい!これらの手順で、サーバーアプリケーションを起動し、実行し、宣言したすべてのイベントをリッスンする必要があります。

18
Kamil Lelonek

DjangoがチャレンジでVERIFYに応答するために、view.pyでこれを処理するためのスニペットを次に示します。

VERIFY_TOKEN = '******'

def fbwebhook(request):
    if request.GET['hub.verify_token'] == VERIFY_TOKEN:
        return HttpResponse(request.GET['hub.challenge'])
    else:
        return HttpResponse('Error, invalid token')

参照しました このGitHubリポジトリ

0
Leo