Сервис для хранения файлов аудио, индексации файлов, записи и выдачи результатов распознавания
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

43 lines
1.5 KiB

import os
from pathlib import Path
# Базовые пути
BASE_DIR = Path(__file__).resolve().parent.parent
UPLOAD_FOLDER = BASE_DIR / "uploads"
UPLOAD_FOLDER.mkdir(exist_ok=True)
# Audio files path (shared with Calls_WEB_Client_main)
AUDIOFILES_PATH = os.getenv("AUDIOFILES_PATH", "/app/audiofiles")
# Database
DATABASE_URL = os.getenv("DATABASE_URL", "sqlite:///./speech_analytics.db")
# API Settings
API_V1_PREFIX = "/api/v1"
MAX_UPLOAD_SIZE = 100 * 1024 * 1024 # 100MB
ALLOWED_AUDIO_EXTENSIONS = {".mp3", ".wav", ".ogg", ".flac", ".m4a", ".aac"}
# Application
APP_TITLE = "Speech Analytics API"
APP_VERSION = "1.0.0"
PORT = int(os.getenv("PORT", "5008"))
HOST = os.getenv("HOST", "localhost")
# GigaAM API Configuration
GIGAAM_API_URL = os.getenv("GIGAAM_API_URL", "http://192.168.1.73:5002")
AUDIOFILES_PATH = os.path.join(os.getcwd(), os.getenv("FILESAPTH", "audiofiles"))
# Calls_WEB_Client_main Webhook Configuration
CALLS_WEB_CLIENT_URL = os.getenv(
"CALLS_WEB_CLIENT_URL",
"http://192.168.1.73:5059"
)
WEBHOOK_ENDPOINT = f"{CALLS_WEB_CLIENT_URL}/api/transcription/webhook"
WEBHOOK_API_KEY = os.getenv("WEBHOOK_API_KEY", "webhook_secret_key")
# Auto-restore recognition on startup
ENABLE_AUTO_RESTORE = os.getenv("ENABLE_AUTO_RESTORE", "true").lower() == "true"
AUTO_RESTORE_LIMIT = int(os.getenv("AUTO_RESTORE_LIMIT", "100")) # Максимум файлов для восстановления
AUTO_RESTORE_DELAY = int(os.getenv("AUTO_RESTORE_DELAY", "5")) # Задержка перед запуском (секунды)