Files
my_speaker_RPi3/app/core/status.py
T
2025-12-25 12:01:35 +03:00

31 lines
930 B
Python

# app/core/status.py
from enum import Enum
import logging
from threading import Lock
logger = logging.getLogger('VADApp')
class SystemStatus(Enum):
INITIALIZATION = "Инициализация"
LISTENING = "Прослушивание"
RECORDING = "Запись"
RECOGNITION = "Распознавание"
COMMAND_PROCESSING = "Обработка команды"
RESPONSE = "Ответ"
class StatusTracker:
def __init__(self):
self.current_status = SystemStatus.INITIALIZATION
self.lock = Lock()
def set_status(self, status: SystemStatus):
with self.lock:
self.current_status = status
logger.info(f"Статус: {status.value}")
def get_status(self) -> str:
with self.lock:
return self.current_status.value
# Global instance (or can be stored in app.state)
status_tracker = StatusTracker()