IT戦記 このページをアンテナに追加 RSSフィード Twitter

2007-12-04

わーい \(^o^)/ JS で書ける IRC ボットライブラリできたよー

どうしても IRC ボットを JavaScript で作りたくて

Rhino を勉強したよ!><

できたよー\(^o^)/

ダウンロード (CodeRepos だよ)

http://svn.coderepos.org/share/lang/java/jsbot/org/coderepos/botchang/Botchang.java

使い方

  1. まずここから js.jar (Rhino) を拾ってくる -> Rhino のダウンロード
  2. 次に pircbot.jar (PircBot) を拾ってくる -> PircBot - Java IRC Bot Framework (Java IRC API for Bots)
  3. 次に これ を org/coderepos/botchang/ ってディレクトリに入れて javac でコンパイルする!
  4. で、以下みたいな JS のファイルを作る
defineClass('org.coderepos.botchang.Botchang');

// ニックネームとエンコードの名前
var botchang = new Botchang('botchang', 'utf-8');

// verbose (デバッグ用
botchang.verbose = true;

// 接続
botchang.connect('irc.freenode.net');

// チャンネルに join する
botchang.joinChannel('#1981');

// メッセージハンドラ
botchang.onMessage = function(channel, sender, login, hostname, message) {
    if (message.match(/^botchang/)) {
        botchang.sendMessage(channel, 'My name is botchang');
    }
    else if (message.match(/^change nick:(.*)$/)) {
        botchang.nick = RegExp.$1; // dynamic change nick
    }
};

// たとえば、 Notice をハンドリングしたかったら以下のように関数追加
botchang.onNotice = function(channel, sender, login, hostname, notice) {
//...
};

で、最後に org.mozilla.javascript.tools.shell.Main を java コマンドで実行してこの JS を渡してやるだけ!><*1

java -cp ".:js.jar:pircbot.jar" org.mozilla.javascript.tools.shell.Main sample.js

ちなみに

onMessage や onNotice や sendMessage や nick の変更だけじゃなくて、いろいろできます><

短いからソース読んでみて><

あと、

ぜんぜんテストしてないよー! CodeRepos だからみんなテストとかしてしてー

たのしー

\(^o^)/

*1classpath に注意してね