From 5192415e9be3b74b6ab08258c528106660832a52 Mon Sep 17 00:00:00 2001 From: nanato12 Date: Fri, 10 Jan 2025 23:12:39 +0900 Subject: [PATCH 1/3] update --- line_works/mqtt/models/packet.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/line_works/mqtt/models/packet.py b/line_works/mqtt/models/packet.py index 48fec92..bd6ef7a 100644 --- a/line_works/mqtt/models/packet.py +++ b/line_works/mqtt/models/packet.py @@ -57,7 +57,12 @@ def publish_payload(self) -> dict[str, Any]: qos = (self.flags & 0x06) >> 1 if qos > 0: if len(self.raw_payload) < pos + 2: - raise PacketParseException("Packet too short for QoS > 0") + raise PacketParseException( + "Packet too short for QoS > 0: " + f"expected at least {pos + 2} bytes, " + f"but got {len(self.raw_payload)} bytes. " + f"raw_payload: {self.raw_payload}" + ) pos += 2 payload = self.raw_payload[pos:].decode("utf-8") From 2256e51d1579def701afedb11ab86b9fca3b52b3 Mon Sep 17 00:00:00 2001 From: nanato12 Date: Fri, 10 Jan 2025 23:18:38 +0900 Subject: [PATCH 2/3] update: mqtt client --- line_works/mqtt/client.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/line_works/mqtt/client.py b/line_works/mqtt/client.py index 5b80a77..191ffee 100644 --- a/line_works/mqtt/client.py +++ b/line_works/mqtt/client.py @@ -86,7 +86,7 @@ async def __handle_binary_message(self, message: bytes) -> None: elif p.unique_id: self._unique_ids.append(p.unique_id) except PacketParseException as e: - logger.error("packet parse error", exc_info=e) + logger.debug("packet parse error", exc_info=e) logger.debug(f"{packet=}") From ebe595db31d49bb131665d4ffdfcdeaf47a77ef5 Mon Sep 17 00:00:00 2001 From: nanato12 Date: Fri, 10 Jan 2025 23:24:14 +0900 Subject: [PATCH 3/3] udate --- line_works/mqtt/models/packet.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/line_works/mqtt/models/packet.py b/line_works/mqtt/models/packet.py index bd6ef7a..62c0dc0 100644 --- a/line_works/mqtt/models/packet.py +++ b/line_works/mqtt/models/packet.py @@ -61,7 +61,7 @@ def publish_payload(self) -> dict[str, Any]: "Packet too short for QoS > 0: " f"expected at least {pos + 2} bytes, " f"but got {len(self.raw_payload)} bytes. " - f"raw_payload: {self.raw_payload}" + f"raw_payload: {self.raw_payload.hex()}" ) pos += 2