diff --git a/.env.sample b/.env.sample index 7853129..575d24d 100644 --- a/.env.sample +++ b/.env.sample @@ -4,4 +4,5 @@ MAX_PHONE=+10000000000 MAX_WORK_DIR=cache TELEGRAM_BOT_TOKEN=123456789:your_bot_token TELEGRAM_FALLBACK_USER_ID=123456789 -SQLITE_PATH=max2telegram.db +## SQLite база (по умолчанию используется cache/max2telegram.db) +SQLITE_PATH=cache/max2telegram.db diff --git a/README.md b/README.md index ca72743..ca3374b 100644 --- a/README.md +++ b/README.md @@ -54,7 +54,7 @@ - `MAX_WORK_DIR` - директория сессии Max (обычно `cache`); - `TELEGRAM_BOT_TOKEN` - токен Telegram-бота; - `TELEGRAM_FALLBACK_USER_ID` - id пользователя Telegram для fallback отправки; -- `SQLITE_PATH` - путь к SQLite базе (например `max2telegram.db`). +- `SQLITE_PATH` - путь к SQLite базе (рекомендуется `cache/max2telegram.db`, по умолчанию так и будет). Дополнительно: diff --git a/src/config.py b/src/config.py index 9cda0bd..1b87435 100644 --- a/src/config.py +++ b/src/config.py @@ -19,10 +19,15 @@ def _require_env(name: str) -> str: def load_settings() -> Settings: + max_work_dir = os.getenv("MAX_WORK_DIR", "cache").strip() or "cache" + sqlite_env = os.getenv("SQLITE_PATH", "").strip() + sqlite_default = os.path.join(max_work_dir, "max2telegram.db") + sqlite_path = sqlite_env or sqlite_default + return Settings( max_phone=_require_env("MAX_PHONE"), - max_work_dir=os.getenv("MAX_WORK_DIR", "cache").strip() or "cache", + max_work_dir=max_work_dir, telegram_bot_token=_require_env("TELEGRAM_BOT_TOKEN"), telegram_fallback_user_id=_require_env("TELEGRAM_FALLBACK_USER_ID"), - sqlite_path=os.getenv("SQLITE_PATH", "max2telegram.db").strip() or "max2telegram.db", + sqlite_path=sqlite_path, )