diff --git a/client/deepgram_transcription.py b/client/deepgram_transcription.py index 0feeba2..8b26f9d 100644 --- a/client/deepgram_transcription.py +++ b/client/deepgram_transcription.py @@ -320,9 +320,13 @@ class DeepgramTranscriptionEngine: def _build_ws_url_and_headers(self): """Return ``(url, headers)`` depending on the current mode.""" if self.mode == "managed": - # Ensure the server URL uses wss:// and append the path + # Convert HTTP(S) URLs to WS(S) for WebSocket connection url = self.server_url.rstrip("/") - if not url.startswith("ws://") and not url.startswith("wss://"): + if url.startswith("https://"): + url = "wss://" + url[len("https://"):] + elif url.startswith("http://"): + url = "ws://" + url[len("http://"):] + elif not url.startswith("ws://") and not url.startswith("wss://"): url = f"wss://{url}" url = f"{url}/ws/transcribe" return url, {}