Groovyでお手軽IRCBot
たまたま ircのbotのお話 - プログラミングお勉強きろく を目にして、そういえばずっと前にPircBotを要チェックや!とはてブしつつずっと放置していたなーというのを思い出しました。
というわけで、早速GroovyのGrapeを使って簡単IRCBotを書いてみました。
準備するものは、Groovyがインストールされていて、インターネッツに接続できるPCだけ。
他は一切いりません。
@Grab("pircbot:pircbot:1.4.2") // Groovy1.7系用 //@Grab(group = "pircbot", module="pircbot", version="1.4.2") // Groovy1.6系用 import org.jibble.pircbot.* // ref. http://www.jibble.org/pircbot.php class MyBot extends PircBot { void onMessage(String channel, String sender, String login, String hostname, String message) { if (message =~ name) { sendNotice channel, "You said: $message" sendMessage channel, "May I help you?" } } void onOp(String channel, String sourceNick, String sourceLogin, String sourceHostname, String recipient) { sendMessage channel, "Thank you so much!" } } def bot = new MyBot() bot.name = "groovy_bot" bot.setVerbose true // if true, verbose messages output to console. bot.connect "YOUR_IRC_SERVER_ADDRESS" bot.joinChannel "#YOUR_CHANNNEL"
上記のコードをircbot.groovyとかのファイル名で保存します。
最後の2行を自分の接続したいIRCサーバ&チャンネルに書き換えてから、
$ groovy ircbot.groovy
と実行するだけ。
PircBotのライブラリはGrapeが自動的に取得して、自動的にクラスパスに入れてくれます。
いやー便利便利。
PircBotの詳しい使い方や他のAPIなどは、以下のサイトのドキュメントをご参照ください。