



require 'rubygems' require 'xmpp4r' client = Jabber::Client.new(Jabber::JID.new(user)) client.connect client.auth(pass) client.send(Jabber::Presence::new)
client.add_message_callback do |message|
unless message.type == :error
...
end
end
if message.body =~ /Direct from (.*):/ sender = $1 msg = message.body.split(/\r?\n/) msg.shift # Direct from ... を削る msg.pop # 末尾の行も削る body = msg.join
reply = if (body =~ /!abort/) ?
end_ = true # abort といわれたら終わる
"d #{sender} aborting..."
else
"d #{sender}\n#{message.body}"
end
client.send(Jabber::Message::new(message.from,
reply).set_type(:chat))
watcher = Thread.new do
until _end
# まだ生きてるよ !
client.send(Jabber::Presence::new)
sleep 30
end
end