diff --git a/src/api/server_proxy.py b/src/api/server_proxy.py index 295e0ed..bfa9a55 100644 --- a/src/api/server_proxy.py +++ b/src/api/server_proxy.py @@ -4,6 +4,7 @@ import os import socket import threading import time +from datetime import datetime import requests from requests_toolbelt.multipart import MultipartEncoder, MultipartEncoderMonitor @@ -33,6 +34,9 @@ class RenderServerProxy: self.__background_thread = None self.__offline_flags = 0 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): status = self.request_data('status') @@ -55,6 +59,7 @@ class RenderServerProxy: req = self.request(payload, timeout) if req.ok and req.status_code == 200: self.__offline_flags = 0 + self.last_contact = datetime.now() return req.json() except json.JSONDecodeError as e: logger.debug(f"JSON decode error: {e}")