Version 2 (modified by cho45, 5 years ago)

--

Citrus

net-irc を使った IRC BOT フレームワーク

(chokan だったもの)

特徴

  • 動的ロードプラギン
  • 全部 UTF-8 (文字コード変換は Tiarra などで)
  • チャンネルごとのプラグインのオンオフ
  • テストいっぱい ( coverage: http://lab.lowreal.net/test/citrus/ )

リポジトリ

svn co http://svn.coderepos.org/share/lang/ruby/citrus/trunk/ citrus

動かすだけなら

ruby citrus.rb -c config.yaml.sample

プラグイン

  • Citrus::Plugin を継承してください (必須ではないけど)
  • ファイル名とクラス名は特に関係なくなりました

API

  • datafile("foobar") #=> Pathname でデータファイルへのパスをかえす。
  • post COMMAND, param, param #=> サーバへコマンドをおくる
    • post NOTICE, "#channel", "foobar"
  • notice channel, mesg / privmsg channel, mesg など
    • post をよぶさらに簡単なメソッド

- http://coderepos.org/share/browser/lang/ruby/citrus/trunk/plugins/simple_reply.rb (最も簡単なサンプル)

chokan からの変更点 (config.yaml とかに影響する)

  • Core プラグインの名前が System に変更
  • UriInformation? がなくなり、HTTP プラグインに
  • チャンネルごとのオンオフがコアに実装された。