Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
47
Help us understand the problem. What are the problem?

More than 5 years have passed since last update.

Organization

Slack API でユーザ・チャンネルの名前がリンクされないときの対処法 (あるいは takosan を試した件)

ikachan for Slack こと takosan を試した

Slack API を通じて簡単に Slack にメッセージを送信できる takosan が便利そうだったので試してみました。

用途としては、例えば実行に時間のかかるコマンドを実行して、終わったら自分宛てに mention を飛ばさせる、みたいな感じです。

takosan は Heroku ボタンに対応しているので、サクッと Heroku にアップして試してみたところ以下のようになりました。

brfore.png

ユーザ名やチャンネル名がリンクになっていません。
また、Recent Mentions にも表示されず、通知も行われませんでした。

これでは当初想定した使い方ができない、と思ってなんとかできないか調べてみました。

対処法: link_names=1 を指定する

調べたところ、takosan の内部では Slack Web API の chat.postMessage というメソッドが使われていることがわかりました。
そして Arguments として link_names=1 を指定することで解決できそうだったので、早速 takosan にパッチをあてて試してみました。

link_names はドキュメント上以下のようになっています。

Find and link channel names and usernames.

after.png

うまくリンクされるようになりました!
また、Recent Mentions への表示や、通知も意図した通りに行われるようになりました。

おまけ: 通知の設定を見直そう

今回のような用途で takosan (またはその他の bot) を使う場合、通知の設定を以下のようにしておくことをお勧めします。

setting.png

詳しくは以前に私が書いた以下の記事にて。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
47
Help us understand the problem. What are the problem?