from typing import Optional, Literal, Dict, Any from pydantic import BaseModel, Field class SystemStatusResponse(BaseModel): """系统状态响应""" status: Literal['running', 'stopped', 'paused', 'starting', 'stopping', 'resuming'] = Field(..., description="系统状态") uptime: Optional[float] = Field(None, description="运行时间(秒)") active_sessions: int = Field(default=0, description="活跃会话数") system_running: bool = Field(default=False, description="系统是否运行中") services_count: int = Field(default=0, description="运行中的服务数量") audio_capture_running: bool = Field(default=False, description="音频捕获服务是否运行") audio_capture_ready: bool = Field(default=False, description="音频捕获服务是否就绪") services_details: Optional[Dict[str, Any]] = Field(None, description="服务详细状态信息") class SystemStartRequest(BaseModel): """系统启动请求""" enable_echo_cancellation: bool = Field(default=True, description="是否启用回声消除") class SystemResponse(BaseModel): """系统操作响应""" success: bool = Field(..., description="操作是否成功") message: str = Field(..., description="响应消息")