机器人v4中用户之间的UserProfile状态持续存在

时间:2019-04-15 13:34:49

标签: c# botframework azure-bot-service

当我有两个机器人实例(如果将机器人部署到Azure时可以是两个仿真器窗口或两个浏览器),则输入的名字对于所有其他实例都是持久的。

实例一

https://imgur.com/sa7AAbn

第二个实例

https://imgur.com/Ct20HE5

我希望机器人再次询问我的名字,无论我有多少实例,该机器人始终将我标识为Brunno。如何更改此行为?

我关注了this tutorial

2 个答案:

答案 0 :(得分:2)

如果您没有为每次对话提供WebChat唯一的ID,它将在存储中引用相同的数据对象。因此,要解决此问题,您应该为每个用户或对话实例生成一个随机ID。有关示例,请参见下面的代码段。

const userID = Date.now() + Math.random().toString(36);

...

window.WebChat.renderWebChat({
directLine: window.WebChat.createDirectLine({ token }),
store,
userID
}, document.getElementById('webchat'));

希望这会有所帮助!

答案 1 :(得分:0)

还要检查网聊WEBCHAT API reference的最新README.md 声明

  

如果未指定userID,则默认为随机用户ID

可能会更有效率。