import logging import socket import struct import threading from typing import Callable, Optional from wpilib import Timer class TspPing: def __init__(self, version: int, message_id: int, client_time: int): self.version = version self.message_id = message_id self.client_time = client_time @staticmethod def unpack(data: bytes) -> "TspPing": # Unpack using struct.unpack version, message_id, client_time = struct.unpack(" bytes: # Pack using struct.pack return struct.pack(" bytes: # Pack using struct.pack return struct.pack( " "TspPong": # Unpack using struct.unpack version, message_id, client_time, server_time = struct.unpack("