Microsoft Bot Framework中的Dialog和Conversation有什么区别?

时间:2016-07-06 12:30:22

标签: .net bots botframework luis

对我个人而言,Dialog和Conversation是一回事。然而,框架区分了这两个术语,我不太明白它们的区别。此外,我无法在文档中找到一个确切的,可理解的定义。

1 个答案:

答案 0 :(得分:1)

C# Dialogs documentation的概述很好地解释了这些概念:

  

对话模型构建一个会话过程,其中僵尸和用户之间的消息交换是与外界交互的主要渠道。 每个对话框都是一个抽象,它将自己的状态封装在实现IDialog 的C#类中。对话框可以与其他对话框组合以最大化重用,对话框上下文维护对话中活动的一堆对话框。 由对话框组成的对话可跨机器移植,以便扩展机器人实施。此对话状态(活动对话框和每个对话框的状态堆栈)存储在与Bot连接器交换的消息中,使得bot请求在请求之间无状态。 (就像一个Web应用程序没有在Web服务器的内存中存储会话状态。)

另外,来自Dialogs Node.js documentation

  

要理解对话框,最容易将它们视为等效对象   网站的路线。所有机器人都至少有一个根'/'   对话就像所有网站通常至少有一个根'/'   路线。当框架收到来自用户的消息时   路由到此根“/”对话框进行处理。