Messenger机器人对使用节点和私人回复的消息的评论-无法获得read_page_mailboxes

时间:2018-10-25 01:27:18

标签: node.js comments message facebook-messenger-bot

我在node中创建了一个Messenger机器人。用户在页面上发表评论,这将启动消息序列。它以前一直在工作,但是现在我收到错误消息“该页面没有read_page_mailboxes或pages_messaging权限。”

我已根据此溢出中的说明创建了永久访问令牌:facebook: permanent Page Access Token?-这不起作用

我尝试请求获取read_page_mailboxes的权限,但是由于该边缘需要包含平台和登录信息,因此被拒绝了,我的机器人只使用了评论消息功能,

>

我能够得到用户在页面上输入的单词,但是我无法使用comment_id发送私人消息。

if(entry.hasOwnProperty('changes')) {
entry.changes.forEach(function(changes){
    let comp_comment;
    if(typeof changes.value.message !== "undefined") {
        comp_comment = changes.value.message.replace(/[^\w\s]/gi, '').trim().toLowerCase();
    }

    if(changes.field=="feed" && changes.value.item=="comment" && changes.value.verb=="add" && comp_comment == "enter") {
        let user = changes.value.from.name;
        let comment_name = user.replace(/ .*/,'');
        callPrivateReply(changes.value.comment_id, comment_name);
    }
})

}

然后这是我的请求功能

function callPrivateReply(comment_id, first_name) {
let messageData = {
    "message": `this is the message I'm attempting to send`
}
request({
    "uri": 'https://graph.facebook.com/v2.12/'+comment_id+'/private_replies',
    "qs": { "access_token": PAGE_ACCESS_TOKEN },
    "method": 'POST',
    json: messageData
}, function (err, res, body) {
    if (!err && res.statusCode == 200) {
      console.log(body);
    } else {
      console.error("Failed calling Send API", res.statusCode, res.statusMessage, body.error);
    }

});

0 个答案:

没有答案