From 5844d4b52123a3e28be79c980f037e922656fe58 Mon Sep 17 00:00:00 2001 From: Artur Borecki Date: Fri, 29 Aug 2025 00:40:35 +0200 Subject: [PATCH] feat(connector.py): require ACK for HELLO message, retry if not received --- src/judas_client/connector.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/src/judas_client/connector.py b/src/judas_client/connector.py index 5fd6ee0..bfa71d0 100644 --- a/src/judas_client/connector.py +++ b/src/judas_client/connector.py @@ -139,7 +139,16 @@ class Connector: def send_hello(self) -> None: self.logger.debug("[.] Sending hello message...") hello_message: Message = Message.hello(self.mac_address) - self.send(hello_message.to_bytes()) + acknowledged: bool = False + while not acknowledged: + self.send(hello_message.to_bytes()) + self.logger.debug("[.] Hello message sent, waiting for ACK...") + acknowledged = self._check_ack() + if not acknowledged: + self.logger.warning( + "[!] Hello message not acknowledged, retrying..." + ) + time.sleep(1) def _loop(self) -> None: self.logger.debug("Starting main loop...")