The rule is that stanzas must be delivered in order for a given 
source/destination JID pair.  However, a MUC service sends stanzas from many 
different JIDs if you consider the varying resources, and therefore it cannot 
have any expectation that its sent stanzas will maintain order.  This means 
that when a client joins a room, the room history might be received before the 
presence ack of the join attempt, and individual messages within the room 
history itself might get reordered.

I haven't yet thought about how to solve this problem in MUC.  At the very 
least, I wanted to be sure we are aware of the problem in general so it 
doesn't happen again when designing new XEPs.

-Justin

Reply via email to