feat: 站点 JSON、语音终端 WebSocket 指派与客户端联调
- 用 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
This commit is contained in:
@@ -77,13 +77,16 @@ class SurgeryPipeline:
|
||||
f"开录未能确认:{exc}",
|
||||
) from exc
|
||||
|
||||
async def stop_recording(self, surgery_id: str) -> None:
|
||||
"""停止该手术关联的摄像头录制。仅在确认已全部停录时返回。"""
|
||||
async def stop_recording(self, surgery_id: str) -> str | None:
|
||||
"""停止该手术关联的摄像头录制。仅在确认已全部停录时返回。返回绑定的语音终端 ID(若有)。"""
|
||||
try:
|
||||
await self._sessions.stop_surgery(surgery_id, require_active=True)
|
||||
return await self._sessions.stop_surgery(surgery_id, require_active=True)
|
||||
except SurgeryPipelineError:
|
||||
raise
|
||||
|
||||
def set_voice_terminal_id(self, surgery_id: str, terminal_id: str | None) -> None:
|
||||
self._sessions.set_voice_terminal_id(surgery_id, terminal_id)
|
||||
|
||||
async def get_consumption_details_for_client(
|
||||
self,
|
||||
surgery_id: str,
|
||||
|
||||
Reference in New Issue
Block a user