Module: Jabber

Defined in:
lib/xmpp4r/jid.rb,
lib/xmpp4r/x.rb,
lib/xmpp4r/iq.rb,
lib/xmpp4r/sasl.rb,
lib/xmpp4r/query.rb,
lib/xmpp4r/caps/c.rb,
lib/xmpp4r/client.rb,
lib/xmpp4r/errors.rb,
lib/xmpp4r/stream.rb,
lib/xmpp4r/xmpp4r.rb,
lib/xmpp4r/message.rb,
lib/xmpp4r/debuglog.rb,
lib/xmpp4r/muc/item.rb,
lib/xmpp4r/presence.rb,
lib/xmpp4r/reliable.rb,
lib/xmpp4r/callbacks.rb,
lib/xmpp4r/component.rb,
lib/xmpp4r/muc/x/muc.rb,
lib/xmpp4r/semaphore.rb,
lib/xmpp4r/tune/tune.rb,
lib/xmpp4r/connection.rb,
lib/xmpp4r/rpc/iq/rpc.rb,
lib/xmpp4r/xhtml/html.rb,
lib/xmpp4r/xmppstanza.rb,
lib/xmpp4r/idgenerator.rb,
lib/xmpp4r/xmppelement.rb,
lib/xmpp4r/last/iq/last.rb,
lib/xmpp4r/streamparser.rb,
lib/xmpp4r/delay/x/delay.rb,
lib/xmpp4r/framework/bot.rb,
lib/xmpp4r/framework/base.rb,
lib/xmpp4r/vcard/iq/vcard.rb,
lib/xmpp4r/muc/iq/mucadmin.rb,
lib/xmpp4r/muc/iq/mucowner.rb,
lib/xmpp4r/roster/x/roster.rb,
lib/xmpp4r/dataforms/x/data.rb,
lib/xmpp4r/pubsub/iq/pubsub.rb,
lib/xmpp4r/roster/iq/roster.rb,
lib/xmpp4r/bytestreams/iq/si.rb,
lib/xmpp4r/location/location.rb,
lib/xmpp4r/muc/x/mucuseritem.rb,
lib/xmpp4r/observable/helper.rb,
lib/xmpp4r/observable/pubsub.rb,
lib/xmpp4r/rpc/helper/client.rb,
lib/xmpp4r/rpc/helper/server.rb,
lib/xmpp4r/caps/helper/helper.rb,
lib/xmpp4r/command/iq/command.rb,
lib/xmpp4r/httpbinding/client.rb,
lib/xmpp4r/last/helper/helper.rb,
lib/xmpp4r/observable/contact.rb,
lib/xmpp4r/tune/helper/helper.rb,
lib/xmpp4r/vcard/helper/vcard.rb,
lib/xmpp4r/version/iq/version.rb,
lib/xmpp4r/muc/iq/mucadminitem.rb,
lib/xmpp4r/muc/x/mucuserinvite.rb,
lib/xmpp4r/muc/helper/mucclient.rb,
lib/xmpp4r/pubsub/children/item.rb,
lib/xmpp4r/roster/helper/roster.rb,
lib/xmpp4r/test/listener_mocker.rb,
lib/xmpp4r/caps/helper/generator.rb,
lib/xmpp4r/muc/helper/mucbrowser.rb,
lib/xmpp4r/pubsub/children/event.rb,
lib/xmpp4r/pubsub/children/items.rb,
lib/xmpp4r/discovery/iq/discoinfo.rb,
lib/xmpp4r/location/helper/helper.rb,
lib/xmpp4r/discovery/helper/helper.rb,
lib/xmpp4r/discovery/iq/discoitems.rb,
lib/xmpp4r/observable/subscription.rb,
lib/xmpp4r/pubsub/children/publish.rb,
lib/xmpp4r/pubsub/children/retract.rb,
lib/xmpp4r/command/helper/responder.rb,
lib/xmpp4r/pubsub/helper/nodehelper.rb,
lib/xmpp4r/version/helper/responder.rb,
lib/xmpp4r/pubsub/helper/nodebrowser.rb,
lib/xmpp4r/bytestreams/iq/bytestreams.rb,
lib/xmpp4r/discovery/helper/responder.rb,
lib/xmpp4r/muc/helper/simplemucclient.rb,
lib/xmpp4r/bytestreams/helper/ibb/base.rb,
lib/xmpp4r/pubsub/children/node_config.rb,
lib/xmpp4r/pubsub/children/unsubscribe.rb,
lib/xmpp4r/pubsub/helper/servicehelper.rb,
lib/xmpp4r/pubsub/children/subscription.rb,
lib/xmpp4r/bytestreams/helper/ibb/target.rb,
lib/xmpp4r/pubsub/children/configuration.rb,
lib/xmpp4r/feature_negotiation/iq/feature.rb,
lib/xmpp4r/version/helper/simpleresponder.rb,
lib/xmpp4r/bytestreams/helper/filetransfer.rb,
lib/xmpp4r/bytestreams/helper/ibb/initiator.rb,
lib/xmpp4r/pubsub/helper/oauth_service_helper.rb,
lib/xmpp4r/pubsub/children/subscription_config.rb,
lib/xmpp4r/bytestreams/helper/socks5bytestreams/base.rb,
lib/xmpp4r/bytestreams/helper/socks5bytestreams/server.rb,
lib/xmpp4r/bytestreams/helper/socks5bytestreams/socks5.rb,
lib/xmpp4r/bytestreams/helper/socks5bytestreams/target.rb,
lib/xmpp4r/bytestreams/helper/socks5bytestreams/initiator.rb

Overview

XMPP4R - XMPP Library for Ruby

License

Ruby’s license (see the LICENSE file) or GNU GPL, at your option.

Website::xmpp4r.github.io

Defined Under Namespace

Modules: Bytestreams, Caps, Command, Dataforms, Delay, Discovery, EntityTime, FeatureNegotiation, FileTransfer, Framework, HTTPBinding, LastActivity, MUC, PubSub, RPC, Reliable, Roster, SASL, Test, UserLocation, UserTune, Vcard, Version, XHTML, XParent Classes: ArgumentError, Callback, CallbackList, Client, ClientAuthenticationFailure, Component, ComponentAuthenticationFailure, Connection, ErrorResponse, IdGenerator, InvalidChatState, Iq, IqQuery, JID, JabberError, Message, NoNameXmlnsRegistered, NotConnected, Observable, Presence, SOCKS5Error, Semaphore, ServerDisconnected, ServerError, Stream, StreamParser, X, XMPPElement, XMPPStanza

Constant Summary collapse

XMPP4R_VERSION =

XMPP4R Version number. This is the ONLY place where the version number should be specified. This constant is used to determine the version of package tarballs and generated gems.

'0.5.6'
@@debug =

Is debugging mode enabled ?

false
@@warnings =

Is warnings mode enabled ?

false

Class Method Summary collapse

Class Method Details

.debugObject

returns true if debugging mode is enabled. If you just want to log something if debugging is enabled, use Jabber::debuglog instead.



45
46
47
# File 'lib/xmpp4r/debuglog.rb', line 45

def Jabber::debug
  @@debug
end

.debug=(debug) ⇒ Object

Enable/disable debugging mode. When debug mode is enabled, information can be logged using Jabber::debuglog. When debug mode is disabled, calls to Jabber::debuglog are just ignored.



26
27
28
29
30
31
32
33
# File 'lib/xmpp4r/debuglog.rb', line 26

def Jabber::debug=(debug)
  @@debug = debug
  if @@debug
    debuglog('Debugging mode enabled.')
    #if debug is enabled, we should automatically enable warnings too
    Jabber::warnings = true
  end
end

.debuglog(string) ⇒ Object

Outputs a string only if debugging mode is enabled. If the string includes several lines, 4 spaces are added at the beginning of each line but the first one. Time is prepended to the string.



52
53
54
55
# File 'lib/xmpp4r/debuglog.rb', line 52

def Jabber::debuglog(string)
  return if not @@debug
  logger.debug string.chomp.gsub("\n", "\n    ")
end

.loggerObject



8
9
10
# File 'lib/xmpp4r/debuglog.rb', line 8

def Jabber::logger
  @@logger ||= Logger.new($stderr)
end

.logger=(logger) ⇒ Object

Set the logger to use for debug and warn (if enabled)



13
14
15
# File 'lib/xmpp4r/debuglog.rb', line 13

def Jabber::logger=(logger)
  @@logger = logger
end

.warnings=(warnings) ⇒ Object

Enable/disable warnings mode.



36
37
38
39
40
41
# File 'lib/xmpp4r/debuglog.rb', line 36

def Jabber::warnings=(warnings)
  @@warnings = warnings
  if @@warnings
    warnlog('Warnings mode enabled.')
  end
end

.warnlog(string) ⇒ Object

Outputs a string only if warnings mode is enabled.



58
59
60
61
# File 'lib/xmpp4r/debuglog.rb', line 58

def Jabber::warnlog(string)
  return if not @@warnings
  logger.warn string.chomp.gsub("\n", "\n    ")
end