聊天机器人消息不会显示在Facebook Messenger聊天头中



我正在使用Microsoft Bot Framework为Facebook Messenger开发聊天机器人。机器人程序向用户发送主动消息(提醒(。不幸的是,由于某种原因,这些消息从未出现在聊天头(用于对话的Android小部件(中,如果以前屏幕上不存在,也不会弹出聊天头。其他聊天机器人(例如Jarvis(也会出现这种情况。

这是发送提醒的代码:

Reminder.find({ next_reminder: { $lte: new Date() } }, (err, res) => {
if (err !== null) {
return console.error(err);
}
res.forEach(reminder => {
// Build a notification message and address it to user who created the reminder           
const msg = new builder.Message().text('...');
bot.beginDialog(reminder.user_address, '*:/sendReminder', {message: msg, nudnik: nudnik});
});
});
};
};

我也试过bot.send(msg, () => ....)session.beginDialog('sendReminder', msg)。但是,当收到消息时,Messenger仍然没有任何指示。这里可能出了什么问题?

好吧,我想通了!显然,Facebook消息的默认通知设置是不显示通知。要更改它,在NodeJS中,您应该使用以下代码将特定于频道的数据添加到消息中:

msg = msg.sourceEvent({
facebook:
{notification_type: 'REGULAR'}
});

您可以在微软的官方文档(这里和这里(以及本次Github讨论中发现更多信息。

最新更新