簡體   English   中英

Facebook Messenger bot通用模板不起作用

[英]Facebook Messenger bot Generic Template Not Working

我創建了一個工作正常的Facebook Messenger機器人。 我已經使用了“ 按鈕模板”和“圖像模板”,並且兩者都能正常工作。 但是,當我嘗試通用模板時,沒有任何反應。 通過執行適當的修改,我僅從此處復制粘貼了代碼。

我不知道如何調試。 Facebook Messenger在消息框上沒有任何輸出。 我目前正在通過Heroku運行該應用程序。

這是我的代碼:

def send_message(token, recipient):
    r = requests.post("https://graph.facebook.com/v2.6/me/messages",
     params={"access_token": token},
     data=json.dumps({
      "recipient":{
        "id":recipient
      },
      "message":{
        "attachment":{
          "type":"template",
          "payload":{
            "template_type":"generic",
            "elements":[
               {
                "title":"Welcome to Peter\'s Hats",
                "image_url":"http://www.godominion.com/content/images/feature-img-small-appliance-electronics.png",
                "subtitle":"We\'ve got the right hat for everyone.",
                "default_action": {
                  "type": "web_url",
                  "url": "https://peterssendreceiveapp.ngrok.io/view?item=103",
                  "messenger_extensions": true,
                  "webview_height_ratio": "tall",
                  "fallback_url": "https://peterssendreceiveapp.ngrok.io/"
                },
                "buttons":[
                  {
                    "type":"web_url",
                    "url":"https://petersfancybrownhats.com",
                    "title":"View Website"
                  }           
                ]      
              }
            ]
          }
        }
      }
    }),
     headers={'Content-type': 'application/json'})
    if r.status_code != requests.codes.ok:
      print r.text 

我將不勝感激任何幫助。

謝謝。

編輯1:解決方案

我通過注釋掉了這個問題:

"messenger_extensions": true,

"fallback_url": "https://peterssendreceiveapp.ngrok.io/"},

我確定這不是正確的方法。 但是,當我創建一個沒有實際鏈接的機器人時,這是可行的。

在第二個按鈕上,“ URL”:“ https://petersfancybrownhats.com ”已損壞。

首先嘗試這樣做功能

def function():

 extra_data = {

            "attachment": {
                "type": "template",
                "payload": {
                    "template_type": "generic",
                    "elements": [
                        {
                            "title": "Any Title",
                            "image_url": "https://mbtskoudsalg.com/images/road-clipart-journey-3.png",
                            "subtitle": "Subtitle.",
                            "buttons": [
                                {
                                    "type": "web_url",
                                    "title": "View",
                                    "url": "**MAKE SURE TO WHITELIST THIS URL**", # URL
                                    "messenger_extensions": "true",
                                    "webview_height_ratio": "full"
                                }
                            ]
                        }
                    ]
                }
            }
        }
    # w_message = "Hi there! How may I help you?"

    fb_message_template(extra_data["attachment"], "****RECIEVER ID****")

啟用其他功能

import requests

# // Importing User Defined Modules // #
from get_environ_var import get_environ_var

# // Global vars // #
ACCESS_TOKEN = "FB_ACCESS_TOKEN"


def fb_message_template(extra_data, sender_id):
    """This function sends template message to facebook"""

    data = {
        'recipient': {'id': sender_id},
        'message': {
            "attachment": extra_data
        }
    }

    qs = 'access_token=' + ACCESS_TOKEN

    resp = requests.post('https://graph.facebook.com/v2.6/me/messages?' + qs, json=data)

    print(resp.content)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM