feat: добавить WebSocket сервер для приёма событий и команд
- settings.py: websocket_enabled, websocket_host, websocket_port - satellite.py: WebSocket сервер + runtime атрибуты (_runtime_volume, _runtime_led_brightness) - satellite.py: handle_websocket_command() для обработки команд - satellite.py: _broadcast_to_websocket() для рассылки событий - satellite.py: интеграция в _start() / _stop() - __main__.py: CLI аргументы --websocket-enabled/host/port Поддерживаемые команды: - set_volume: изменить громкость - mute/unmute: микрофон - play_sound: воспроизвести WAV - set_led_brightness: яркость LED - trigger_event: отправить событие в HA Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
This commit is contained in:
@@ -178,6 +178,16 @@ class EventSettings(ServiceSettings):
|
||||
connected: Optional[List[str]] = None
|
||||
disconnected: Optional[List[str]] = None
|
||||
|
||||
# WebSocket server settings
|
||||
websocket_enabled: bool = False
|
||||
"""True если WebSocket сервер должен быть запущен."""
|
||||
|
||||
websocket_host: str = "0.0.0.0"
|
||||
"""Host для WebSocket сервера."""
|
||||
|
||||
websocket_port: int = 8675
|
||||
"""Port для WebSocket сервера."""
|
||||
|
||||
|
||||
@dataclass(frozen=True)
|
||||
class TimerSettings:
|
||||
|
||||
Reference in New Issue
Block a user