保持机器人活着

时间:2017-08-16 11:59:20

标签: botframework direct-line-botframework

我们正在使用MS Bot Framework构建机器人。有时当不使用机器人时,响应时间太长,我们得到[500]内部服务器错误。当我们尝试在我们的应用程序上访问机器人时,我们会看到此问题(我们使用Direct Line与机器人进行交互)。

我已经阅读了有关确保将应用程序活动的Microsoft Azure设置设置为" Always On"以及我们已完成此操作的其他答案。但是,由于Always on正在ping我们的僵尸网络应用程序的根目录,我认为这可能还不足以让机器人/直接线保持活力......

我没有从http到https的任何重写规则,阻止ping请求成功..

有人有这个问题吗?

更新以询问一个具体问题:如果上面解释的所有设置都不起作用,我们如何确保我们的机器人始终处于活动状态?我们应该通过直接框架来ping我们的机器人吗?

2 个答案:

答案 0 :(得分:0)

一种方法是每15分钟发送一次ping。默认代码甚至为您提供了处理消息控制器中的ping的位置

else if (message.Type == ActivityTypes.Ping)
{

}

请同时查看this post因为它可能对您有用,并且是一个非常简单的解决方案,没有代码。

答案 1 :(得分:0)

我必须创建一个用于ping我服务的azure函数,因为我遇到了同样的问题。我有所有服务的Always On,并且仍然发现机器人会睡觉。使用ping服务,它建立一个新的会话,发送话语,然后在收到响应后关闭。这似乎有效,但只有一个星期的实践。请注意,我每隔五分钟就会ping一次。