class Slappy::Listener::Base
Public Class Methods
new(pattern, options = {}, &callback)
click to toggle source
# File lib/slappy/listeners/base.rb, line 10 def initialize(pattern, options = {}, &callback) self.pattern = pattern if options[:from] target.channel = options[:from][:channel] target.user = options[:from][:user] end @callback = callback end
Public Instance Methods
call(event)
click to toggle source
# File lib/slappy/listeners/base.rb, line 19 def call(event) channel = "channel: #{event.try(:channel).try(:name)}" element = "#{target_element}: #{event.try(target_element)}" Debug.log "Listen event call(#{channel} / #{element})" return unless valid?(event) return unless target?(event) Debug.log "Callback event call: #{pattern}" @callback.call(event) end
Private Instance Methods
target_element()
click to toggle source
# File lib/slappy/listeners/base.rb, line 33 def target_element self.class.name.split('::').last.gsub(/Listener$/, '').underscore.to_sym end