diff --git a/apiApp/routers/audio_management_router.py b/apiApp/routers/audio_management_router.py index ee50b6a..67096c7 100644 --- a/apiApp/routers/audio_management_router.py +++ b/apiApp/routers/audio_management_router.py @@ -149,27 +149,29 @@ def process_audio_file(audio_id: str, db: Session): logger.info(f"🎵 Запуск распознавания для {audio.filename}") - # Формируем запрос в GigaAM API + # Формируем запрос в GigaAM API - ИСПОЛЬЗУЕМ АСИНХРОННЫЙ ENDPOINT from apiApp.config import GIGAAM_API_URL - api_url = f"{GIGAAM_API_URL}/api/call/process" + api_url = f"{GIGAAM_API_URL}/api/call/process/async" payload = { "filename": audio.filename } - # Отправляем запрос в GigaAM API с увеличенным таймаутом + # Отправляем запрос в GigaAM API - асинхронный endpoint быстро возвращает ответ import requests try: - response = requests.post(api_url, json=payload, timeout=60) + response = requests.post(api_url, json=payload, timeout=10) if response.status_code == 200 or response.status_code == 202: - logger.info(f"✅ Запущено распознавание для {audio.filename}") + result = response.json() + task_id = result.get('task_id') + logger.info(f"✅ Задача добавлена в очередь для {audio.filename} (task_id: {task_id})") else: logger.error(f"❌ Ошибка запуска распознавания для {audio.filename}: {response.status_code} - {response.text}") except requests.exceptions.Timeout: - # Таймаут не критичен - распознавание может быть запущено, но ответ ещё не пришёл - logger.warning(f"⏱️ Таймаут ожидания ответа от GigaAM API для {audio.filename}, но распознавание может быть запущено") + # Для асинхронного endpoint таймаут маловероятен, но обрабатываем + logger.warning(f"⏱️ Таймаут при отправке задачи для {audio.filename}") except requests.exceptions.ConnectionError as e: logger.error(f"❌ Ошибка подключения к GigaAM API для {audio.filename}: {e}")