温馨提示:本文翻译自stackoverflow.com,查看原文请点击:botframework - Bot Framework Service vs Bot Connector Service
botframework web-chat direct-line-botframework

botframework - Bot Framework服务与Bot连接器服务

发布于 2020-04-16 12:24:38

Bot Framework Service和Bot Connector Service是否都相同?还是Bot Framework Service是Bot Connector Service之上的一层?我很困惑,因为它们可以互换使用。

我了解Bot Framework网络聊天组件使用直接api通过Bot Framework Service / Bot连接器服务与机器人进行通信。但是Bot Framework Service是否实现了直线协议来理解Web Chat的请求?有人可以给我完整/端到端的图片吗?

谢谢!

查看更多

提问者
Albie Morken
被浏览
72
ranusharao 2020-02-04 05:10

我同意文档令人困惑,并且这些术语可以互换使用。实际上,当您深入了解Bot Framework端的处理方式时,Bot Framework Service和Bot Connector Service是两个不同的术语。如果您查看网站上已有的文档,

Bot Connector服务使您的机器人可以与Bot Framework Portal中配置的通道交换消息。它使用行业标准的REST和HTTPS上的JSON,并启用JWT Bearer令牌进行身份验证。

Bot Framework Service是Azure Bot Service的组件,它在用户的与机器人连接的应用程序(例如我们称为频道的Facebook,Skype,Slack等)与机器人之间发送信息。

现在到了差异,

Bot Framework Service位于云中,并以本地bot代码可以理解的形式承担将数据从多个受支持通道的API转换为Bot Framework协议的作用。这样,您的漫游器就可以与多个渠道进行通信,而无需了解数据来自哪个渠道。客户端实际上是对Bot Framework Service进行REST调用,特别是BotFrameworkAdapter类中的CreateConnectorClient()方法,该方法将出站请求发送回Bot Framework Service,最终与通道进行对话。

Bot Framework Service既可以入站也可以出站,而Bot Connector Service仅可以出站。Bot连接器服务通过传递活动对象在机器人与通道(用户)之间交换信息。当您的漫游器向Bot连接器服务发送请求时,它必须包含连接器服务可用来验证其身份的信息。同样,当连接器服务向您的机器人发送请求时,它必须包含该机器人可以用来验证其身份的信息。

如果您查看此流程图,它将说明主要的bot逻辑

在此处输入图片说明

该图解释了步骤的BOT到连接器的认证。

在此处输入图片说明

此图说明了从连接器到机器人的身份验证步骤

在此处输入图片说明

注意:我们目前正在使用更详细的信息和流程图来更新文档,以帮助用户了解Azure Bot Service的每个组件。链接发布后,我将使用更新的链接来更新线程。

希望这可以帮助。