【发布时间】:2017-06-05 20:09:31
【问题描述】:
我最近使用 Azure 和 BotFramework 在 Skype、Slack、Telegram 和其他一些平台上部署了一个机器人。
它们似乎都工作正常,除了在 Kik 中,机器人会突然停止响应。 BotFramework 中的错误信息为:
{"message":"对用户的请求太多:'redacted_user_name'","error":"TooManyRequests"}
Kik 测试器通过常规使用触发了这个错误,但当我在我的 (Android) 手机上测试它时,它工作得很好。
知道是什么原因造成的吗?
编辑:
联系 Kik 后,我被告知我的 Bot 发送的消息多于接收的消息,并且在 bot 被禁止之前,他们只允许剩余 20 条消息。
他们说解决方案是实现批处理,BotBuilder 说它是内置的。(我的机器人使用 session.send("text") 后跟一个提示。)但是,Kik 不会将我的消息视为批处理,并且每对算作两句。
我尝试调整 autoBatchDelay 以查看 0 是否会比默认值更好,并注意到它没有任何区别。此外,将其更改为 2000 也没有任何区别,并且消息之间没有延迟 2000ms。
var bot = new builder.UniversalBot(connector, {autoBatchDelay: 0});
我的机器人可能没有正确批处理吗?我可以采取哪些措施来解决这个问题?
【问题讨论】:
-
这对您来说仍然是个问题吗?
-
@JasonSowers 我重写了我的 kik 机器人以避免发送多条消息。 bot 框架是否进行了更新以方便在 kik 上进行批处理?让我知道的唯一方法是尝试看看我是否被禁止,这并不理想。
标签: azure botframework kik