概要
仕様が変わって、Incoming Webhook経由だと<@group_name>
でメンション飛ばせなくなったようなので、
slack-apiを使ったIncoming Webhook経由での通知でユーザーグループにメンションを飛ばす方法。
参照
SlackのAPI経由でのメンションの仕様変更(2018/9/12~)
Basic message formatting | slack api
方法
- ユーザーグループのIDを取得する
- API経由のメンションをIDに変更する
1.ユーザーグループのIDを取得する
- slack apiの usergroups.list からユーザーグループの情報を一覧で取得する
- もし
token
が未取得の場合は案内が出ているはずなのでtoken
を取得する - Test Methodを押すとjson形式で一覧が取得できる
- もし
- メンションを飛ばしたいユーザーグループのIDと名前を調べる
2.API経由のメンションをIDに変更する
- Incoming Webhook経由のメンションを下記に変更する
-
your_team_id
にid
、your_group_name
にname
を入れる
-
<!subteam^your_team_id|your_group_name>
- 全員に通知する場合はIDを取得しなくても平気で、それぞれ下記の通り
Slack上でのメンション方法 | API経由でのメンション方法 | 通知される範囲 |
---|---|---|
@channel |
<!channel> |
チャンネルのメンバー全員 |
@here |
<!here> |
アクティブなメンバー全員 |
追記(2020.08.27)
またまた仕様が変わったようです。
(@Ant3_Ng さんありがとうございます)
-
ユーザーグループのIDを取得する
slack apiの usergroups.listを見に行く必要がなくなり、Webでワークスペースを開いてgroupのページを見ると確認できるようです。 -
API経由のメンションをIDに変更する
旧でやると、@
されるものの通知は来ないようです。
旧: <!subteam^your_team_id|your_group_name>
新: <!subteam^your_team_id>