0
votes

I'm building an android application with chat functionality which uses a XMPP server which is tigase. I ran into this neat issue of which; when a user's data connection drops, the presence state still displays as online. I read in the tigase forums that this is the typical behavior. It takes by default about 10 minutes to update the status.

But, we all know that chat apps like Gtalk used to show presence correctly in this type of situations. So my questions are:

  1. Is this normal in XMPP? What trick/hack/workaround will help me overcome this? (I have already tried editing the init.properties file and restarting for a timeout of 10s, but still no response)

  2. Is tigase the correct answer? My user base would be around a couple of thousand users max if this starts up, and it would not matter to change into a more simpler XMPP server?

  3. Will requesting presence for a peer force the server to re-check the connection status of users? will that trigger any presence updates?

My client library is Asmack. (if that helps)

Thanks in advance :)

1

1 Answers

0
votes

I'm new to xmpp in fact, and I try to use tigase as client lib and openfire as server, and in the simple official example if client use disconnect() method of class tigase.jaxmpp.j2se.Jaxmpp, the status shown in the server of this client will be offline(i.e. not in the client list), otherwise the status will be online for long time after client leave. I don't know whether openfire and tigase use the same mechanism on this kind of client leave.