When running a Jabber client what happens (or what should happen) when switching networks (or when losing connectivity and the GSM/UMTS modem reconnects)?
Can a mobile Android Jabber client (e.g. Jabiru) be smart about such situations?
Worst case scenario I can imagine: Client does not care, TCP (over TLS) connection to the Jabber server is lost, the Jabber status (displayed remotely) is bogus and there is a time window where messages (from buddies) are lost.
I observed such a worst case for example with a stock Jabber client on a Laptop using an unreliable UMTS connection.
When using a Laptop I can easily shield my Jabber session like this:
- connect via
autossh
to a system with a stable network connection and directly runscreen -Rd
- start a console Jabber client inside
screen
Thus, when losing the mobile internet connection the connection to the Jabber server is still fine. And autossh
automatically reconnects and re-attaches to the running screen session when a new mobile connection is up.
Is a setup similar to this necessary when using Jabber on an Android device?
Or are there Jabber protocol extensions for mobile clients that actually help to avoid losing messages etc. in network on/off situation (while being connected to a Jabber server)?