No message from application if server is unreachable. (#43)
Daniel Wisnewski opened 8 years ago

When adding an existing or registering for a new account to the application, there is no indication from the app if a server is unavailable.

For example, adding a new account on a server that is off, but has SRV records available will show on the application that the user is online. Messages or commands sent appear to be sent by the application, but no response otherwise. Suggest that initial sign-in have a response timeout to prevent the illusion of being online when the devices are not.

Andrzej, if you wish to test this, use the xmppexample.dynu.com domain I will have my local server turned off so you can replicate results.

Andrzej Wójcik (Tigase) commented 7 years ago

I've found 2 issues here:

  • it was possible to add account even if server did not exist

I've added additional verification. Now when the account is added, the client will try to connect to the XMPP server and log in. If it fails it will be not possible to add such account.

This way we will verify that account JID is valid, the XMPP server is accessible and credentials are OK.

  • if the server was unavailable client tried to reconnect ASAP.

This resulted in an infinite loop of reconnections without any delays between retries which could drain the battery. I've added backoff algorithm, so after 2 retries which will be done without any delay, any subsequent reconnection will be delayed by 5 seconds for 3rd try, 10 seconds for a 4th try, 15 seconds for a 5th try and so on. Maximal delay for reconnection is now set to 30 seconds.

Every time application will be brought to foreground number of retries will be reset to have faster reconnection when the user is active. Also if account will connect, then reconnection delay will be reset to 0 for next reconnection.

Fix will be part of the first build of version @1.1@.

Daniel Wisnewski commented 7 years ago

Messages are clear for wrong PW or un-contactable server. Considering the issue closed and fixed.

issue 1 of 1
Type
Bug
Priority
Normal
Assignee
RedmineID
5369
Version
Version 1.1
Issue Votes (0)
Watchers (0)
Reference
tigase/_clients/siskin-im#43
Please wait...
Page is in error, reload to recover