import logging from typing import Any, Dict from celery import shared_task logger = logging.getLogger(__name__) @shared_task(bind=True) def notify_mission_speech(self, *, text: str) -> Dict[str, Any]: try: from flower.utils import play_speech response = play_speech(text=text, timeout_seconds=3.0) return { "status": "sent", "task_id": self.request.id, "status_code": response.status_code, "raw": response.raw, } except Exception as exc: logger.exception("[mission.tasks] 任务语音播报失败(已忽略)") return { "status": "error", "task_id": self.request.id, "error": str(exc), }