More robust websocket retry handler for Todoist
This commit is contained in:
parent
d27b23ec5a
commit
2ceb3511b3
1 changed files with 14 additions and 9 deletions
|
@ -58,22 +58,27 @@ class TodoistBackend(Backend):
|
|||
|
||||
return hndl
|
||||
|
||||
def _retry_hndl(self):
|
||||
self._ws = None
|
||||
self.logger.warning('Todoist websocket connection closed')
|
||||
self._connected = False
|
||||
|
||||
while not self._connected:
|
||||
self._connect()
|
||||
time.sleep(10)
|
||||
|
||||
def _on_error(self):
|
||||
# noinspection PyUnusedLocal
|
||||
def hndl(ws, error):
|
||||
self.logger.warning('Todoist websocket error: {}'.format(error))
|
||||
self._retry_hndl()
|
||||
|
||||
return hndl
|
||||
|
||||
def _on_close(self):
|
||||
# noinspection PyUnusedLocal
|
||||
def hndl(ws):
|
||||
self._ws = None
|
||||
self.logger.warning('Todoist websocket connection closed')
|
||||
self._connected = False
|
||||
|
||||
while not self._connected:
|
||||
self._connect()
|
||||
time.sleep(10)
|
||||
def hndl(*_, **__):
|
||||
self.logger.info('Todoist websocket closed')
|
||||
self._retry_hndl()
|
||||
|
||||
return hndl
|
||||
|
||||
|
|
Loading…
Reference in a new issue