Slack Incoming Web Hooks - 发送消息@channel

我最近正在使用Slack API,我的动机是通过调用Slack Incoming Web钩子提供的Web钩子在某个时间发送一个通道宽的消息 .

我创建了一个Web钩子并从Slack获得了如下代码

curl -X POST -H 'Content-type: application/json' --data '{"text":"Hey, Its time for meeting!! <#G5CERWGRG|hep_test>", "link_names" : 1}' HOOK_URL

但我无法通过在消息中发送@channel来通知团队中的所有人,就像我们在正常的闲聊 Channels 聊天中一样 . 如果我在curl消息中发送@channel,它会在聊天中显示为短信,而不是@channel链接 .

我甚至尝试发送松弛通道id <#G5CERWGRG|hep_test> ,如上面的curl请求所示 . 但是发布的消息并没有通知集团内的所有人 .

注意:我希望保持我的 Channels 通知偏好(仅在提及时通知)

注意

回答(1)

2 years ago

发送@channel消息的正确语法是 <!channel> .

因此,您的示例的正确curl命令应为:

curl -X POST -H 'Content-type: application/json' --data '{"text":"Hey, Its time for meeting!! <!channel>", "link_names" : 1}' HOOK_URL

另见here以供官方文档中参考 . 您也可以在message builder中尝试这一点 .

请注意,为了覆盖您的webhook的默认 Channels ,您还需要添加带有 Channels 名称的附加属性 channel . 然而,这只适用于通过自定义集成创建的webhook,而不适用于Slack应用程序创建的webhook .

有关如何覆盖通道名称的示例,请参阅here .