你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

配置在一个或多个通道上运行的机器人

适用于: SDK v4

通道是通信应用程序与机器人之间的连接。 向 Azure 注册的机器人可使用通道实现与用户的通信。 可以将机器人配置为连接到任何标准通道,例如 Alexa、Facebook Messenger 和 Slack。 有关详细信息,请参阅 Azure 机器人注册。 除了提供的通道以外,还可以使用 Direct Line 作为通道将机器人连接到通信应用程序。 有关详细信息,请参阅将机器人连接到 Direct Line

可以借助 Bot Framework 规范化机器人发送到通道的消息,采用与通道无关的方式开发机器人。

  • 服务或适配器转换 Bot Framework 活动架构与通道架构之间的通信。
  • 如果通道不支持活动架构的所有方面,Bot Connector 服务会尝试将消息转换为通道支持的格式。 例如,如果机器人向电子邮件通道发送一个消息,该消息包含一个带有操作按钮的卡,那么连接器可能会将该卡作为一个图像发送,并包含这些操作作为消息文本中的链接。
  • 对于大多数通道,必须提供通道配置信息以在通道上运行机器人。 大多数通道都要求机器人在通道上具有帐户。 Facebook Messenger 等其他通道则还要求机器人具有已向通道注册的应用程序。

若要配置机器人以连接到通道,请完成以下步骤:

  1. 登录 Azure 门户
  2. 选择要配置的机器人。
  3. 在左侧窗格的设置下选择渠道
  4. 在右侧窗格中,选择要添加到机器人的通道的图标。 可能需要向下滚动才能查看所有可用频道的列表。

配置通道后,该通道上的用户便可以开始使用机器人。

渠道列表

每个通道的连接步骤都不相同。 有关详细信息,请参阅下表中的相关文章。

通道 说明
Alexa 通过 Alexa 自定义技能与用户通信。
Azure Communication Services Chat 使用 Azure 通信服务聊天将机器人添加到网站的聊天功能。
Direct Line 将机器人集成到移动应用、网页或其他应用程序中。
电子邮件 使机器人能够通过 Microsoft 365 电子邮件与用户通信。
Facebook 可以将机器人连接到 Facebook Messenger 和 Facebook Workplace,让其与两个平台上的用户通信。
GroupMe 将机器人配置为通过 GroupMe 与用户通信。
Kik Kik 不再支持新的机器人开发。
LINE 可以对机器人进行配置,以便通过 LINE 应用与人通信。
Microsoft Teams 将机器人配置为通过 Microsoft Teams 与用户通信。
全渠道 集成机器人以与客户开始对话,提供自动响应,然后根据需要将聊天转移到人工代理。
Outlook(预览) 将机器人配置为通过 Outlook 中的快速操作与用户通信。
搜索(预览) 启用机器人以通过 Dynamics 365 联合搜索应答用户查询。
Skype Skype 不再支持新的机器人开发。
Slack 将机器人配置为通过 Slack 与用户通信。
Telegram 将机器人配置为通过 Telegram 与用户通信。
电话服务 电话服务处于预览状态,目前不接受其他客户。
Twilio(短信) 可以将机器人配置为与使用 Twilio 云通信平台的用户进行通信。
微信 将机器人配置为使用微信平台与用户通信。
网上聊天 使用 Bot Framework Service 创建机器人时自动配置。
其他通道 通过 Botkit 提供的平台 和社区 存储库作为适配器提供的其他通道。

选择协议架构转换版本

如上所述,通道将来自其他服务的传入消息转换为 Bot Framework 协议架构。 同样,由机器人发送到其他服务的消息将从 Bot Framework 原生架构转换为这些服务的格式。 此过程称为架构转换。 Bot Framework 服务维护协议拥有向后兼容性,能够避免更改现有机器人的行为。

有时,需要对架构转换过程进行更改,这可能会改变现有机器人的行为。 此类更改的一个示例可能是任何 bug 修复,如果有些用户与现有(但错误)的行为具有依赖关系。 此类更改的另一个示例可能是更新或改进会对机器人有利的其他服务;但是,采用这些更新可能会更改现有行为。

通过控制机器人的架构转换版本,机器人开发人员可以控制何时(如果需要)启用新行为。 默认情况下,新创建的机器人会获得最新的架构转换版本。 当现有机器人准备好利用最新版本中引入的改进功能时,可以将其升级到最新版本。 任何机器人都可随时升级或降级。

可以在设置下的配置窗格中更改机器人的架构转换版本:

The Schema Transformation Version field in the Configuration pane

支持的架构转换版本

  • 版本 1.3

    • 引入日期:2021 年 5 月
    • 更改:
      • Direct Line:删除自适应卡片的反序列化/重新序列化。 自适应卡片的内容将按原样传递到客户端。
  • 版本 1.2

    • 引入日期:2021 年 4 月
    • 更改:
  • 版本 1.1

    • 引入日期:2021 年 4 月
    • 更改:
  • 版本 1.0

    • 原始版本

将机器人连接到一个或多个通道

发布过程对于每个通道都是不同的。 有关详细信息,请参阅每个特定通道的文章。

后续步骤

SDK 包含可以用于生成机器人的示例。 访问 GitHub 上的示例存储库即可看到包含示例的列表。