Browse Source

add GIGAAM_API_URL to .env

dev
poturaevpetr 2 weeks ago
parent
commit
1a573362c9
  1. 4
      .env.test
  2. 16
      autoLoader/config.py
  3. 17
      autoLoader/loader/recognition_checker.py
  4. 11
      run_checker.py

4
.env.test

@ -21,4 +21,6 @@ SFPT_HOSTNAME = 192.168.1.150
SFPT_USERNAME = monitor
SFPT_PASSWORD = Audio4analy6!6
FILESAPTH = audiofiles
FILESAPTH = audiofiles
GIGAAM_API_URL = http://localhost:5001

16
autoLoader/config.py

@ -1,7 +1,13 @@
import os
SFTP_HOSTNAME = os.getenv("SFPT_HOSTNAME", "192.168.1.150")
SFTP_USERNAME = os.getenv("SFPT_USERNAME", "monitor")
SFTP_PASSWORD = os.getenv("SFPT_PASSWORD", "Audio4analy6!6")
FILESAPTH = os.getenv("FILESAPTH", "audiofiles")
DATABASE_URL = os.getenv("DATABASE_URL", "sqlite:///./speech_analytics.db")
# SFTP конфигурация
SFTP_HOSTNAME = os.getenv("SFTP_HOSTNAME", "192.168.1.150")
SFTP_USERNAME = os.getenv("SFTP_USERNAME", "monitor")
SFTP_PASSWORD = os.getenv("SFTP_PASSWORD", "Audio4analy6!6")
FILESAPTH = os.getenv("FILESAPTH", "audiofiles")
# База данных
DATABASE_URL = os.getenv("DATABASE_URL", "sqlite:///./speech_analytics.db")
# GigaAM API
GIGAAM_API_URL = os.getenv("GIGAAM_API_URL", "http://localhost:5001")

17
autoLoader/loader/recognition_checker.py

@ -7,6 +7,7 @@ from typing import List, Optional
import logging
from autoLoader.database import get_db_session, Audio, AiConclusion
from autoLoader.config import GIGAAM_API_URL
# Настройка логирования
logging.basicConfig(
@ -19,16 +20,22 @@ logger = logging.getLogger(__name__)
class RecognitionChecker:
"""Класс для проверки и отправки файлов на распознавание"""
def __init__(self, api_url: str = "http://localhost:5001/api/call/process"):
def __init__(self, api_url: Optional[str] = None):
"""
Инициализация checker
Args:
api_url: URL API GigaAM для распознавания
api_url: URL API GigaAM для распознавания (если None, берётся из config)
"""
self.api_url = api_url
# Если api_url не передан, берём из config.py
if api_url is None:
api_url = GIGAAM_API_URL
self.api_url = f"{api_url}/api/call/process"
self.timeout = 10 # таймаут запроса в секундах
logger.info(f"✅ RecognitionChecker инициализирован с URL: {self.api_url}")
def check_database(self) -> bool:
"""
Проверяет существование необходимых таблиц в БД
@ -221,12 +228,12 @@ class RecognitionChecker:
# Удобная функция для запуска из командной строки
def process_pending_files(api_url: str = "http://localhost:5001/api/call/process", limit: int = None):
def process_pending_files(api_url: Optional[str] = None, limit: Optional[int] = None):
"""
Обрабатывает все файлы без заключения
Args:
api_url: URL GigaAM API
api_url: URL GigaAM API (если None, берётся из config.py)
limit: Максимальное количество файлов для обработки
Returns:

11
run_checker.py

@ -3,8 +3,13 @@
Скрипт для проверки и отправки файлов на распознавание
"""
from autoLoader import process_pending_files
from autoLoader.config import GIGAAM_API_URL
import sys
import logging
from dotenv import load_dotenv
# Загружаем .env файл
load_dotenv()
# Настройка логирования
logging.basicConfig(
@ -12,18 +17,16 @@ logging.basicConfig(
format='%(asctime)s - %(levelname)s - %(message)s'
)
# URL GigaAM API по умолчанию
DEFAULT_API_URL = "http://localhost:5001/api/call/process"
def main():
"""Главная функция"""
# Получаем параметры из командной строки
api_url = sys.argv[1] if len(sys.argv) > 1 else DEFAULT_API_URL
api_url = sys.argv[1] if len(sys.argv) > 1 else GIGAAM_API_URL
limit = int(sys.argv[2]) if len(sys.argv) > 2 else None
print(f"🚀 Запуск проверки файлов на распознавание")
print(f"📡 API URL: {api_url}")
print(f"📂 Config URL: {GIGAAM_API_URL}")
if limit:
print(f"📊 Лимит: {limit} файлов")
print()

Loading…
Cancel
Save