# py-active-call-cc Python Active-Call: real-time audio streaming with WebSocket and WebRTC. This repo contains a Python 3.11+ codebase for building low-latency voice pipelines (capture, stream, and process audio) using WebRTC and WebSockets. It is currently in an early, experimental stage. # Usage 启动 ``` uvicorn app.main:app --reload --host 0.0.0.0 --port 8000 ``` 使用 agent profile(推荐) ``` python -m app.main --agent-profile default ``` 使用指定 YAML ``` python -m app.main --agent-config config/agents/default.yaml ``` Agent 配置路径优先级 1. `--agent-config` 2. `--agent-profile`(映射到 `config/agents/.yaml`) 3. `AGENT_CONFIG_PATH` 4. `AGENT_PROFILE` 5. `config/agents/default.yaml`(若存在) 说明 - Agent 相关配置是严格模式:YAML 缺少必须项会直接报错,不会回退到 `.env` 或代码默认值。 - 如果要引用环境变量,请在 YAML 显式写 `${ENV_VAR}`。 - `siliconflow` 独立 section 已移除;请在 `agent.llm / agent.tts / agent.asr` 内通过 `provider`、`api_key`、`api_url`、`model` 配置。 测试 ``` python examples/test_websocket.py ``` ``` python mic_client.py ``` ## WS Protocol `/ws` uses a strict `v1` JSON control protocol with binary PCM audio frames. See `docs/ws_v1_schema.md`.