I am not sure if this is a bug or if we are just doing something wrong.
I am working on developing an XMPP client for Android, using an Openfire server. Whenever the client tries to send a message to just a bare jid <'local'@'domain'> instead of just a full jid <'local'@'domain'/'resource'>, the message ONLY goes to the last resource connected to the server, instead of broadcasting out to all resources of that account.
An example message stanza (domian and resource are real values, but 'hidden' here):
<message xmlns="" to="other@domain" id="GgxBAF36" type="chat" from="other@domain/resourece">
<body>OF is broken?
</body>
</message>
In this case, the only connection that receives the message is the one that sent it. In the case where another account, say 'original', sends the above stanza (with the necessary bits replaced), ONLY the last connection made for account 'other' gets the message. If that connection is terminated, then the next to last connection will then begin receiving the messages.
From my understanding of the XMPP standard, any stanza sent to a bare jid should be broadcasted to all resources associated witht that jid.
So, is there a bug within Openfire? Are we breaking the stanza? Or is this behavior as expected?