From 8d867c30c654a1a0126ef438de92682c3d333dce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Aleix=20Conchillo=20Flaqu=C3=A9?= Date: Fri, 21 Jun 2024 08:36:27 -0700 Subject: [PATCH] transports(websocket): verify websockets module --- examples/twilio-chatbot/templates/streams.xml | 2 +- src/pipecat/transports/network/websocket_server.py | 9 +++++++-- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/examples/twilio-chatbot/templates/streams.xml b/examples/twilio-chatbot/templates/streams.xml index 1ab00a0e8..3d81d53d7 100644 --- a/examples/twilio-chatbot/templates/streams.xml +++ b/examples/twilio-chatbot/templates/streams.xml @@ -4,4 +4,4 @@ - \ No newline at end of file + diff --git a/src/pipecat/transports/network/websocket_server.py b/src/pipecat/transports/network/websocket_server.py index db10855a3..63fd2a541 100644 --- a/src/pipecat/transports/network/websocket_server.py +++ b/src/pipecat/transports/network/websocket_server.py @@ -4,11 +4,9 @@ # SPDX-License-Identifier: BSD 2-Clause License # - import asyncio import io import wave -import websockets from typing import Awaitable, Callable from pydantic.main import BaseModel @@ -23,6 +21,13 @@ from pipecat.transports.base_transport import BaseTransport, TransportParams from loguru import logger +try: + import websockets +except ModuleNotFoundError as e: + logger.error(f"Exception: {e}") + logger.error("In order to use websockets, you need to `pip install pipecat-ai[websocket]`.") + raise Exception(f"Missing module: {e}") + class WebsocketServerParams(TransportParams): add_wav_header: bool = False