[ejabberd] xep-0198 resume_timeout

Holger Weiß holger at zedat.fu-berlin.de
Wed Nov 26 02:04:30 MSK 2014


* Raoul Duke <rduke496 at gmail.com> [2014-11-25 21:26]:
> When i set resume_timeout to 0 I get the desired behaviour and the
> same behaviour I used to get on the old version i.e. that users are
> marked as offline in a timely fashion as soon as mod_ping states that
> they are offline.
> 
> However, with this resume_timeout value of 0 I lose the value-added I
> was getting from xep-0198
> 
> I want both!   Is there any configuration or other way to get the "as
> soon as mod_ping notices the user is offline then mark them as such"
> but still be able to leverage session resumption from xep-0198?

No, you can't have both.  XEP-0198 allows client sessions to survive
short network outages (as they commonly happen on mobile or wireless
networks) transparently.  If the server marked the client as offline
during that time, this would trigger actions such as the client being
removed from conference rooms on remote servers, for example.

I think the assumption is that if the client didn't close the stream
cleanly, he *will* come back and resume the session more often than not.
So XEP-0198 is optimized for this case, whereas it doesn't work that
well when no resumption takes place.

> Any input/suggestions/gotchas greatly appreciated.

I was thinking about using XEP-0310 (Presence State Annotations) to mark
sessions as "paused", but I'm not sure any clients support that (yet).

Holger


More information about the ejabberd mailing list