使用NodeJS在Microsoft BotFramework中重置会话

时间:2018-07-09 23:13:57

标签: botframework direct-line-botframework

我正在一个简单的项目中,我的主要要求是使用Microsoft BotFramework的WebChat创建自定义内联应用程序。我想在标题上添加一个按钮,该按钮将是一个重置按钮,它将重新启动会话并删除所有消息,但将保持相同的会话ID。我找不到有关如何通过单击按钮将消息发送到机器人的任何有用文档。另外,我该如何通知漫游器哪个会话的会话需要删除。

这是我正在使用的示例代码,

<!DOCTYPE html>
 <html>
  <head>
    <link href="stylesheets/botchat.css" rel="stylesheet" />
  </head>
  <body>
   <div id="bot"/>
    <script src="javascripts/botchat.js"></script>
    <script>
     BotChat.App({
       directLine: { secret: '' },
       user: { id: 'you' },
       bot: { id: 'agent' },
       sendTyping: true,
       resize: 'detect'
     }, document.getElementById("bot"));
    </script>
   </body>
 </html>

我还检查了是否有一个叫做 deleteUserData 的事件,但是我不确定如何在我的场景中使用它。

2 个答案:

答案 0 :(得分:1)

您可以通过反向渠道执行此操作。简而言之,托管webchat的网页将连接到您的webchat使用的同一DirectLine实例,这将使该页面与bot通信。然后,您可以为重置事件设置处理程序,该处理程序将调用适当的代码来处理状态重置。

您可以在此处查看如何设置反向渠道: https://github.com/MissionMarsFourthHorizon/operation-max/tree/master/Node/exercise8-BackChannel

答案 1 :(得分:0)