import os from pathlib import Path from dotenv import load_dotenv load_dotenv() BOT_TOKEN: str = os.environ["MAX_BOT_TOKEN"] _project_root = Path(__file__).parent _db_path_raw = os.environ.get("DB_PATH", "data/support.db") DB_PATH: str = str( Path(_db_path_raw) if Path(_db_path_raw).is_absolute() else _project_root / _db_path_raw ) ADMIN_USERNAME: str = os.environ.get("ADMIN_USERNAME", "admin") ADMIN_PASSWORD: str = os.environ.get("ADMIN_PASSWORD", "changeme") ADMIN_HOST: str = os.environ.get("ADMIN_HOST", "0.0.0.0") ADMIN_PORT: int = int(os.environ.get("ADMIN_PORT", "8080")) # ── Intradesk API ────────────────────────────────────────────────────────────── INTRADESK_BASE_URL: str = os.environ.get("INTRADESK_BASE_URL", "https://apigw.intradesk.ru") # Ключ для /settings/odata (клиенты, пользователи) INTRADESK_API_KEY: str = os.environ.get("INTRADESK_API_KEY", "") # Ключ для /tasklist/odata (заявки) INTRADESK_TASKS_API_KEY: str = os.environ.get("INTRADESK_TASKS_API_KEY", "") # ID группы исполнителей для фильтрации заявок INTRADESK_EXECUTOR_GROUP: str = os.environ.get("INTRADESK_EXECUTOR_GROUP", "") # Список ID исполнителей через запятую (доп. фильтр) INTRADESK_EXECUTORS: list[str] = [ e.strip() for e in os.environ.get("INTRADESK_EXECUTORS", "").split(",") if e.strip() ]