diff --git a/transport_ws.py b/transport_ws.py index a8a38d0..e2cb0f1 100644 --- a/transport_ws.py +++ b/transport_ws.py @@ -2,6 +2,8 @@ from fastapi import FastAPI, WebSocket, WebSocketDisconnect, Query from threading import Thread import uvicorn import asyncio +from protobuf_decoder.protobuf_decoder import Parser +from logger import logger #only rx class WSTransport: @@ -37,10 +39,16 @@ class WSTransport: self.thread = Thread(target=run, daemon=True) self.thread.start() - async def recv(self): + async def recv(self, packetParse = True): item = await self._recv_q.get() if item is None: raise ConnectionError(self._error or "tcp transport error") + + if packetParse: + to_parse = ' '.join(f'{byte:02x}' for byte in item) + res = Parser().parse(to_parse) + logger.info("[WS PACKET]", res.to_dict()) + return item async def send(self, payload):