最近、家庭用や友達との連絡用にslackを使うことが多い。Mac用のslackのアプリを使っているが、入っているチーム数やチャネル数も増えており、チームやチャネルの移動が面倒に思うことが多くなってきた。slackの情報をターミナルから見れると、移動せずとも適当にgrepかけることができて便利である。そこで、slackのapiを調べたが、tokenを取得してくればAPIを叩いて料理できるようだ。
発言のリストも簡単に取ってくることができるが、user名がidになっており、このまま見ても誰の発言かよく分からない。
そこで、発言にuser名が分かるように情報を付与したり、チャネル名やチーム名も入れられるようにする簡単なスクリプトを書いた。
詳しくはREADME.mdを見て欲しいが、slackのapiを叩いて必要なjsonの情報を取得、自分が欲しい情報をjq
で加工して、peco
で適当にフィルタリングして欲しいチームやチャネルの情報を見るという形だ。リアルタイム更新をやるのは面倒だったので、数分置きに情報を再取得させたかったが、timeout
というコマンドを使うと数分置きにプロセスをkillする、ということができるのを知った。
余談。眺めるためのスクリプトなのにリポジトリ名がloggerになっているが、元々はelasticsearchにslackの情報を投下するために作ったスクリプトのリポジトリであった。