问题描述
根据以下 github 问题链接,chatbot 和 BotFramework。 https://github.com/microsoft/BotFramework-WebChat/issues/1846
我们可以通过分配一个新实例来存储变量来清除聊天记录,这会触发 DIRECT_LINE/disCONNECT 操作。现在这适用于 React Webchat。但是,我在网络聊天 Java 脚本版本中尝试过,问题似乎仍然存在,即当 store 变量被替换时,之前的聊天不会被删除。
来自社区的任何确认都将得到缓解,因为 Botframework github 中有许多令人困惑的未解决问题。我分享一些我发现的。
https://github.com/microsoft/BotFramework-WebChat/issues/1293 https://github.com/Microsoft/BotFramework-DirectLineJS/issues/124
如果否,是否可以通过其他方式实现?任何建议都会有所帮助。
解决方法
我能够解决它。因此,仅替换变量是行不通的。您需要在 webchat.js 代码中渲染 store 变量以更新/替换它。
await window.WebChat.renderWebChat(
{
store: widgetStore
},document.getElementById('webchat')
);
,
BotFramework-WebChat 存储库提供了一个示例,可以精确演示如何执行此操作。样本是04.api/h.clear-after-idle。自述文件还包含一些需要注意的注意事项。