- 用 OR_SITE_CONFIG_JSON_FILE 统一术间配置(video_rtsp_urls + voice_or_room_bindings) - VoiceTerminalHub:assignment、WS 推送与 HTTP 查询;开录/停录后 notify - 一键联调 orchestrate-and-start 与 /client/surgeries/start 共用指派逻辑,修复 demo 路径不发 WS - 语音桌面端:SIGINT 退出、shutdown 清理、仅 WS 指派、固定 pending 轮询间隔、界面仅保留录音时长 - 新增/调整契约与绑定测试,文档与示例配置同步 Made-with: Cursor
66 lines
2.7 KiB
Plaintext
66 lines
2.7 KiB
Plaintext
# 复制为 `.env` 并按环境填写。pydantic-settings 将字段名映射为大写下划线环境变量。
|
||
# 启动前须执行 `alembic upgrade head`(`start.sh` / `start_fresh.sh` 已包含)。
|
||
# 算法、管线、归档路径、视觉/语音日志等非部署项见 `app/baked/algorithm.py` 与 `app/baked/pipeline.py`。
|
||
# 详细说明见 docs/video-backends.md。
|
||
|
||
# --- PostgreSQL ---
|
||
POSTGRES_USER=postgres
|
||
POSTGRES_PASSWORD=postgres
|
||
POSTGRES_DB=operation_room
|
||
POSTGRES_HOST=localhost
|
||
POSTGRES_PORT=35432
|
||
# 可选:整串 async DSN(会覆盖与默认一致的 POSTGRES_* 组合时的逻辑,见 Settings)
|
||
# DATABASE_URL=postgresql+asyncpg://postgres:postgres@localhost:35432/operation_room
|
||
|
||
# --- HTTP(python -m main / 容器等入口)---
|
||
# SERVER_HOST=0.0.0.0
|
||
# SERVER_PORT=38080
|
||
|
||
# --- Video:RTSP 与按路后端(须与客户端 camera_ids 一致)---
|
||
# VIDEO_DEFAULT_BACKEND=rtsp
|
||
# VIDEO_CAMERA_BACKEND_OVERRIDES_JSON={"or-cam-01":"rtsp","or-cam-02":"hikvision_sdk"}
|
||
# 站点 JSON:术间↔摄像头↔语音终端只在这里维护(voice_or_room_bindings);须同时含 video_rtsp_urls;可为 []。
|
||
# 见 app/resources/or_site_config.sample.json
|
||
# OR_SITE_CONFIG_JSON_FILE=app/resources/or_site_config.sample.json
|
||
# VIDEO_RTSP_URL_TEMPLATE=rtsp://user:pass@host:554/path/{camera_id}
|
||
#
|
||
# 语音桌面客户端的「本机是哪一个 voice_terminal_id」不在此文件配置:在客户端界面填写,
|
||
# 或在该客户端运行环境的 shell / systemd 里设 VOICE_TERMINAL_ID(与 JSON 中对应值一致即可)。
|
||
|
||
# --- 海康 SDK(Linux x86_64;二进制勿提交仓库)---
|
||
# HIKVISION_LIB_DIR=/opt/hikvision/lib
|
||
# 可选:单一路径,见 app/services/video/hikvision_runtime.py 直读 HIKVISION_LIB_PATH
|
||
# HIKVISION_LIB_PATH=
|
||
# HIKVISION_SDK_ENABLED=false
|
||
# HIKVISION_DEVICE_IP=
|
||
# HIKVISION_USER=
|
||
# HIKVISION_PASSWORD=
|
||
# HIKVISION_CHANNEL=1
|
||
# HIKVISION_PREVIEW_RTSP_TEMPLATE=rtsp://{user}:{password}@{ip}:554/Streaming/Channels/101
|
||
# HIKVISION_CAMERA_RTSP_URLS_JSON={}
|
||
# HIKVISION_SDK_FALLBACK_TO_RTSP=true
|
||
|
||
# --- 百度(语音:短语音识别 AipSpeech + 在线合成;控制台开通对应能力)---
|
||
# BAIDU_APP_ID=
|
||
# BAIDU_API_KEY=
|
||
# BAIDU_SECRET_KEY=
|
||
# 可选
|
||
# BAIDU_CONNECTION_TIMEOUT_MS=
|
||
# BAIDU_SOCKET_TIMEOUT_MS=
|
||
# BAIDU_ASR_DEV_PID=1537
|
||
|
||
# --- MinIO(语音 WAV)---
|
||
# MINIO_ENDPOINT=127.0.0.1:9000
|
||
# MINIO_ACCESS_KEY=
|
||
# MINIO_SECRET_KEY=
|
||
# MINIO_BUCKET=operation-room-voice
|
||
# MINIO_SECURE=false
|
||
# MINIO_REGION=
|
||
|
||
# --- Demo 客户端 / 一键联调(生产关闭)---
|
||
# DEMO_CORS_ENABLED=true
|
||
# DEMO_CORS_ORIGINS=*
|
||
# DEMO_ORCHESTRATOR_ENABLED=false
|
||
# DEMO_ORCHESTRATOR_RTSP_PORT=18554
|
||
# DEMO_ORCHESTRATOR_RTSP_JSON_HOST=host.docker.internal
|