有没有一种方法可以清除使用 DirectlineJS 而不是 React 的 Webchat 中的聊天记录

问题描述 投票:0回答:3

根据以下 Chatbot 和 BotFramework 的 github 问题链接。 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

如果否,可以通过其他方式实现吗?任何建议都会有帮助。

botframework chatbot direct-line-botframework web-chat
3个回答
0
投票

我能够解决它。因此,仅仅替换变量是行不通的。您需要渲染 store 变量以在 webchat.js 代码中更新/替换它。

await window.WebChat.renderWebChat(
    {
        store: widgetStore
    },
    document.getElementById('webchat')
);

0
投票

BotFramework-WebChat 存储库提供了一个示例,准确演示了如何执行此操作。示例是 04.api/h.clear-after-idle。自述文件还包括一些需要注意的警告。


0
投票

我遇到了同样的问题,但我已经使用此命令 localStorage.clear(); 修复了此问题在这里检查完整的集成: https://youtu.be/N_A7e16L6oc

© www.soinside.com 2019 - 2024. All rights reserved.