Bot Framework Service和Bot Connector Service是否都相同?还是Bot Framework Service是Bot Connector Service之上的一层?我很困惑,因为它们可以互换使用。
我了解Bot Framework网络聊天组件使用直接api通过Bot Framework Service / Bot连接器服务与机器人进行通信。但是Bot Framework Service是否实现了直线协议来理解Web Chat的请求?有人可以给我完整/端到端的图片吗?
谢谢!
答案 0 :(得分:2)
我同意文档非常混乱,并且这些术语可以互换使用。实际上,当您深入了解Bot Framework端的处理方式时,Bot Framework Service和Bot Connector Service是两个不同的术语。如果您查看网站上已有的文档,
Bot Connector服务使您的机器人可以与在Bot Framework Portal中配置的通道交换消息。它使用行业标准的REST和HTTPS上的JSON,并启用JWT Bearer令牌进行身份验证。
Bot框架服务是Azure Bot服务的组件,它在用户的与机器人连接的应用程序(例如我们称为频道的Facebook,Skype,Slack等)与机器人之间发送信息。
现在要解决问题了,
Bot Framework服务驻留在云中,并以本地机器人代码可以理解的形式承担将数据从多个受支持通道的API转换为Bot Framework协议的作用。这使您的漫游器可以与多个渠道进行通信,而无需了解数据来自哪个渠道。客户端实际上是对Bot Framework Service进行REST调用,特别是BotFrameworkAdapter类中的CreateConnectorClient()方法,该方法将出站请求发送回Bot Framework Service,最终与通道进行对话。
Bot Framework Service可以同时入站和出站,而Bot Connector Service仅可以出站。 Bot连接器服务通过传递活动对象在机器人与通道(用户)之间交换信息。当您的机器人向Bot连接器服务发送请求时,它必须包含连接器服务可用来验证其身份的信息。同样,当连接器服务向您的机器人发送请求时,它必须包含该机器人可以用来验证其身份的信息。
如果您查看此流程图,它将说明主要的bot logic。
此图说明了{@ 3}用于从bot到连接器的身份验证。
注意:我们目前正在使用更详细的信息和流程图来更新文档,以帮助用户了解Azure Bot Service的每个组件。链接发布后,我将使用更新的链接来更新线程。
希望这会有所帮助。