Add last connected to server_proxy.py

This commit is contained in:
Brett Williams
2023-10-25 18:54:36 -05:00
parent 0fe50bc175
commit b646c1f848

View File

@@ -4,6 +4,7 @@ import os
import socket import socket
import threading import threading
import time import time
from datetime import datetime
import requests import requests
from requests_toolbelt.multipart import MultipartEncoder, MultipartEncoderMonitor from requests_toolbelt.multipart import MultipartEncoder, MultipartEncoderMonitor
@@ -33,6 +34,9 @@ class RenderServerProxy:
self.__background_thread = None self.__background_thread = None
self.__offline_flags = 0 self.__offline_flags = 0
self.update_cadence = 5 self.update_cadence = 5
self.last_contact = datetime.now()
# to prevent errors, the last contact datetime is set to when the class is initialized - you must keep an
# instance of this class alive to accurately know the delay
def connect(self): def connect(self):
status = self.request_data('status') status = self.request_data('status')
@@ -55,6 +59,7 @@ class RenderServerProxy:
req = self.request(payload, timeout) req = self.request(payload, timeout)
if req.ok and req.status_code == 200: if req.ok and req.status_code == 200:
self.__offline_flags = 0 self.__offline_flags = 0
self.last_contact = datetime.now()
return req.json() return req.json()
except json.JSONDecodeError as e: except json.JSONDecodeError as e:
logger.debug(f"JSON decode error: {e}") logger.debug(f"JSON decode error: {e}")