class Lita::Adapters::Xmpp

Attributes

connector[R]

Public Class Methods

new(robot) click to toggle source
Calls superclass method
# File lib/lita/adapters/xmpp.rb, line 11
def initialize(robot)
  super

  set_default_config_values

  @connector = Connector.new(
    robot,
    config.jid,
    config.password,
    debug: config.debug,
    connect_domain: config.connect_domain
  )
end

Public Instance Methods

run() click to toggle source
# File lib/lita/adapters/xmpp.rb, line 25
def run
  connector.connect
  connector.join_rooms(config.muc_domain, rooms)
  sleep
rescue Interrupt
  shut_down
end
send_messages(target, strings) click to toggle source
# File lib/lita/adapters/xmpp.rb, line 33
def send_messages(target, strings)
  if target.room
    connector.message_muc(target.room, strings)
  else
    connector.message_jid(target.user.id, strings)
  end
end
send_raw_messages(target, strings) click to toggle source
# File lib/lita/adapters/xmpp.rb, line 41
def send_raw_messages(target, strings)
  if target.room
    connector.message_muc(target.room, strings, true)
  else
    connector.message_jid(target.user.id, strings)
  end
end
set_topic(target, topic) click to toggle source
# File lib/lita/adapters/xmpp.rb, line 49
def set_topic(target, topic)
  connector.set_topic(target.room, topic)
end
shut_down() click to toggle source
# File lib/lita/adapters/xmpp.rb, line 53
def shut_down
  connector.shut_down
end

Private Instance Methods

config() click to toggle source
# File lib/lita/adapters/xmpp.rb, line 59
def config
  Lita.config.adapter
end
rooms() click to toggle source
# File lib/lita/adapters/xmpp.rb, line 63
def rooms
  if config.rooms == :all
    connector.list_rooms(config.muc_domain)
  else
    Array(config.rooms)
  end
end
set_default_config_values() click to toggle source
# File lib/lita/adapters/xmpp.rb, line 71
def set_default_config_values
  config.debug = false if config.debug.nil?
end