Class | Jabber::Iq |
In: |
lib/xmpp4r/iq.rb
|
Parent: | XMPPStanza |
IQ: Information/Query (see RFC3920 - 9.2.3
A class used to build/parse IQ requests/responses
Create a new jabber:iq:auth set Stanza.
# File lib/xmpp4r/iq.rb, line 140 140: def Iq.new_authset(jid, password) 141: iq = Iq::new(:set) 142: query = IqQuery::new 143: query.add_namespace('jabber:iq:auth') 144: query.add(REXML::Element::new('username').add_text(jid.node)) 145: query.add(REXML::Element::new('password').add_text(password)) 146: query.add(REXML::Element::new('resource').add_text(jid.resource)) if not jid.resource.nil? 147: iq.add(query) 148: iq 149: end
Create a new jabber:iq:auth set Stanza for Digest authentication
# File lib/xmpp4r/iq.rb, line 153 153: def Iq.new_authset_digest(jid, session_id, password) 154: iq = Iq::new(:set) 155: query = IqQuery::new 156: query.add_namespace('jabber:iq:auth') 157: query.add(REXML::Element::new('username').add_text(jid.node)) 158: query.add(REXML::Element::new('digest').add_text(Digest::SHA1.hexdigest(session_id + password))) 159: query.add(REXML::Element::new('resource').add_text(jid.resource)) if not jid.resource.nil? 160: iq.add(query) 161: iq 162: end
Create a new jabber:iq:register set stanza for service/server registration
username: | [String] (Element will be ommited if unset) |
password: | [String] (Element will be ommited if unset) |
# File lib/xmpp4r/iq.rb, line 168 168: def Iq.new_register(username=nil, password=nil) 169: iq = Iq::new(:set) 170: query = IqQuery::new 171: query.add_namespace('jabber:iq:register') 172: query.add(REXML::Element::new('username').add_text(username)) if username 173: query.add(REXML::Element::new('password').add_text(password)) if password 174: iq.add(query) 175: iq 176: end
Create a new jabber:iq:roster get Stanza.
IqQueryRoster is unused here because possibly not require‘d
# File lib/xmpp4r/iq.rb, line 182 182: def Iq.new_rosterget 183: iq = Iq::new(:get) 184: query = IqQuery::new 185: query.add_namespace('jabber:iq:roster') 186: iq.add(query) 187: iq 188: end
Delete old elements named newquery.name
newquery: | [REXML::Element] will be added |
# File lib/xmpp4r/iq.rb, line 90 90: def query=(newquery) 91: delete_elements(newquery.name) 92: add(newquery) 93: end
The following values are allowed:
result: | [Symbol] or nil |
# File lib/xmpp4r/iq.rb, line 48 48: def type 49: case super 50: when 'get' then :get 51: when 'set' then :set 52: when 'result' then :result 53: when 'error' then :error 54: else nil 55: end 56: end