如何让Bot Framework频道接收改变的Bot

时间:2017-07-23 14:27:47

标签: botframework channel

我使用Microsoft Bot Framework开发了一个小型机器人。我已将其作为App Service部署到Azure,并为其提供了多个渠道。 DirectLine,Skype,Facebook和Telegram。一切都按预期工作。然后,我将代码更新为一个截然不同的新对话框,并从Visual Studio重新发布到Azure。现在我看到了奇怪的行为。我的DirectLine频道,我的嵌入式WebChat和模拟器选择了新的机器人。我的Facebook频道,Skype频道和电报频道仍在播放旧机器人。可能导致此问题的任何提示? Microsoft托管我机器人的副本吗?我重新启动了所有内容,甚至删除并重新创建了App Service,但无济于事。

Tilo

1 个答案:

答案 0 :(得分:0)

您可能已经在仍旧版本的频道上开始对话。即使在代码修改后,BotState仍会保留。

  

如果要在开发机器人期间手动重置对话框的对话框和状态,可以使用/deleteprofile命令删除状态数据。确保在此命令中包含前导空格,以防止通道解释它。

     

将bot部署到生产环境后,您可以对机器人数据进行版本控制,以便在碰撞版本时清除关联的状态数据。使用Bot Builder SDK for Node.js,这可以使用中间件和Bot Builder SDK for .NET来完成,这可以使用IPostToBot实现来完成。

有关文档here

的更多详细信息