repost/plugins/eval.rb

23 lines
600 B
Ruby

include EventMachine::IRC::Commands
Client.register_trigger("PRIVMSG") { |msg|
message = msg[:params][1]
destination = msg[:params][0]
if message[0..5] == ":eval " then
prog = message[6..-1]
puts "will try to eval: #{prog}"
begin
retval = proc {
$SAFE = 4
eval(prog)
}.call
Client.privmsg(destination, String.try_convert(retval.to_s))
rescue Exception => e
Client.privmsg(destination, e.inspect)
puts e.inspect
puts e.backtrace
end
end
}