首页 > 解决方案 > Facebook 聊天机器人 - 捕获“发送消息”按钮发送的帖子标题或链接

问题描述

我正在为 fb messenger 创建聊天机器人,到目前为止一切顺利。我面临以下问题:当我使用请求创建新的 fb 帖子时

{myPageID}/feed?message=For all Math geniuses :)&payload={"value":"test"}&call_to_action={"type":"MESSAGE_PAGE","value":"test"}&link=someLink&access_token={my_token}

我正在附加 CTA 按钮“MESSAGE_PAGE”,其中添加了“向我的帖子发送消息按钮” 在此处输入图像描述

当我单击“发送消息”按钮时,我的页面会自动回复链接预览 在此处输入图像描述

我订阅了所有信使事件,我收到的唯一事件是交付事件。有什么办法可以捕捉到这个自动回复信息的标题或链接?当我发布请求时,我添加了有效负载,将偶数值回传到按钮,除了这个传递事件之外什么都没有发生

到目前为止,这是我收到的消息:

app.post('/webhook', (req, res) => {

  let body = req.body;  // Checks this is an event from a page subscription

  if (body.object === 'page') {
    // Iterates over each entry - there may be multiple if batched
    body.entry.forEach(function (entry) {
      // Iterate over each messaging event
      entry.messaging.forEach(function (event) {
        console.log(event);
        if (event.message) {
          receivedMessage(event);
        }
        else if (event.delivery) {
          //TO DO
        }
        else {
          payloadMessage(event);
        }
      });
    });
    // Returns a '200 OK' response to all requests
    res.status(200).send('EVENT_RECEIVED');
  } else {
    // Returns a '404 Not Found' if event is not from a page subscription
    res.sendStatus(404);
  }
});

这是交付事件

{ sender: { id: 'senderID' },
  recipient: { id: 'recipientID' },
  timestamp: 1558957571235,
  delivery: 
   { mids: 
      [ '8KsvyN2iL2upEhwddr_uQXeOJLgKhhdQtqQ8RzPxlPczGgR2T1w7Inqg8TJK-4gpWNQS-HZvLUBS5R-g1FcWdQ' ],
     watermark: 1558957571029,
     seq: 0 } }

标签: node.jsfacebook

解决方案


推荐阅读