Messenger 不发送由 Messenger 发送到应用程序的 pdf 的附件信息
Messenger is not sending attachment info for pdf sent by messenger to app
有一个用于处理 FB Messenger 事件的应用程序。我正在与应用共享文件。
带附件的消息从应用程序到 Messenger 正常工作。
此外,从 Messenger 到应用程序,图像文件已成功发送(fb_messenger_bot_message_received 事件 fb_messenger_bot_message_type:图像)。
但是当我从 Messenger 向应用程序发送 pdf 文件时,在 webhook 上收到的事件中没有关于附件的信息。
查看 FB Developer 控制台中的事件,我看到 fb_messenger_bot_message_received 事件有 fb_messenger_bot_message_type: unknown.
还有其他人遇到过这种情况吗?这个问题有解决办法吗?
要重现(Node.js),请在您的应用中编写以下代码,然后尝试从 FB 向应用发送 pdf 和图片:
app.post('/webhook', (req, res) => {
var data = req.body;
logger.info("Message event data is " + JSON.stringify(data));
});
以上代码给出以下输出:
- 图片:
{
"object": "page",
"entry": [{
"id": "XXXXXX",
"time": 1603867612794,
"messaging": [{
"sender": {
"id": "YYYYYY"
},
"recipient": {
"id": "XXXXXX"
},
"timestamp": 1603867612713,
"message": {
"mid": "ALPHANUMERIC_MID_0001",
"attachments": [{
"type": "image",
"payload": {
"url": "https://scontent.xx.fbcdn.net_Image_Location"
}
}]
}
}]
}]
}
- 对于 PDF:
{
"object": "page",
"entry": [{
"id": "XXXXXX",
"time": 1603867801741,
"messaging": [{
"sender": {
"id": "YYYYYY"
},
"recipient": {
"id": "XXXXXX"
},
"timestamp": 1603867801642,
"message": {
"mid": "MID_0002"
}
}]
}]
}
对于带有 PDF 附件的邮件,在收到的事件中除了 mid 之外没有任何信息。
编辑
这是一个跟踪此问题的错误(对于遇到此问题的任何其他人)。
https://developers.facebook.com/support/bugs/1248094478904310/
这是 Facebook (FB) 端的一个问题。因此我自己回答这个问题。如果没有 FB 的干预,这个问题无能为力。
此问题导致许多用户的文件共享(从 FB Messenger 到应用程序 webhook)暂时中断。
FB 表示他们已经解决了这个问题(并将错误 [=10=] 标记为已修复)。
但一些用户仍在评论他们仍然面临这个问题的错误。但我的应用程序现在运行良好。我只有 PDF 有问题,现在已修复。
如果您遇到这个问题,请随时评论这个问题或上面提到的 FB 错误。
有一个用于处理 FB Messenger 事件的应用程序。我正在与应用共享文件。
带附件的消息从应用程序到 Messenger 正常工作。
此外,从 Messenger 到应用程序,图像文件已成功发送(fb_messenger_bot_message_received 事件 fb_messenger_bot_message_type:图像)。
但是当我从 Messenger 向应用程序发送 pdf 文件时,在 webhook 上收到的事件中没有关于附件的信息。 查看 FB Developer 控制台中的事件,我看到 fb_messenger_bot_message_received 事件有 fb_messenger_bot_message_type: unknown.
还有其他人遇到过这种情况吗?这个问题有解决办法吗?
要重现(Node.js),请在您的应用中编写以下代码,然后尝试从 FB 向应用发送 pdf 和图片:
app.post('/webhook', (req, res) => {
var data = req.body;
logger.info("Message event data is " + JSON.stringify(data));
});
以上代码给出以下输出:
- 图片:
{
"object": "page",
"entry": [{
"id": "XXXXXX",
"time": 1603867612794,
"messaging": [{
"sender": {
"id": "YYYYYY"
},
"recipient": {
"id": "XXXXXX"
},
"timestamp": 1603867612713,
"message": {
"mid": "ALPHANUMERIC_MID_0001",
"attachments": [{
"type": "image",
"payload": {
"url": "https://scontent.xx.fbcdn.net_Image_Location"
}
}]
}
}]
}]
}
- 对于 PDF:
{
"object": "page",
"entry": [{
"id": "XXXXXX",
"time": 1603867801741,
"messaging": [{
"sender": {
"id": "YYYYYY"
},
"recipient": {
"id": "XXXXXX"
},
"timestamp": 1603867801642,
"message": {
"mid": "MID_0002"
}
}]
}]
}
对于带有 PDF 附件的邮件,在收到的事件中除了 mid 之外没有任何信息。
编辑 这是一个跟踪此问题的错误(对于遇到此问题的任何其他人)。 https://developers.facebook.com/support/bugs/1248094478904310/
这是 Facebook (FB) 端的一个问题。因此我自己回答这个问题。如果没有 FB 的干预,这个问题无能为力。
此问题导致许多用户的文件共享(从 FB Messenger 到应用程序 webhook)暂时中断。
FB 表示他们已经解决了这个问题(并将错误 [=10=] 标记为已修复)。
但一些用户仍在评论他们仍然面临这个问题的错误。但我的应用程序现在运行良好。我只有 PDF 有问题,现在已修复。
如果您遇到这个问题,请随时评论这个问题或上面提到的 FB 错误。