我正在使用sdk v4开发一个用于节点js的机器人,我希望在用户点击按钮时结束当前对话并开始新的对话。我尝试使用await this.conversationState.clear(turnContext)
来清除对话数据,但对话ID没有变化。请建议如何触发conversationUpdate活动以重新启动与bot的连接。
Bot仿真器和Azure门户网站聊天都包含一种重新启动按钮,用于清除对话历史记录并生成新的对话ID。这是通过刷新Web Chat来完成的。
每次秘密交换令牌时,Direct Line都会生成新的会话ID。如果您直接将直接线路秘密传递给Web Chat并让Web Chat将其替换为令牌,那么生成新会话ID所需要做的就是refresh the page or frame。
如果您将密钥存储在私有(推荐)的某个地方,并自己将其交换为令牌并将令牌传递给Web Chat,那么只需再次执行此操作即可生成新的会话ID。