Facebook 向在页面上添加评论的人发送消息

Facebook 向在页面上添加评论的人发送消息,facebook,facebook-messenger-bot,facebook-webhooks,Facebook,Facebook Messenger Bot,Facebook Webhooks,我想创建一个类似的东西,这是我在facebook上的商业页面所描述的。有很多替代品,比如chatfuel和manychat,但我想拥有相同的自动PM,但更灵活。到目前为止,我所做的是连接到:webhooks和messenger API。我编写了这几行代码,允许我查看业务页面提要中的所有更改 app.post("/api/webhooks", jsonParser, (req, res) => { const jsonBody = req.body || ''; if (ty

我想创建一个类似的东西,这是我在facebook上的商业页面所描述的。有很多替代品,比如chatfuel和manychat,但我想拥有相同的自动PM,但更灵活。到目前为止,我所做的是连接到:webhooks和messenger API。我编写了这几行代码,允许我查看业务页面提要中的所有更改

app.post("/api/webhooks", jsonParser, (req, res) => {
    const jsonBody = req.body || '';
    if (typeof jsonBody !== 'object' || !jsonBody.entry || jsonBody.object !== 'page') { return res.send('no body'); }
    // else
    const { message, sender_id } = jsonBody.entry[0].changes[0].value;
    console.log(message);
    if (!message) { return res.send('no message'); }
    bot.say(sender_id, 'hey there, Mr. P!');
    return res.send('post request');
});
正如我所说,这段代码允许我看到谁在我的业务页面上做了更改,所以我甚至可以获取用户id。所以我想,如果我知道用户id,我可以向他发送消息,但当我尝试发送消息时,我会收到下面的错误

{ message: '(#100) No matching user found',
  type: 'OAuthException',
  code: 100,
  error_subcode: 2018001,
  fbtrace_id: 'CkNJQpdP6A9' }
  • bot-是一个第三方npm包,称为bootbot

我做错了什么?我是否需要更多的权限来执行某些操作?

事实上,我找到了解决此问题的方法,而且很容易做到。Facebook文档:

你不能仅仅因为用户在你的页面上发表了评论就给他们发消息。(你的页面可以私下回复他们的评论,这样只有特定的用户才能看到你的回复。)谢谢你的回复,但请告诉我他们是如何做到的?youtube.com/watch?v=JNGK_0SHXLoIs有没有一种方法可以通过这种方式发送结构化消息?据我所见,消息对象仅限于纯文本。我想发送一个更结构化的消息,并调用按钮和回发等操作。是否可以发送带有私人回复的此类邮件?