[Standards] groupchat and error message routing
zarevucky.jiri at gmail.com
Thu Feb 12 06:46:53 UTC 2009
Yeah, it really seems to contradict a bit..
2009/2/11 Waqas Hussain <waqas20 at gmail.com>:
> On Wed, Feb 11, 2009 at 11:27 PM, Jiří Zárevúcký
> <zarevucky.jiri at gmail.com> wrote:
>> I'm not entirely sure, but I think that nobody is ever supposed to
>> send an error message to a bare JID. Errors are sent in a response to
>> an invalid stanza, which always originates from a resource. As for the
>> "groupchat", I would suggest taking a look at the relevant XEP.
>> 2009/2/11 Waqas Hussain <waqas20 at gmail.com>:
>>> When messages of type 'groupchat' and 'error' are sent to a
>>> non-existing resource, they are routed to the set of highest priority
>>> available resources. IMHO this behaviour in counter-intuitive. I don't
>>> see why an unintended resource would want a groupchat or error
>>> message, or how it's supposed to deal with it. Also note that the 'to'
>>> attribute gets overwritten, so the recieving resource doesn't even
>>> know to which resource the messages were originally directed. Could
>>> someone describe some cases where this is useful?
>>> Relevent rfc3921bis-07 sections:
>>> 8.2.2. No Resource Matches
>>> "For a message stanza, the server SHOULD treat the stanza as if it
>>> were addressed to <user at domain> as described in the next section (but
>>> without modifying the value of the 'to' attribute)."
>>> 188.8.131.52. Message
>>> "For a message stanza of type "chat", "error", "groupchat", or
>>> "normal", the server SHOULD deliver the stanza to the highest-priority
>>> available resource."
>>> Waqas Hussain
> It does happen. A resource can send a message, and go offline before
> it gets a reply. A MUC component can send a message at the same time a
> resource goes offline. Also stanzas do get lost sometimes.
> Note that the RFC explicitly defines what should happen, which means
> these cases are expected to happen.
> And no, the XEP doesn't say anything about these cases. This is stanza
> routing (from some service to local user), and must be dealt with by
> the RFC anyway.
> Waqas Hussain
More information about the Standards