FB Messenger webhookクイックスタートページでPythonで何も見つかりませんでした。 (https://developers.facebook.com/docs/messenger-platform/quickstart)新しいFB Messengerウェブフック用のPythonポートはありますか?
1
A
答えて
3
私は先に進んで自分自身を移植しました。私は富を分かち合うべきだと思った。 "あなたに!" を持つすべてのメッセージに、このスニペットの応答:
import json
import requests
from django.views.decorators.csrf import csrf_exempt
FB_MESSENGER_ACCESS_TOKEN = "<Your Access Token>"
def respond_FB(sender_id, text):
json_data = {
"recipient": {"id": sender_id},
"message": {"text": text + " to you!"}
}
params = {
"access_token": FB_MESSENGER_ACCESS_TOKEN
}
r = requests.post('https://graph.facebook.com/v2.6/me/messages', json=json_data, params=params)
print(r, r.status_code, r.text)
#this allows the requst to come in without requiring CSRF token
@csrf_exempt
def fb_webhook(request):
if request.method == "GET":
if (request.GET.get('hub.verify_token') == 'this_is_a_verify_token_created_by_sean'):
return HttpResponse(request.GET.get('hub.challenge'))
return HttpResponse('Error, wrong validation token')
if request.method == "POST":
body = request.body
print("BODY", body)
messaging_events = json.loads(body.decode("utf-8"))
print("JSON BODY", body)
sender_id = messaging_events["entry"][0]["messaging"][0]["sender"]["id"]
message = messaging_events["entry"][0]["messaging"][0]["message"]["text"]
respond_FB(sender_id, message)
return HttpResponse('Received.')
1
私はFacebookのメッセンジャープラットフォーム用のPythonクライアントを書いた:messengerbot
1
これはfbmq libraryそれを使用してPythonのサンプルです私の作品:
エコー例:
from flask import Flask, request
from fbmq import Page
page = fbmq.Page(PAGE_ACCESS_TOKEN)
@app.route('/webhook', methods=['POST'])
def webhook():
page.handle_webhook(request.get_data(as_text=True))
return "ok"
@page.handle_message
def message_handler(event):
page.send(event.sender_id, event.message_text)
関連する問題
- 1. Fb Messengerをバイパスする
- 2. 和解のためのウェブフックはありますか?
- 3. Facebook Messengerは購読しているウェブフックにタイムゾーンを提供していますか?
- 4. FB Messengerボットの開始ボタンをクリック
- 5. いくつかの専用FBユーザーのFB公開アプリケーションにアクセスする方法はありますか?
- 6. Googleのアシスタントの会話用ウェブフックには、Protoファイルなどがありますか?
- 7. FBを再審査するFBなしでFacebook Messenger Webhook URLを変更する
- 8. IOS DEEP LINKING - fb-messenger、slack、whatsapp、viber
- 9. BigCommerceウェブフックは、非標準のSSLポートを持つURL(つまり5443)で動作しますか?
- 10. fb messenger botコールバックは常にメッセージのように受信します
- 11. Android:PCポートはありますか?
- 12. PHP用のHtmlUnitポートはありますか?
- 13. メッセンジャーアプリのFB Messengerボットに「Get Started」ボタンが表示されない
- 14. Marketing APIを使用してFB広告URLパラメータを更新する方法はありますか?
- 15. ZF2用の新しいバージョンのZend_Toolはありますか?
- 16. Windows Live Messenger Connect v5 C#SDKはありますか?
- 17. 正式なfacebook messenger chatbot NodeJS APIはありますか?
- 18. 新しいFirefox 13用のDev Modeプラグインはありますか?
- 19. Facebook Messenger Platformを使用して自分のWebサイトに統合するボットを構築することはできますか、FBページを持つFB Messengerでしか動作しませんか?
- 20. FBコメントは非FBコメントと混在していますか?
- 21. ルックアップの入力ポートとしてCUST_DDAポートの値を使用する方法はありますか?
- 22. Pythonシリアル:ポートの読み込みに問題があります
- 23. Dartにsocket.ioポートがありますか?
- 24. Facebook Messengerロボットを別のユーザー用にセットアップしますか?
- 25. SSL(ポート443)との問題点とFB
- 26. Facebook Messengerボットをionicアプリに統合する方法はありますか?
- 27. FB Messengerでサードパーティ製アプリケーションを認証するiOS
- 28. .fbファイルからデータを取り出す方法はありますか?
- 29. Windowsプラットフォーム用の最新のpython 3.3 bindary buildはどこにありますか?
- 30. Hubspot Messenger()。run()メッセージの後にウィンドウをリロードする方法はありますか?
ありがとうSean! 'r = requests.post( 'https://graph.facebook.com/v2.6/me/messages'、json = json_data、params = params)の' urllib'に相当するものは何でしょうか? –
このサイトhttp://buddylindsey.com/basic-urllib-get-and-post-with-and-without-data/は、このテーマに関する情報を提供しています。私は最終的なコードが次のようになると思われます。 data = urllib.urlencode(json_data); u = urllib.urlopen( "https://graph.facebook.com/v2.6/me/messages?access_token = [access_token]"、data); – Sean
ありがとうございます!私はGAE上でコードを実行しているので、 '要求'は使用できません。あなたが指摘したコードを使用したが、何とか「Bad Request 400」という結果に終わった。どんなアイデアが間違っているのでしょうか? –