获取对话详细信息需要建议

时间:2017-04-13 10:27:14

标签: botframework

我正在使用MS Bot框架创建一个机器人 - NodeJs。需要捕获以下信息以进行日志记录(使用bot.use方法,即IMiddleware)。

接收: 一个。用户身份 湾UserInput(文字) C。的conversationId

发送: 1.处理此问题的Intent或对话框名称(处理用户输入文本) 2. Bot输出文本 3.ConversationId 4. UserId

我无法获得发送'所需的详细信息。任何人都可以就此提出一些建议。

感谢。

1 个答案:

答案 0 :(得分:0)

我相信你的主要目标是记录name of intent or dialog。如果您在send阶段没有捕获它,则不会在routing中间件中知道它。一旦Bot Framework找出了传入消息的发送位置,它就会调用该函数。

这两篇文章可以帮助您获得所需内容。就在最近,我一直在捕捉对话的面包屑并记录完整的成绩单:

如果您需要构建一个可靠的捕获引擎,我建议您不要像我一样使用session.privateConversationData,而是建立自己的存储/日志基础架构来推送事件。只需使用时间戳conversationId将其流出,然后在另一端进行协调。机器人框架内部所做的一切的异步性质将一直困扰着你,所以这就是原因。此外,一旦您扩展到对少数用户进行测试并且您的机器人跨越多个进程,您将脱离单线程事件循环。