Slack
Slack 是一个消息传递平台,可帮助团队进行连接和协作。 选择 slack 作为服务目标时,可以将有关事件的任何预订通知作为消息发送到 Slack 通道。
向松弛发送长度超过 3000 个字符的消息时,消息文本将被引导者 [...]
截断。
生成松弛的传入网络URL
要发布松弛通知,您需要生成一个传入的webhook URL。 要生成 URL,请按照以下步骤操作 :Slack的传入网络挂钩。
配置松弛目标
在将 Slack 配置为“直接消息”的目的地之前,请确保已创建并配置了一个机器人令牌范围为 chat:write
的 Slack 应用程序。 有关详细信息,请参阅 Slack API 文档:(https://api.slack.com/quickstart#creating )。
要配置 Slack 目的地,请按照以下步骤操作:
-
登录 Event Notifications 实例控制面板并导航至目的地。
-
点击 “添加” 可添加新的目的地。
-
在添加目的地侧面板中,提供以下详细信息:
- 名称:输入目的地名称。
- 描述:可选择输入目的地描述。
- 类型:在“目标”下,从列表中选择 Slack 作为目标类型。
- 发送消息:请选择以下选项之一:
- 使用传入的webhook:提供Slack传入的webhook URL。
- 使用直接消息: 提供机器人用户 OAuth 令牌。
配置松弛预订
- 使用传入网络挂钩
- 您可以根据十六进制代码为单个 Slack 订阅添加附件颜色。 例如,使用 #0000FF 将颜色设置为蓝色。
- 使用直接消息
- 您可以提供成员 ID 和频道 ID 列表。 如果提供了通道 ID,则应用程序应集成到指定的通道中。
Event Notifications 中的缺省松弛通知 (无模板) 的外观
事件通知从传入有效内容生成松弛通知。 用于发送至 Slack 的模板事件通知如下所示-
{
"blocks": [
{
"type": "rich_text",
"elements": [
{
"type": "rich_text_section",
"elements": [
{
"type": "text",
"text": "{{ibmendefaultshort}}", // Read from event payload
"style": {
"bold": true
}
}
]
}
]
},
{
"type": "section",
"text": {
"type": "plain_text",
"text": "{{ibmendefaultlong}}", // Read from event payload
"emoji": true
}
},
{
"type": "divider"
},
{
"type": "context",
"elements": [
{
"type": "mrkdwn",
"text": "```{{event_payload}}```" // Full notification payload sent to /notifications endpoint
}
]
}
]
}
这里-
ibmendefaultshort 是入局有效内容中提供的缺省短有效内容。 ibmendefaultlong是传入有效载荷中提供的默认长有效载荷。 data是传入有效负载中提供的 JSON 数据,在松弛通知中格式为 JSON。
有关如何创建和使用松弛通知模板的更多信息,请参阅此处
测试 Slack 目标配置
您可以在提供的选项菜单中测试 Slack 目标。 您可以毫不费力地测试目标,无论所提供的配置是否正确,只需单击即可。
有关测试目标的更多信息,请参阅 此处。
Slack 重试策略
发布松弛通知时,网络错误和应用程序故障等问题可能会导致请求失败。 重试用于向外部请求提供弹性。 尝试使用以下值在此类情况下重试请求:
- 限制 = 60 秒: 服务重试的总时间。
- 步骤 = 5 秒: 每次失败后,服务会等待 5 秒,然后重试。 此延迟可防止对外部服务 (Webhook) 进行轰炸。
此外,以下超时条件会导致松弛调用失败:
- 连接超时为 10 秒
- 响应超时为 60 秒
如果尝试重试后,调用Slack URL 仍然失败,则通知将丢失。