Slackをターミナルから眺める

最近、家庭用や友達との連絡用にslackを使うことが多い。Mac用のslackのアプリを使っているが、入っているチーム数やチャネル数も増えており、チームやチャネルの移動が面倒に思うことが多くなってきた。slackの情報をターミナルから見れると、移動せずとも適当にgrepかけることができて便利である。そこで、slackのapiを調べたが、tokenを取得してくればAPIを叩いて料理できるようだ。

発言のリストも簡単に取ってくることができるが、user名がidになっており、このまま見ても誰の発言かよく分からない。

そこで、発言にuser名が分かるように情報を付与したり、チャネル名やチーム名も入れられるようにする簡単なスクリプトを書いた。

詳しくはREADME.mdを見て欲しいが、slackのapiを叩いて必要なjsonの情報を取得、自分が欲しい情報をjqで加工して、pecoで適当にフィルタリングして欲しいチームやチャネルの情報を見るという形だ。リアルタイム更新をやるのは面倒だったので、数分置きに情報を再取得させたかったが、timeoutというコマンドを使うと数分置きにプロセスをkillする、ということができるのを知った。

余談。眺めるためのスクリプトなのにリポジトリ名がloggerになっているが、元々はelasticsearchにslackの情報を投下するために作ったスクリプトリポジトリであった。