diff --git a/nostr/nostr_client.py b/nostr/nostr_client.py index 8a2da32..0e38029 100644 --- a/nostr/nostr_client.py +++ b/nostr/nostr_client.py @@ -31,9 +31,11 @@ class NostrClient: logger.debug(f"Connecting to websockets for 'nostrclient' extension...") relay_endpoint = encrypt_internal_message("relay", urlsafe=True) + ws_url = f"ws://localhost:{settings.port}/nostrclient/api/v1/{relay_endpoint}" + on_open, on_message, on_error, on_close = self._ws_handlers() ws = WebSocketApp( - f"ws://localhost:{settings.port}/nostrclient/api/v1/{relay_endpoint}", + ws_url, on_message=on_message, on_open=on_open, on_close=on_close, @@ -181,13 +183,16 @@ class NostrClient: def on_message(_, message): logger.info(f"[NOSTRMARKET DEBUG] Received websocket message: {message[:200]}...") - self.recieve_event_queue.put_nowait(message) + try: + self.recieve_event_queue.put_nowait(message) + except Exception as e: + logger.error(f"[NOSTRMARKET DEBUG] ❌ Failed to queue message: {e}") def on_error(_, error): - logger.warning(f"[NOSTRMARKET DEBUG] Websocket error: {error}") + logger.warning(f"[NOSTRMARKET DEBUG] ❌ Websocket error: {error}") def on_close(x, status_code, message): - logger.warning(f"[NOSTRMARKET DEBUG] Websocket closed: {x}: '{status_code}' '{message}'") + logger.warning(f"[NOSTRMARKET DEBUG] 🔌 Websocket closed: {x}: '{status_code}' '{message}'") # force re-subscribe self.recieve_event_queue.put_nowait(ValueError("Websocket close."))