class Repost < EventMachine::IRC::Client attr_accessor :triggers def dispatch_raw_message(message = {}) self.triggers = [] if self.triggers.nil? self.triggers.each do |trigger| trigger[:code].call(message) if message[:command] == trigger[:command] end end def register_trigger(command, &code) self.triggers = [] if self.triggers.nil? self.triggers << {:command => command, :code => code} end end