40 lines
1.4 KiB
Python
40 lines
1.4 KiB
Python
import os
|
|
from dotenv import load_dotenv
|
|
|
|
load_dotenv()
|
|
|
|
# Telegram Bot Configuration
|
|
TELEGRAM_BOT_TOKEN = "7903295042:AAGBO2k8pfBDy4RoLRFsknwE7z0N-thAPI8"
|
|
|
|
# Admin Panel Bot Configuration
|
|
ADMINPANEL_TELEGRAM_BOT_TOKEN = "8588876086:AAHoZncfhTCbul1BblpvnZMzvz7jAYVFmcw"
|
|
|
|
# Lichess API Configuration
|
|
LICHESS_API_BASE_URL = "https://lichess.org/api"
|
|
LICHESS_STATS_API_BASE_URL = "http://localhost:8001" # For Docker container access
|
|
|
|
# Database Configuration
|
|
def _resolve_database_path() -> str:
|
|
# 1) Explicit env var has highest priority
|
|
db_from_env = os.getenv("DATABASE_PATH")
|
|
if db_from_env:
|
|
return db_from_env
|
|
# 2) Docker default if volume is mounted
|
|
docker_data_dir = "/app/data"
|
|
if os.path.isdir(docker_data_dir):
|
|
return os.path.join(docker_data_dir, "lichess_bot.db")
|
|
# 3) Local development fallback (repo data dir)
|
|
repo_data_dir = os.path.join(os.path.dirname(__file__), "data")
|
|
os.makedirs(repo_data_dir, exist_ok=True)
|
|
return os.path.join(repo_data_dir, "lichess_bot.db")
|
|
|
|
DATABASE_PATH = _resolve_database_path()
|
|
|
|
# Period options for /setperiod command
|
|
PERIOD_OPTIONS = [0, 15, 30, 60, 120, 180] # minutes
|
|
|
|
# Telegram Bot Long Polling Configuration
|
|
POLL_INTERVAL = 1.0 # seconds
|
|
POLL_TIMEOUT = 30 # seconds
|
|
DROP_PENDING_UPDATES = True # Drop pending updates on startup
|
|
ALLOWED_UPDATES = ["message", "callback_query"]
|