コマンドの終了をYoで知らせるシェルスクリプト書いた
2014-09-27 追記
デスクトップ環境の機能を利用してYoしたことを通知する機能をつけた。Xが起動してない場合は標準出力へ通知内容と同様の文言を表示する。変更点は一目瞭然なので注釈は省略。つかうアイコン画像にYoっぽい感じのものを選ぶと通知がおしゃれになって嬉しくなる。
Yo*1について
Yo、ナニコレ感すごい
— 之城坂貞太 (@ngsksdt) June 21, 2014
Yo、誰も傷付くことのない最高の意思疎通っぽい
— 之城坂貞太 (@ngsksdt) June 21, 2014
コミュニケーション、KISS原則を適当な回数繰り返して適用すると最終的にYoに落とし込まれる
— 之城坂貞太 (@ngsksdt) June 21, 2014
本題
前フリ
mozcやLinuxカーネルといった長大なプログラムのコンパイルをルーチンワークとしている人々にとって、それらをコンパイルしている間に何をすべきかというのが問題になることが多いと思う。
長大なプログラムのコンパイル時にはコンピュータのリソースがコンパイルに持っていかれてしまってパフォーマンスが急激に低下するためにコンピュータを使う作業が捗らなくなる。非コンピュータな作業をすれば解決するのだけど、コンパイルがいつ終わるのか気になってどうしようもなくなってしまう私のようなせっかちな人間は、コンパイルが終わるまで標準出力とかに吐き出される進捗をずっと見続けてしまい、結果時間を浪費することになってしまう。
ところで、Yoはただ単純にYoと飛ばし飛ばされるだけの単純明快なコミュニケーションツールである。コミュニケーション上ではYo以外の冗長な情報は必要とされない。となれば、前述したコンパイルやあるいはその他のコンピュータ上で行われる長大な作業の終了を通知するのに、Yoは最適なツールなのではなかろうか。かつてはメールで通知されたものはYoという現代的なツールに置き換わるのだ。
本題
Yo API*2を使用して、コマンドの終了を所望のYoユーザへYoして知らせるシェルスクリプトを書いた。
使用するのに必要なものは以下の通り。
- Yoのアカウント(通知を受ける)
- YoのAPIトークン(Yoするのに必要。http://yoapi.justyo.co/ から取得できる)
APIトークンの取得方法はブログにYoボタンを設置した | SOTAをみるとよい。APIトークンを取得したら、上述したスクリプト内の'<YOUR_API_TOKEN>'を取得したAPIトークンで、'<DESIRED_USERNAME>'をYoしたいユーザ名で書き換えればよい。これで、API登録時に指定したYoユーザから、DESIRED_USERNAMEを置き換えたYoユーザへYoが飛んでくる。