Compare commits

..
Author SHA1 Message Date
R. Richard ea0fff5662 Remove the custom on_close event to keep the session alive 2020-05-21 17:45:03 +02:00
R. Richard 70f4d666e3 Keep websocket connection alive 2020-05-18 18:02:07 +02:00
R. Richard dc76f1b732 Fix broken ZMQ messages 2020-05-07 09:47:35 +02:00
3 changed files with 16 additions and 7 deletions
@@ -17,7 +17,7 @@ class TerminadoMiniServer:
url, url,
TerminadoMiniServer.ResetterTermSocket, TerminadoMiniServer.ResetterTermSocket,
{'term_manager': self._term_manager} {'term_manager': self._term_manager}
)]) )], websocket_ping_interval=30)
@property @property
def term_manager(self): def term_manager(self):
@@ -33,10 +33,6 @@ class TerminadoMiniServer:
def check_origin(self, origin): def check_origin(self, origin):
return True return True
def on_close(self):
self.term_manager.terminal = None
self.term_manager.get_terminal()
def listen(self): def listen(self):
self.application.listen(self.port) self.application.listen(self.port)
+14 -1
View File
@@ -42,7 +42,8 @@ def deserialize_tfw_msg(*args):
""" """
Return message from TFW multipart data Return message from TFW multipart data
""" """
return _deserialize_all(*args)[1] envelope = _deserialize_all(*args)
return _repair_if_needed(envelope)
def _serialize_all(*args): def _serialize_all(*args):
@@ -84,6 +85,18 @@ def _deserialize_single(data):
return _decode_if_needed(data) return _decode_if_needed(data)
def _repair_if_needed(envelope):
"""
Quick fix for broken messages received from separate processes.
"""
if len(envelope) == 2:
return envelope[1]
for part in envelope:
if isinstance(part, dict):
return part
return {}
def _encode_if_needed(value): def _encode_if_needed(value):
""" """
Return input as bytes Return input as bytes
+1 -1
View File
@@ -28,7 +28,7 @@ class TFWServer:
r'/ws', ZMQWebSocketRouter, { r'/ws', ZMQWebSocketRouter, {
'listener': self._listener, 'listener': self._listener,
} }
)]) )], websocket_ping_interval=30)
def listen(self): def listen(self):
self.application.listen(TFWENV.WEB_PORT) self.application.listen(TFWENV.WEB_PORT)