import json import socket import threading import time class TCPClient: def __init__(self, ip, port): self.error_count=0 self.IPAddress = ip self.port = port self.connected = False def CreatConnect(self): self.client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM) self.client_socket.settimeout(5) self.client_socket.connect((self.IPAddress, self.port)) def is_Connect(self): try: self.client_socket.send(b'') return True except OSError: return False def run(self): while True: time.sleep(0.2) self.connected = (self.error_count > 3) try: if (self.send_Status() and self.send_Command()): self.error_count = 0 except Exception as e: self.error_count += 1 if self.error_count> 5: print("Error: TCPClient is not connected") try: self.CreatConnect() except OSError as e1: if e1.errno == 10056: self.client_socket.close() print("Error: TCPClient is not connected") except Exception as e2: print(e2) def send_Command(self): return False def send_Status(self): return False