時限爆弾

ちょっと更新と仕様変更。

(space)$victim/M/D/h:s を@time_bombtterにReplyで投げると$victimをM月D日h時s分に爆発させます。TwitterのReplyの仕様が変わったので頭に@time_bombtterつける必要がなくなってちょっと自由度は上がったかも?

あと時限爆弾がセットされると「セットしました」のReplyが@time_bombtterから飛んできます。



せっかくなので内部仕様も紹介。

言語はPHPで30行ちょいぐらい。http://labs.transrain.net/products/services_twitter/を使っています。pearを使えば簡単にインストールできるし、PHP5 5.2.0以上ではデフォルトでJSONをデコードできる関数があるので便利。

新しい爆破依頼はReplyを拾ってきて正規表現でマッチしたものをatでセット。拾う頻度はcronを使って3分に1回、1ページ(=20 replies)。まぁそんなに流行らないだろうし十分かな、と。

ログは今のところ最新の依頼のみ残しておいて、セット済みかどうかを判断してます。なのでキャンセルとか過去の依頼についての機能を追加するときは新しくSQLiteでも使うことになりそう。

あとは細かい話になると正規表現でフィルタしきれてない部分があって、例えば4/31とかでも依頼受付するんだけどそこはatの仕様で勝手に5/1になったりします。


ちなみにアイコンは何かというとボンバーマンのリモコン爆弾ですw