该按钮已添加到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/