[jdev] How do I know when a MUC server restarts?

Thijs Alkemade me at thijsalkema.de
Thu Mar 3 16:47:54 UTC 2016

> On 3 mrt. 2016, at 14:19, Stephen Paul Weber <singpolyma at singpolyma.net> wrote:
> I am writing a external component (using it with Prosody right now) that allows users to join MUCs on other servers.  When a remote server restarts, I see this is my prosody log:
> info    outgoing s2s stream singpolyma.net->chat.yax.im closed: system-shutdown (Received SIGTERM)
> Now, my component is not running on singpolyma.net (that is a different domain on the same Prosody instance), but either maybe all s2s were incoming at the time since no one had said anything recently?
> Anyway, looking at the logs on my component, I don't see any stanza indicating anything about this.  I mean, I guess that makes sense.  Server restarts don't generate stanzas.
> The problem is that when they restart the server, it comes back up with all MUCs empty and I need to get everyone on my component to re-join.  But as it the component actually thinks they are still in the MUC!
> Other XMPP clients I use seem to (sometimes after awhile) detect this situation somehow and tell me I'm no longer in the room (or try to re-join).  How are they doing this?  Is this some quirk of the external component protocol where normally Prosody would generate this kind of stanza to a client?  Or what else could I be missing?  I really need to solve this issue...
> Many thanks for any help!

There was a bug in Prosody before 0.9.10 that caused "unavailable" presences
to occupants to never reach the users on remote servers as the s2s streams
were closed before sending those stanzas [1]. I can't tell if chat.yax.im has
already updated to that version.

But even with that there's no guarantee it will always succeed: if the s2s
streams are closed your unavailable presence won't be sent before the server
shuts down.


[1] = https://hg.prosody.im/0.9/rev/301d58705667

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://mail.jabber.org/pipermail/jdev/attachments/20160303/3fc6303e/attachment.sig>

More information about the JDev mailing list