最近、手元のDebianサーバにIRCサーバを建てた際、IRCで稼動するロボットプログラムの習作として、チャンネルの発言をログとして保存するロガーを作ってみました。IRCネットワークに常駐してチャンネルにInviteされるとロギングを開始するという単純なものです。
CPANに登録されているNet::IRCモジュールを使うことで比較的簡単にIRCクライアントを書くことができました。
kataribe
ver.0.01, '07/04/11, Perl
|
通常ユーザとして振舞うのでオペレータ権限が無いとinviteやkickできないなどの制限があるかもしれません。
基本的には受信したメッセージの種類に応じて反応をするイベント駆動型でプログラミングを行います。今は発言(publicやnotice)イベントで発言内容をログに追記しているだけですが、ここを改造することで人工無脳を作ったりもできそうです。
元はTRPGのルールの一つだと思うのですが名前の響きが良かったので拝借させて頂きました。