【问题标题】:How to store user conversation of Root bot and skill bot on Bot framework SDK V4 built in Visual Studio?如何在 Visual Studio 内置的 Bot framework SDK V4 上存储 Root bot 和 Skill bot 的用户对话?
【发布时间】:2021-09-07 18:35:44
【问题描述】:

我使用 Tompanna Sample intermediator bot sample https://github.com/tompaana/intermediator-bot-sample 作为 root bot 构建了一个 Handoff bot,并将其连接到 dailog Skill,我们关注了 https://github.com/microsoft/BotBuilder-Samples/tree/main/samples/csharp_dotnetcore/81.skills-skilldialog 这个示例。

现在我正在尝试存储用户对话,为此我关注了这篇https://docs.microsoft.com/en-us/azure/bot-service/bot-builder-howto-v4-storage?view=azure-bot-service-4.0&tabs=csharp 文章,但它只存储了根机器人的对话。我想存储机器人根和技能的对话。

谁能指导我存储对话? 应用程序洞察力也可以用于存储日志对话吗? 提前致谢!!

【问题讨论】:

  • 您需要维护状态管理并查看我的答案

标签: botframework chatbot azure-application-insights


【解决方案1】:

在您的问题中,它仅包含机器人存储文档,但您需要为每个对话维护机器人状态。所以如果你想存储机器人对话,那么你需要在机器人流中实现状态管理。

Bot Framework SDK 的状态和存储功能允许您 为您的机器人添加状态。机器人使用状态管理和存储对象 管理和保持状态。状态管理器提供了一个抽象 允许您使用属性访问器访问状态属性的层, 独立于底层存储的类型。

用户状态在机器人与该频道上的用户对话的任何时候都可用,无论对话如何。

对话状态在特定对话中的任何时候都可用,与用户无关(即群组对话)

如果您愿意,您还可以使用 TelemetryClient(如跟踪、指标等)将对话流作为自定义事件存储在 Application insight 中。

参考:

  1. Save user and conversation data
  2. Managing state
  3. Application Insights API for custom events and metrics

【讨论】:

    猜你喜欢
    • 2019-07-27
    • 1970-01-01
    • 1970-01-01
    • 2019-06-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-01-23
    相关资源
    最近更新 更多