ユーザーへの通知
ユーザーグループIDの取得方法
ブラウザからSlackにアクセスする。
ユーザーグループを選択すると、URLがこんな感じになるので、<user_group_id>
の部分がIDに相当する。
https://app.slack.com/client/<workspace_id>/browse-user-groups/user_groups/<user_group_id>
ユーザーグループへのメンション方法
stevenosloan/slack-notifierでは
1
2
3
4
5
6
7
8
9
|
Slack::Notifier.new.notifier(
channel: 'チャンネルID',
username: '表示名'
).post(
text: message,
icon_emoji: icon_emoji,
channel: channel,
at: mentions
)
|
みたいな感じ。
通常ユーザーへのメンションは、:at
にユーザーIDを指定すればいいんだけど、ユーザーグループの場合はそれではうまく行かない。
https://github.com/stevenosloan/slack-notifier/blob/4bf6582663dc9e5070afe3fdc42d67c14a513354/lib/slack-notifier/payload_middleware/at.rb
1
2
3
4
5
6
7
8
|
def at_cmd_char at
case at
when :here, :channel, :everyone, :group
"!"
else
"@"
end
end
|
ユーザーグループへのメンションは!ユーザーグループID
になる必要がある。
IDを渡すというのはメンションと同じなので、テキスト埋め込みで頑張る。
<!subteam^your_team_id>
参考
【Slack】Webhook 経由での通知でユーザーグループにメンションを飛ばす - Qiita