"""Модуль конфигурации для загрузки настроек из переменных окружения.""" import os from dotenv import load_dotenv load_dotenv() class Settings: """Настройки приложения.""" BOT_TOKEN: str = os.getenv("BOT_TOKEN", "") ADMIN_ID: int = int(os.getenv("ADMIN_ID", "0")) SD_API_URL: str = os.getenv("SD_API_URL", "http://192.168.1.120:7860") IMAGES_DIR: str = os.getenv("IMAGES_DIR", "/app/images") DEFAULT_IMAGE_TTL_HOURS: int = int(os.getenv("DEFAULT_IMAGE_TTL_HOURS", "48")) MAX_IMAGE_TTL_HOURS: int = int(os.getenv("MAX_IMAGE_TTL_HOURS", "168")) CLEANUP_INTERVAL_MINUTES: int = int(os.getenv("CLEANUP_INTERVAL_MINUTES", "30")) DB_PATH: str = os.getenv("DB_PATH", "/app/data/bot.db") @classmethod def validate(cls) -> None: """Проверка обязательных настроек.""" if not cls.BOT_TOKEN or cls.BOT_TOKEN == "your_telegram_bot_token_here": raise ValueError( "BOT_TOKEN не установлен. Получите токен у @BotFather и установите его в .env файле." ) settings = Settings()