INFO: Started server process [3804] INFO: Waiting for application startup. INFO: Application startup complete. ERROR: [Errno 10048] error while attempting to bind on address ('0.0.0.0', 7860): [winerror 10048] only one usage of each socket address (protocol/network address/port) is normally permitted INFO: Waiting for application shutdown. INFO: INFO: 127.0.0.1:62731 - "GET /health HTTP/1.1" 200 OK INFO: 127.0.0.1:58019 - "GET /health HTTP/1.1" 200 OK INFO: 127.0.0.1:58328 - "GET /health HTTP/1.1" 200 OK INFO: ('127.0.0.1', 64692) - "WebSocket /ws/voice" [accepted] 2026-04-19 10:55:42,299 [INFO] main: Client connected: Address(host='127.0.0.1', port=64692) 2026-04-19 10:55:43,272 [ERROR] src.stt.assemblyai_client: AssemblyAI error: Could not connect to the real-time service: server rejected WebSocket connection: HTTP 404 2026-04-19 10:55:43,280 [INFO] src.stt.assemblyai_client: AssemblyAI STT connected INFO: connection open 2026-04-19 10:55:43,287 [INFO] src.stt.assemblyai_client: AssemblyAI STT closed INFO: connection closed INFO: ('127.0.0.1', 64730) - "WebSocket /ws/voice" [accepted] 2026-04-19 10:55:45,331 [INFO] main: Client connected: Address(host='127.0.0.1', port=64730) 2026-04-19 10:55:45,932 [ERROR] src.stt.assemblyai_client: AssemblyAI error: Could not connect to the real-time service: server rejected WebSocket connection: HTTP 404 2026-04-19 10:55:45,932 [INFO] src.stt.assemblyai_client: AssemblyAI STT connected INFO: connection open 2026-04-19 10:55:45,934 [INFO] src.pipeline: TTS interrupted by client 2026-04-19 10:55:45,935 [INFO] src.stt.assemblyai_client: AssemblyAI STT closed ERROR: Exception in ASGI application Traceback (most recent call last): File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\uvicorn\protocols\websockets\websockets_impl.py", line 244, in run_asgi result = await self.app(self.scope, self.asgi_receive, self.asgi_send) # type: ignore[func-returns-value] ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\uvicorn\middleware\proxy_headers.py", line 70, in __call__ return await self.app(scope, receive, send) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\fastapi\applications.py", line 1054, in __call__ await super().__call__(scope, receive, send) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\applications.py", line 113, in __call__ await self.middleware_stack(scope, receive, send) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\middleware\errors.py", line 152, in __call__ await self.app(scope, receive, send) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\middleware\exceptions.py", line 62, in __call__ await wrap_app_handling_exceptions(self.app, conn)(scope, receive, send) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\_exception_handler.py", line 62, in wrapped_app raise exc File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\_exception_handler.py", line 51, in wrapped_app await app(scope, receive, sender) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\routing.py", line 715, in __call__ await self.middleware_stack(scope, receive, send) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\routing.py", line 735, in app await route.handle(scope, receive, send) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\routing.py", line 362, in handle await self.app(scope, receive, send) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\routing.py", line 95, in app await wrap_app_handling_exceptions(app, session)(scope, receive, send) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\_exception_handler.py", line 62, in wrapped_app raise exc File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\_exception_handler.py", line 51, in wrapped_app await app(scope, receive, sender) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\routing.py", line 93, in app await func(session) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\fastapi\routing.py", line 383, in app await dependant.call(**solved_result.values) File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\main.py", line 51, in voice_ws data = await ws.receive() ^^^^^^^^^^^^^^^^^^ File "C:\Users\HarryyantoIshaqAgasi\Documents\HarryProjects\DataEyond\Interview-Agent-Service-Data-Eyond\.venv\Lib\site-packages\starlette\websockets.py", line 56, in receive raise RuntimeError('Cannot call "receive" once a disconnect message has been received.') RuntimeError: Cannot call "receive" once a disconnect message has been received. INFO: connection closed INFO: ('127.0.0.1', 64763) - "WebSocket /ws/voice" [accepted] 2026-04-19 10:55:47,981 [INFO] main: Client connected: Address(host='127.0.0.1', port=64763) 2026-04-19 10:55:48,609 [ERROR] src.stt.assemblyai_client: AssemblyAI error: Could not connect to the real-time service: server rejected WebSocket connection: HTTP 404 2026-04-19 10:55:48,609 [INFO] src.stt.assemblyai_client: AssemblyAI STT connected INFO: connection open 2026-04-19 10:55:48,611 [INFO] src.stt.assemblyai_client: AssemblyAI STT closed INFO: connection closed INFO: 127.0.0.1:64988 - "GET /health HTTP/1.1" 200 OK INFO: ('127.0.0.1', 65015) - "WebSocket /ws/voice" [accepted] 2026-04-19 10:56:08,787 [INFO] main: Client connected: Address(host='127.0.0.1', port=65015) 2026-04-19 10:56:09,406 [ERROR] src.stt.assemblyai_client: AssemblyAI error: Could not connect to the real-time service: server rejected WebSocket connection: HTTP 404 2026-04-19 10:56:09,406 [INFO] src.stt.assemblyai_client: AssemblyAI STT connected INFO: connection open 2026-04-19 10:56:09,408 [INFO] src.stt.assemblyai_client: AssemblyAI STT closed INFO: connection closed INFO: ('127.0.0.1', 65047) - "WebSocket /ws/voice" [accepted] 2026-04-19 10:56:11,439 [INFO] main: Client connected: Address(host='127.0.0.1', port=65047) 2026-04-19 10:56:12,038 [ERROR] src.stt.assemblyai_client: AssemblyAI error: Could not connect to the real-time service: server rejected WebSocket connection: HTTP 404 2026-04-19 10:56:12,039 [INFO] src.stt.assemblyai_client: AssemblyAI STT connected INFO: connection open 2026-04-19 10:56:12,040 [INFO] src.pipeline: TTS interrupted by client 2026-04-19 10:56:12,040 [INFO] src.stt.assemblyai_client: AssemblyAI STT closed INFO: connection closed INFO: ('127.0.0.1', 54874) - "WebSocket /ws/voice" [accepted] 2026-04-19 10:56:14,069 [INFO] main: Client connected: Address(host='127.0.0.1', port=54874) 2026-04-19 10:56:14,681 [ERROR] src.stt.assemblyai_client: AssemblyAI error: Could not connect to the real-time service: server rejected WebSocket connection: HTTP 404 2026-04-19 10:56:14,681 [INFO] src.stt.assemblyai_client: AssemblyAI STT connected INFO: connection open 2026-04-19 10:56:14,682 [INFO] src.stt.assemblyai_client: AssemblyAI STT closed INFO: connection closed