我在Slack工作区中创建了一个传入Webhook。我正在通过第三方工具使用它,将JSON对象发布到挂钩网址。我想向@ user_1
发送通知我的问题是,通知将发送到我和用户@ user_1之间的专用频道,而不是直接发送给@ user_1,例如通过Slackbot或仅包含该用户的频道。
如何确保通知是从Slackbot或@ user_1而非我自己发送的?
我的设置方法是使用传入Webhook创建一个新应用。对于频道,我选择@ user_1,然后使用第三方提供的url发送松弛通知。
答案 0 :(得分:1)
这似乎是通过Slack应用程序设置Webhook时的标准行为。
但是有另一种方法:您还可以将传入的Webhooks设置为自定义集成。然后,您便可以将消息发送到用户的slackbot频道。
要将Webhook设置为自定义集成,请转到Slack App Directory并添加应用程序“ Incoming Webhook”。然后创建一个新的webhook。您可以在初始配置中直接使用目标用户的ID作为通道,也可以通过在消息中包含channel属性来使用通道覆盖功能。
示例:
{
"text": "This is a line of text in a channel.",
"channel": "U12345678"
}
答案 1 :(得分:0)
对于基于Webhook的直接消息,请在有效负载中的Slack用户ID前面加上“ @”:
{
"text": "This is a line of text in a channel.",
"channel": "@U1A2B3C4D"
}
请注意,此类消息似乎已由Slackbot发布。还要注意,实际上您可以使用任何活动Webhook进行直接消息传递,而不管为Webhook定义了什么渠道。