使用DirectLine ASE与Bot Framework保持聊天记录

时间:2020-09-04 12:03:22

标签: javascript botframework chatbot direct-line-botframework

我们正在将聊天机器人集成到我们的网站中。我们使用Direct Line App Service Extension使其大部分工作。我使用此示例来实现我们的机器人: https://docs.microsoft.com/en-us/azure/bot-service/bot-service-channel-directline-extension-webchat-client?view=azure-bot-service-4.0

我们的部分代码如下:

var token = sessionStorage['webchatToken'];
var userId = sessionStorage['webchatUserId'];
var conversationId = sessionStorage['webchatConversationId'];

directLine = await window.WebChat.createDirectLineAppServiceExtension({
  token,
  domain: 'https://ourbot.azurewebsites.net/.bot/v3/directline',
  watermark: "0"
});

window.WebChat.renderWebChat(
  { directLine: directLine },
  document.getElementById('webchat')
);
document.querySelector('#webchat > *').focus();

现在,我正在尝试使它能够在用户浏览我们的网站时保留聊天记录。 我已经将令牌,sessionId和userId存储在sessionStorage中。

基本上,我需要一种将conversationId传递给createDirectLineAppServiceExtension函数的方法。或者,也可以通过其他方式设置directLine,使其根据conversationId充满聊天记录。

感谢您的帮助。我想提到Direct LineDirect Line App Service Extension是两件事。预先感谢!

PS:除上述链接外,我找不到createDirectLineAppServiceExtension方法的任何文档。因此,如果您有与此相关的文档,我将提供一个链接。我可以找到的大多数文档与应用程序服务扩展无关。

========编辑======

我决定使用常规DirectLine代替DirectLine ASE。而且我一切正常。也许这个问题的答案对其他人仍然有用。尽管我建议他们像以前那样做,并使用常规DirectLine,因为它可以正常工作并且有据可查。

0 个答案:

没有答案
相关问题