diff options
author | Florent Le Coz <louiz@louiz.org> | 2014-08-01 04:01:08 +0200 |
---|---|---|
committer | Florent Le Coz <louiz@louiz.org> | 2014-08-01 04:01:08 +0200 |
commit | df569d4e6699cb116b95767a1e38c69364e8cead (patch) | |
tree | 002dcebe7870979ffdc08978fdf4d222a17efa05 /src/core/handlers.py | |
parent | 2fd71cd6374d02d8e67faa0e87fb943c4c72011a (diff) | |
download | poezio-df569d4e6699cb116b95767a1e38c69364e8cead.tar.gz poezio-df569d4e6699cb116b95767a1e38c69364e8cead.tar.bz2 poezio-df569d4e6699cb116b95767a1e38c69364e8cead.tar.xz poezio-df569d4e6699cb116b95767a1e38c69364e8cead.zip |
First implementation of auto_reconnect, poezio-side
Diffstat (limited to 'src/core/handlers.py')
-rw-r--r-- | src/core/handlers.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/core/handlers.py b/src/core/handlers.py index 39c37e8f..589b2a48 100644 --- a/src/core/handlers.py +++ b/src/core/handlers.py @@ -828,6 +828,9 @@ def on_disconnected(self, event): for tab in self.get_tabs(tabs.MucTab): tab.disconnect() self.information(_("Disconnected from server."), _('Error')) + if not self.legitimate_disconnect and config.get('auto_reconnect', False): + self.information(_("Auto-reconnecting."), _('Info')) + self.xmpp.connect() def on_failed_all_auth(self, event): """ @@ -835,6 +838,7 @@ def on_failed_all_auth(self, event): """ self.information(_("Authentication failed (bad credentials?)."), _('Error')) + self.legitimate_disconnect = True def on_no_auth(self, event): """ @@ -842,6 +846,7 @@ def on_no_auth(self, event): """ self.information(_("Authentication failed, no login method available."), _('Error')) + self.legitimate_disconnect = True def on_connected(self, event): """ @@ -849,6 +854,12 @@ def on_connected(self, event): """ self.information(_("Connected to server."), 'Info') +def on_connecting(self, event): + """ + Just before we try to connect to the server + """ + self.legitimate_disconnect = False + def on_session_start(self, event): """ Called when we are connected and authenticated |