你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
将机器人连接到 Slack
适用于: SDK v4
可以对机器人进行配置,以便通过 Slack 应用与人通信。 本文介绍如何使用 Slack 创建 Slack 应用,将机器人连接到 Azure 中的 Slack 应用,以及如何在 Slack 中测试机器人。
本文介绍如何在 Azure 门户中向机器人添加 Slack 通道。 有关如何使用自定义通道适配器的信息,请参阅 其他信息。
先决条件
- Azure 订阅。 如果还没有此订阅,请在开始之前创建一个免费帐户。
- 发布到要连接到 Slack 的 Azure 的机器人。
- 前往 https://api.slack.com/apps,使用适当的权限访问 Slack 工作区,以便创建/管理应用程序。 如果你无权访问 Slack 环境,你可以创建一个工作区。
在 Slack 中创建应用
首先在 Slack 中创建一个应用程序,它生成在 Azure 中为机器人配置 Slack 通道所需的信息。
- 转到 应用面板并登录 Slack 帐户。
- 选择创建新应用,如果这是第一个应用程序,则选择创建应用。
- 在创建应用页上,选择从头开始。
- 在“名称应用”和“选择工作区”页上,输入 Slack 应用程序的名称。
- 若要 选择要在其中开发应用的工作区,请选择应用的工作区。
- 查看并同意 API 使用情况服务条款。
- 选择创建应用.。
添加新的重定向 URL
创建应用后,向应用添加重定向 URL。
选择 OAuth 和权限。
在生成的窗格中,在重定向 URL,选择添加新的重定向 URL。
在输入框中,输入以下重定向 URL 之一,然后选择添加。
- 对于全局机器人,请输入
https://slack.botframework.com
。 - 对于区域机器人,根据所选区域输入以下 URL:
区域 重定向 URL 欧洲 https://europe.slack.botframework.com 印度 https://india.slack.botframework.com - 对于全局机器人,请输入
选择保存URL。
订阅机器人事件
添加重定向 URL 后,将应用订阅到机器人事件,让 Slack 在指定的 URL 上通知机器人用户活动。 根据机器人将在 Slack 中使用的功能订阅事件。
选择事件订阅。
在生成的窗格中,将启用事件”切换为打开。
对于请求 URL,请输入以下请求 URL 之一,其中
{bot-name}
是Azure 机器人资源的显示名称,没有大括号。- 对于全局机器人,请输入
https://slack.botframework.com/api/Events/{bot-name}
。 - 对于区域机器人,根据所选区域输入以下 URL:
区域 请求 URL 欧洲 https://europe.slack.botframework.com/api/Events/{bot-name}
印度 https://india.slack.botframework.com/api/Events/{bot-name}
- 对于全局机器人,请输入
在订阅机器人事件下,选择添加机器人用户事件,然后订阅事件。 例如:
member_joined_channel
member_left_channel
message.channels
message.groups
message.im
message.mpim
选择保存更改。
允许用户向机器人发送消息
订阅机器人事件后,允许用户向机器人发送消息。
- 选择应用主页。
- 在生成的窗格中,在消息选项卡下的显示选项卡部分,启用允许用户从邮件选项卡中发送斜杠命令和邮件。
添加和配置交互式消息
(可选)启用交互式消息。
选择 交互和快捷方式。
对于 请求 URL:
- 对于全局机器人,请输入
https://slack.botframework.com/api/Actions
。 - 对于区域机器人,根据所选区域输入以下 URL:
区域 请求 URL 欧洲 https://europe.slack.botframework.com/Actions
印度 https://india.slack.botframework.com/Actions
- 对于全局机器人,请输入
选择保存更改。
复制应用信息
需要以下信息才能将 Slack 通道添加到机器人。 始终将应用凭据复制并存储在安全的位置。
- 选择基本信息。
- 在生成的窗格中,在应用凭据下,找到客户端 ID,客户端密码和签名密钥。
- 现在,选择 OAuth 和权限。
- 在生成的窗格中,找到作用域部分。 记录应用的机器人令牌范围。
配置您的 Azure 机器人
若要完成此步骤,需要上一步中的 Slack 应用程序凭据。
打开 Azure 门户。
打开 Azure 机器人的资源边栏选项卡。
打开频道并选择 Slack。
在 Slack 通道配置中,输入在前面的步骤中复制的信息。
选择“应用”。
你将被重定向到 Slack 以完成 Slack 应用安装。
- 如果请求的权限看起来正确,请选择允许。
机器人现在已配置为与 Slack 中的用户通信。 工作区中的用户现在可以通过 Slack 应用与机器人交互。
在 Slack 中测试应用程序
- 登录到安装了应用的 Slack 工作区。
- 在应用下,选择你的应用。
- 在生成的窗格中,将消息发送到应用程序。
其他信息
注意
截至2020年6月,Slack 通道支持 Slack V2 权限范围,使机器人能够以更精细的方式指定其功能和权限。 所有新配置的 Slack 通道都将使用 V2 范围。 若要将机器人切换到 V2 范围,请在Azure 门户频道边栏选项卡中删除并重新创建 Slack 通道配置。
有关对机器人的 Slack 支持的详细信息,请参阅 Slack API 文档:
使用 Slack 适配器将机器人连接到 Slack
除了 Azure AI 机器人服务中提供的通道,用于将机器人与 Slack 连接,Bot Builder Community 存储库还定义了适用于 Slack 的自定义通道适配器。
- 有关 C# 适配器的信息,请参阅 .NET 社区存储库中的“适配器”部分 。
- 有关 JavaScript 适配器的信息,请参阅 JavaScript 社区存储库的适配器部分。