Bot Framework bot 随机不回复消息

Bot Framework bot randomly doesn't answer messages

我有一个机器人,它包含一个通过 Microsoft Bot Framework 连接到我的机器人代码的 Facebook Messenger。该机器人在网络聊天中运行良好,但在 Facebook Messenger 上,只有大约 1/3 的消息被发送到机器人。

这意味着我必须发送 "hi" 三到四次,机器人才会回答我一次。在它回答之前,消息显示为未送达。 dev.botframework.com 的 Web 界面中的 Bot Framework 日志中没有任何内容,我的机器人代码(Azure 上的 运行)甚至没有收到来自机器人框架的任何信息 - 没有任何 HTTPS 请求。当它确实收到某些东西时(这又是大约 1/3 的次数),机器人会正确回答。

在 Facebook 设置中,我使用的是标准端点 (https://facebook.botframework.com/api/v1/bots/[my bot name])。

似乎大多数消息在 Facebook 和 Bot Framework 之间以某种方式丢失,并且永远不会到达我的机器人代码。

Facebook 端没有日志记录,所以我不知道如何调试 - 任何地方都没有任何错误痕迹。

更新:问题似乎只出现在使用 Microsoft 通过 Azure 门户注册机器人的新方法注册的机器人上。在 dev.botframework.com 注册的机器人似乎没有受到影响。

如果应用程序托管在 Azure WebApp 或 Azure Function App 中,请为应用程序启用 Always On。可能是当您调用 Bot API 时,它会将其从待机模式切换为开启,这可能会带来一些延迟,因为 Microsoft 默认闲置它的 WebApp。默认情况下,Always On 保持关闭状态。 参考 here 打开,始终打开。

如果您还没有在 Azure 中托管 Bot Framework,那么这可能是一个完全不同的问题。