如何捕获Azure QnA Maker聊天机器人会话并发送至用户邮箱?
Azure QnA Maker会话数据捕获与自动邮件发送方案
一、完整捕获会话数据的可行方案
- Azure Application Insights:直接集成到QnA Maker或Bot Framework中,可完整捕获对话上下文、用户提问、机器人回复、会话ID等全量数据,支持自定义跟踪事件,数据维度比Blob Storage更全面。
- Bot Framework Analytics:若基于Bot Framework开发聊天机器人,其自带的分析模块可自动收集会话数据,还支持将数据导出至存储服务或对接其他工具。
- 自定义中间件:在Bot Framework中编写自定义中间件,拦截每轮对话的输入输出,将数据结构化后存储到Azure SQL、Cosmos DB等服务,确保数据无遗漏。
二、自动发送邮件的实现方式
- Azure Logic Apps:
- 触发器选择Blob Storage的「当有新Blob添加时」(若继续使用Blob存储),或Application Insights的「当有新事件生成时」
- 添加「获取Blob内容」或「查询Application Insights数据」操作,提取并整理会话数据
- 通过「Office 365 Outlook」或「SendGrid」连接器,将结构化后的对话内容(如HTML格式)发送至指定邮箱
- Azure Functions:
- 绑定Blob Storage或Application Insights作为触发源
- 在函数中处理会话数据,拼接成清晰的邮件内容
- 调用SendGrid、Office 365 API等邮件服务接口完成发送
三、官方参考文档
- QnA Maker集成Application Insights配置教程:微软官方文档提供了详细的步骤指导,可实现全量会话数据的捕获与分析
- Logic Apps自动发送邮件配置:官方文档包含从存储服务获取数据并发送邮件的完整流程
- Bot Framework自定义中间件开发:官方教程讲解了如何通过中间件拦截对话数据并进行自定义处理
内容的提问来源于stack exchange,提问作者Samuel David Parra Rodriguez
相关产品推荐
相关产品推荐

