2014-06-23 hibot と自動 fav スクリプトをつくった
ひとり読書会向けの HUBOT である hibot をつくった。
まず自動 fav スクリプトを加えた。
ぼくは自動であっても fav されるのが好きで、#hitoridokusho
タグを書けば fav されるとうれしい。まるで #hitoridokusho
にごほうびがついている気分になる。そこで自動 fav スクリプトを書いた。
対話的なコマンドを必要としないので Hubot 向けのスクリプトではないのだけど、さらっと書いて追加した。Twitter から #hitoridokusho
というハッシュタグを定期的に検索して追加されたら自動で fav る。動きは以前書いた hubot-egosa をベースにしている。
今回ハマったのは Twitter API v1.1 の favorites 関連の動きがてんでダメだったことだ。twitter
も twitter-js-client
も node-twitter
も試したがどれもダメだった。諦めて必要な部分だけを自作した。他人のライブラリでハマった時間よりも、自分でライブラリを書いた時間のほうが圧倒的に短いという結果。
またリポジトリのつくりかたを変えた。
今回のリポジトリは hubot-scripts
のような Hubot スクリプトだけの形ではなく、hubot
に依存するパッケージの形にしている。仮に hubot-scripts
をつくったとして、そこから何を使うのかを hubot-scripts.json
に書いたり、依存ライブラリを package.json
に書いたりしたリポジトリを別に設置するというのはまどろっこしいだけだ。どうせ全部の Hubot スクリプトを使うし、本当にスクリプトを選んで使うのなら、そもそも hubot-scripts
のように束ねるべきではない。それぞれ別のパッケージとして GitHub なり npm なりで公開すれば良い。
今回の hibot のように package.json
に hubot
やスクリプトの依存ライブラリなどを含んだ、独自アプリケーションをパッケージとしたほうが簡単にデプロイできる。
$ git clone git@github.com:hitoridokusho/hibot.git
$ cd hibot
$ heroku create
$ heroku config:set HEROKU_URL='...' ...
$ git push heroku master
公開しても大丈夫な設定は commit されているので、本当に手軽だ。
最後にひとり読書会は新しいメンバーを募集している。一緒にプログラミング関連書籍を読んで、話ができればきっと楽しいとぼくは信じている。堅い会ではないので(下手すると食べながらになりかねないくらいに)、気軽に参加してほしい。