どうしても IRC ボットを JavaScript で作りたくて
Rhino を勉強したよ!><
で
できたよー\(^o^)/
ダウンロード (CodeRepos だよ)
http://svn.coderepos.org/share/lang/java/jsbot/org/coderepos/botchang/Botchang.java
使い方
- まずここから js.jar (Rhino) を拾ってくる -> http://www.mozilla-japan.org/rhino/download.html
- 次に pircbot.jar (PircBot) を拾ってくる -> PircBot - Java IRC Bot Framework (Java IRC API for Bots)
- 次に これ を org/coderepos/botchang/ ってディレクトリに入れて javac でコンパイルする!
- で、以下みたいな 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^)/