SlackのIncoming WebhookでChannelへのリンクを送る方法
Slackを使っている人は Incoming Webhooks をよく使うと思う
たまにそのメッセージ内に、他のチャンネルへのリンクを表示したいときとかあると思う
例えばこんな感じ↓
普通にSlackにメッセージを書く場合は、 #<Channle名> でリンクに勝手になるが、 Webhook の場合リンクにならない 今回はその方法についてのメモを書いておきます
方法と手順
- チャンネルのIDを調べる
- メッセージ内にリンクを書く
チャンネルのIDを知る
下記ページで、SlackのAPIを叩くことができ、その結果の中から、対象のチャンネルのIDを取ってくる https://api.slack.com/methods/channels.list/test
上記ページのTokenの選択にて、自分の所属しているチームを選んで TestMethod
ボタンを押す!
すると、下記のようなJSONが帰ってくるので、チェンネル名で検索して、そのIDをコピーする
{ "ok": true, "channels": [ { "id": <ChannelのID>, "name": <Channelの名前>, ... }... ] }
メッセージ内にリンクを書く
上記プロセスで得たIDを用いて、メッセージを作る
例えば、 games
というチャンネルに対して、IDが C0R2C4M92
だったとすると、
<#C0R2C4M92|games> では、ゲームの最新情報を適宜通知しています
のようにするとちゃんとリンクになって表示される
おまけ
チャンネルじゃなくて、ユーザやグループ(プライベートチャンネルのこと)の場合は、別のAPIで取得できます