该按钮已添加到Messenger。当用户单击它时,将弹出“入门”消息。 Bot从不将消息发回到“入门”之后,什么也没有发生。没有Webhook被触发。按钮保持在同一位置。仅在重新加载Messenger页面后或单击Messenger中的另一个聊天时,它才会消失。

如何使它消失并至少打开Messenger?
如果一般没有网络钩子,如何跟踪“ GET_STARTED_PAYLOAD”?我的意思是,按钮提供的消息“ Get Started”从不触发webhook,而键入“ Get Started”则可以正常工作。

setupTheBot();
function setupTheBot(){
  var button = {
      "setting_type": "call_to_actions",
      "thread_state": "new_thread",
      "call_to_actions": [
        {
          "payload": "GET_STARTED_PAYLOAD"
        }
      ]
    };
  request({
    uri: 'https://graph.facebook.com/v2.6/me/thread_settings',
    qs: { access_token: PAGE_ACCESS_TOKEN },
    method: 'POST',
    json: button
  },
  function (error, response, body) {
        if (!error && response.statusCode == 200) {
            // Print out the response body
            console.log("Button: Setup changed GETSTARTED_BUTTON_PAYLOAD");
            console.log(body);
        } else {
            // TODO: Handle errors
            console.log("Button: Failed. Need to handle errors.");
            console.log(body);
        }
    });
}


我已经调查了数十个类似的问题。
尝试了不同的实施方式。结果是一样的。

使用node.js服务器和ngrok对其进行测试。

最佳答案

如果有人感兴趣,原因是在developers.facebook.com上设置了该机器人。
您想选择“ Messenger”->“ Settings”滚动到“ Webhooks”,然后按“ Edit events”以添加选择事件。

在文档中,他们说that you can subscribe to those in "Weebhooks" (Step 2.4),您可以在其中指定令牌和隧道。不对您只能订阅“消息”。其中不包括“ messaging_postbacks”,“ messaging_optins”,“ message_deliveries”等。

关于javascript - Messenger的“开始使用”按钮无法开始对话,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48177335/

10-12 02:18