RE: [jdev] IQ Semantics RFC 3920 9.2.3 IQ Semantics
Michael Finney Wrote: Must the 'id' attribute of an IQ stanza be unique? I do not see the answer in RFC 3920. Section 9.1.3 of Core says: It is OPTIONAL for the value of the 'id' attribute to be unique globally, within a domain, or within a stream. Much to my surprise, section 9.2.3 (IQ Semamtics), did not further restrict this, and make the 'id' attribute unique on a stream. It only says that the 'id' attribute is required for IQ packets. From a practical perspective, the value of the 'id' attribute is typically unique over a stream. We use GUID's by default which are globally unique, but most SDK's, Clients, and Servers simply use an incrementing number. Where this typically becomes an issue is on the client side - A client may send out 5 or 6 (or 100 or 200) IQ requests. As the responses come back from various clients and servers, the client needs to be able to match them up with the original sending packet. If the ID attributes aren't unique, then the matching logic need be very esoteric. -- Chris Mullins Coversant, Inc.
RE: [jdev] (no subject)
BTW, please forgive the lack of a subject. My keyboard or Microsoft operating system went nuts. Not sure which. -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Michael Finney Sent: Sunday, October 30, 2005 3:49 PM To: 'Jabber software development list' Subject: [jdev] (no subject) This might be a strange question but. What is the worst that could happen if a client does not response to an IQ-set sent from the server? iq type=set id=860-11 to=[EMAIL PROTECTED]query xmlns=jabber:iq:rosteritem jid=[EMAIL PROTECTED] subscription=none//query/iq
RE: [jdev] (no subject)
Michael Finney Wrote: What is the worst that could happen if a client does not response to an IQ-set sent from the server? In practice, there's no real issue with not responding. Most of the servers are pretty forgiving in this regard, and won't penalize a client for not responding. For example, very few clients actually send back iq:result when they receive a roster push. The RFC says this needs to be sent back, but speaking as a server developer that frequently tests compatibility across a wide range of clients, I can say that few do. -- Chris Mullins