[jdev] Error in draft-ietf-xmpp-im-22.txt Section 7.4
Geir Ove Skjærvik
geiroves at online.no
Thu Jun 3 16:25:03 CDT 2004
Hello,
Below is an excerpt from draft-ietf-xmpp-im-22.txt Section 7.4.
(Seen from the Client Side:)
It states the following described in a scenario:
a) User Adds Item to Roster
b) Server Sends Roster via IQ-Set (and provides an id="someid")
c) Server send IQ-Result
NOW to the problem: IT states:
d) All receicing Users should send IQ-Result with the ID from the IQ-Set
Problem is: Neither Jabber 1.4.2 NOR Tipiq' Timp 1.1 sends ANY ID in the
IQ-Set.
I have tried sending an IQ-Result back, but that only results in error
messages from the Server. Not sending ANY response back at all works fine
for both servers, and looks like the logical thing to do.
Error message from server when sending IQ-Result as specified:
<iq id=4 to=gos at rexii/daisy type=error from=rexii >
<error code=404 >Not Found</error></iq>
Excerpt from draft-ietf-xmpp-im-22.txt Section 7.4:
7.4 Adding a Roster Item
At any time, a user MAY add an item to his or her roster.
Example: Client adds a new item:
<iq from='juliet at example.com/balcony' type='set' id='roster_2'>
<query xmlns='jabber:iq:roster'>
<item jid='nurse at example.com'
name='Nurse'>
<group>Servants</group>
</item>
</query>
</iq>
The server MUST update the roster information in persistent storage,
and also push the change out to all of the user's available resources
that have requested the roster. This "roster push" consists of an IQ
stanza of type "set" from the server to the client and enables all
available resources to remain in sync with the server-based roster
information.
Example: Server (1) pushes the updated roster information to all
available resources that have requested the roster and (2) replies
with an IQ result to the sending resource:
<iq to='juliet at example.com/balcony'
type='set'
id='a78b4q6ha463'>
<query xmlns='jabber:iq:roster'>
<item jid='nurse at example.com'
name='Nurse'
subscription='none'>
<group>Servants</group>
</item>
</query>
</iq>
<iq to='juliet at example.com/chamber'
type='set'
id='a78b4q6ha464'>
<query xmlns='jabber:iq:roster'>
<item jid='nurse at example.com'
name='Nurse'
subscription='none'>
<group>Servants</group>
</item>
</query>
Saint-Andre Expires October 11, 2004 [Page 31]
Internet-Draft XMPP IM April 2004
</iq>
<iq to='juliet at example.com/balcony' type='result' id='roster_2'/>
As required by the semantics of the IQ stanza kind as defined in
[XMPP-CORE], each resource that received the roster push MUST reply
with an IQ stanza of type "result" (or "error").
Example: Resources reply with an IQ result to the server:
<iq from='juliet at example.com/balcony'
to='example.com'
type='result'
id='a78b4q6ha463'/>
<iq from='juliet at example.com/chamber'
to='example.com'
type='result'
id='a78b4q6ha464'/>
regards
Geir Ove Skjaervik
Norway
Phone: Int+907-48-869
Fax: Int+47-6988-5947
E-mail: objective.software at online.no
WEB: http://objective.bitfikler.com
More information about the JDev
mailing list