block_given?

ジャングル ブロック ナイ アルノハ jump ダケ。CC-BY-SA 3.0

阿吽の呼吸でChatOps、標準入力と標準出力でハンドラがつくれるruboty-aunをつくった

標準入力にチャットの発言をすっと入れる。標準出力をふっと出せばハンドラーの出来上がり。Rubyでハンドラー書かなくてもいい。

f:id:block_given:20141106012733p:plain

使い方

Gemfileに以下を書いてbundle install

gem 'ruboty-aun'

Rubotyと同じディレクトリの下にaunを作って、その中に実行ファイルを置く。例えば、こんな感じ。

$ mkdir aun
$ cat > aun/aun
#!/usr/bin/env php
<?php
$body = trim(fgets(STDIN));
if ($body == 'あ') {
  fwrite(STDOUT, 'うん');
}
$ chmod u+x aun/aun

イデア

なぜ阿吽

阿吽 - Wikipedia

阿は口を開いて最初に出す音、吽は口を閉じて出す最後の音であり、そこから、それぞれ宇宙の始まりと終わりを表す言葉とされた。

今日でひとくぎり

Rubotyプラグインを1ヶ月かけて0b00011111個つくった。バイナリ的にもぞろ目で切りがいいので、毎日作るのはこれで最後にする。明日になればまた書いているかもしれないけど。 次は0b0111日で0b0001個gemをつくるチャレンジしようかな。 Rubotyを書いていて、wsgiのタマネギ画像みたいなbotフレームワークが欲しくなったので、またbotを書くかもしれない。

wsgiのタマネギ

まとめ

Rubybotが書けてとても楽しかった。Ruboty awesome!