Messenger Bot无法回应

时间:2016-07-13 14:30:42

标签: node.js heroku bots facebook-messenger messenger

我的机器人已经获得批准并可以公开使用(见图片)enter image description here,但除了开发人员之外,它没有回应任何人。

我把它托管在Heroku上。我试着用大量的控制台日志调试它,我已经意识到当开发人员以外的任何人发送它时,它不会记录“输入App.Post”(见下文)一个消息。

还有其他人遇到过这种行为吗?

/// Facebook verification
app.get('/webhook/', function (req, res) {
    if (req.query['hub.verify_token'] === '***************') {
        res.send(req.query['hub.challenge'])
    }
    res.send('Error, wrong token')
})

/// Star up the server
app.listen(app.get('port'), function() {
    console.log('running on port', app.get('port'))
})

app.post('/webhook/', function (req, res) {
    console.log("Enter App.Post");
    messaging_events = req.body.entry[0].messaging
    for (i = 0; i < messaging_events.length; i++) {
        ....

更新:我找到了以下日志:

Error:  { message: '(#10) Cannot message users who are not admins, developers or testers of the app until pages_messaging permission is reviewed and the app is live.',
type: 'OAuthException',
code: 10,
fbtrace_id: 'CVUDg****' }

1 个答案:

答案 0 :(得分:1)

你确定你的Facebook messenger机器人已被Facebook批准吗?

除了管理员和测试人员之外,除了管理员和测试人员之外,他们必须正式批准messenger bot。

提供的代码中没有任何内容可以阻止它接收来自其他用户的消息,所以我猜你的机器人实际上还没有被Facebook批准。

如果您尝试使用自己以外的用户对其进行测试,请将其添加为测试人员,他们可以访问机器人,预先批准。