[jdev] MUC Presence: force history even if already joined

Dave Cridland dave at cridland.net
Wed Mar 26 18:05:17 UTC 2014


On 26 Mar 2014 17:49, "Daniel Dormont" <dan at greywallsoftware.com> wrote:
> I have a use case where I would like to send a presence to a MUC that
> I may have already joined and, even if I have, I want it to send me
> the message history no matter what. Is there a way to do that or would
> it require a protocol extension of some sort?

Yes and no.

Technically speaking, simply sending presence to a MUC and joining (thus
getting the history and participants) are not the same thing. Sending a
proper MUC join (with the <x/> and the history control optionally inside
it) to M-Link[*] will, therefore, give you the history you asked for, and
all the occupant presence, even if you're already in the room.

I find this *extremely* useful - which is why I did things that way. A
use-case for this is where an S2S link is down when you reconnect your C2S,
or the server crashes, or ... - all arguably edge cases, but they're solved
very nicely this way.

Other servers don't do this, though - I think they should.

If you wanted to avoid the occupant presence, you'd want an extension which
signalled this in much the same way that the history controls work.

Dave.
-- 
* - Note that I left Isode over a year ago and so may well be out of date.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://www.jabber.org/jdev/attachments/20140326/99ac84f4/attachment.html>


More information about the JDev mailing list