mirror of
https://github.com/BEDOLAGA-DEV/remnawave-bedolaga-telegram-bot.git
synced 2026-01-19 11:21:17 +00:00
526 lines
23 KiB
Plaintext
526 lines
23 KiB
Plaintext
# ===============================================
|
||
# 🤖 REMNAWAVE BEDOLAGA BOT CONFIGURATION
|
||
# ===============================================
|
||
|
||
# ===== TELEGRAM BOT =====
|
||
BOT_TOKEN=
|
||
ADMIN_IDS=
|
||
# Ссылка на поддержку: Telegram username (например, @support) или полный URL
|
||
SUPPORT_USERNAME=@support
|
||
|
||
|
||
# Уведомления администраторов
|
||
ADMIN_NOTIFICATIONS_ENABLED=true
|
||
ADMIN_NOTIFICATIONS_CHAT_ID=-1001234567890 # Замени на ID твоего канала (-100) - ПРЕФИКС ЗАКРЫТОГО КАНАЛА! ВСТАВИТЬ СВОЙ ID СРАЗУ ПОСЛЕ (-100) БЕЗ ПРОБЕЛОВ!
|
||
ADMIN_NOTIFICATIONS_TOPIC_ID=123 # Опционально: ID топика
|
||
ADMIN_NOTIFICATIONS_TICKET_TOPIC_ID=126 # Опционально: ID топика для тикетов
|
||
# Автоматические отчеты
|
||
ADMIN_REPORTS_ENABLED=false
|
||
ADMIN_REPORTS_CHAT_ID= # Опционально: чат для отчетов (по умолчанию ADMIN_NOTIFICATIONS_CHAT_ID)
|
||
ADMIN_REPORTS_TOPIC_ID= # ID топика для отчетов
|
||
ADMIN_REPORTS_SEND_TIME=10:00 # Время отправки (по МСК) ежедневного отчета
|
||
|
||
# Мониторинг трафика
|
||
TRAFFIC_MONITORING_ENABLED=false # Включить мониторинг трафика пользователей
|
||
TRAFFIC_THRESHOLD_GB_PER_DAY=10.0 # Порог трафика в ГБ за сутки (превышение вызывает уведомление)
|
||
TRAFFIC_MONITORING_INTERVAL_HOURS=24 # Интервал проверки трафика в часах (например: 1, 6, 12, 24)
|
||
SUSPICIOUS_NOTIFICATIONS_TOPIC_ID=14 # ID топика для уведомлений о подозрительной активности (0 для отправки в основной чат)
|
||
|
||
# Черный список
|
||
BLACKLIST_CHECK_ENABLED=false # Включить проверку пользователей по черному списку
|
||
BLACKLIST_GITHUB_URL=https://raw.githubusercontent.com/BEDOLAGA-DEV/remnawave-bedolaga-telegram-bot/refs/heads/main/blacklist.txt # URL к файлу черного списка на GitHub
|
||
BLACKLIST_UPDATE_INTERVAL_HOURS=24 # Интервал обновления черного списка с GitHub (в часах)
|
||
BLACKLIST_IGNORE_ADMINS=true # Игнорировать администраторов (из ADMIN_IDS) при проверке черного списка
|
||
SUBSCRIPTION_RENEWAL_BALANCE_THRESHOLD_KOPEKS=20000 # Порог баланса (в копейках) для фильтра «готовы к продлению»
|
||
|
||
# Обязательная подписка на канал
|
||
CHANNEL_SUB_ID= # Опционально ID твоего канала (-100)
|
||
CHANNEL_IS_REQUIRED_SUB=false # Обязательна ли подписка на канал
|
||
CHANNEL_LINK= # Опционально ссылка на канал
|
||
CHANNEL_DISABLE_TRIAL_ON_UNSUBSCRIBE=true # Отключать триальные подписки при отписке от канала
|
||
|
||
# ===== DATABASE CONFIGURATION =====
|
||
# Режим базы данных: "auto", "postgresql", "sqlite"
|
||
DATABASE_MODE=auto
|
||
|
||
# Основной URL (можно оставить пустым для автоматического выбора)
|
||
DATABASE_URL=
|
||
|
||
# PostgreSQL настройки (для Docker и кастомных установок)
|
||
POSTGRES_HOST=postgres
|
||
POSTGRES_PORT=5432
|
||
POSTGRES_DB=remnawave_bot
|
||
POSTGRES_USER=remnawave_user
|
||
POSTGRES_PASSWORD=secure_password_123
|
||
|
||
# SQLite настройки (для локального запуска)
|
||
SQLITE_PATH=./data/bot.db
|
||
LOCALES_PATH=./locales
|
||
|
||
# Redis
|
||
REDIS_URL=redis://redis:6379/0
|
||
|
||
# ===== REMNAWAVE API =====
|
||
REMNAWAVE_API_URL=https://panel.example.com
|
||
REMNAWAVE_API_KEY=your_api_key_here
|
||
|
||
# Тип авторизации: "api_key", "basic_auth"
|
||
REMNAWAVE_AUTH_TYPE=api_key
|
||
|
||
# Для панелей с Basic Auth (опционально)
|
||
REMNAWAVE_USERNAME=
|
||
REMNAWAVE_PASSWORD=
|
||
|
||
# Для панелей установленных скриптом eGames прописывать ключ в формате XXXXXXX:DDDDDDDD
|
||
REMNAWAVE_SECRET_KEY=
|
||
|
||
# Шаблон описания пользователя в панели Remnawave
|
||
# Доступные плейсхолдеры:
|
||
# {full_name} — Имя, Фамилия из Telegram
|
||
# {username} — @логин из Telegram (c @)
|
||
# {username_clean} — логин из Telegram (без @)
|
||
# {telegram_id} — ID Telegram
|
||
REMNAWAVE_USER_DESCRIPTION_TEMPLATE="Bot user: {full_name} {username}"
|
||
|
||
# Шаблон имени пользователя в панели Remnawave
|
||
# Доступные плейсхолдеры аналогичны описанию выше
|
||
# {full_name} — Имя, Фамилия из Telegram
|
||
# {username} — @логин из Telegram (c @)
|
||
# {username_clean} — логин из Telegram (без @)
|
||
# {telegram_id} — ID Telegram
|
||
REMNAWAVE_USER_USERNAME_TEMPLATE="user_{telegram_id}"
|
||
|
||
# Режим удаления пользователей из панели RemnaWave
|
||
# delete - полностью удалить пользователя из панели
|
||
# disable - только деактивировать пользователя
|
||
REMNAWAVE_USER_DELETE_MODE=delete
|
||
|
||
# ========= ПОДПИСКИ =========
|
||
# ===== ТРИАЛ ПОДПИСКА =====
|
||
TRIAL_DURATION_DAYS=3
|
||
TRIAL_TRAFFIC_LIMIT_GB=10
|
||
TRIAL_DEVICE_LIMIT=1
|
||
TRIAL_PAYMENT_ENABLED=false
|
||
TRIAL_ACTIVATION_PRICE=0
|
||
|
||
# ===== ПЛАТНАЯ ПОДПИСКА =====
|
||
# Сколько устройств доступно по дефолту при покупке платной подписки
|
||
DEFAULT_DEVICE_LIMIT=3
|
||
|
||
# Максимум устройств достопных к покупке (0 = Нет лимита)
|
||
MAX_DEVICES_LIMIT=15
|
||
|
||
# Дефолт параметры для подписок выданных через админку
|
||
DEFAULT_TRAFFIC_LIMIT_GB=100
|
||
|
||
# Плюсовать дни триала при покупке платной подписке
|
||
TRIAL_ADD_REMAINING_DAYS_TO_PAID=false
|
||
|
||
# ===== ГЛОБАЛЬНЫЙ ПАРАМЕТР ДЛЯ ВСЕХ ПОДПИСОК =====
|
||
DEFAULT_TRAFFIC_RESET_STRATEGY=MONTH
|
||
# Сбрасывать трафик при каждой оплате подписки
|
||
RESET_TRAFFIC_ON_PAYMENT=false
|
||
|
||
# ===== НАСТРОЙКИ ТРАФИКА =====
|
||
# Режим выбора трафика:
|
||
# "selectable" - пользователи выбирают пакеты трафика (по умолчанию)
|
||
# "fixed" - фиксированный лимит трафика для всех подписок
|
||
TRAFFIC_SELECTION_MODE=selectable
|
||
|
||
# Фиксированный лимит трафика в ГБ (используется только в режиме "fixed")
|
||
# 0 = безлимит
|
||
FIXED_TRAFFIC_LIMIT_GB=100
|
||
|
||
# ===== ПЕРИОДЫ ПОДПИСКИ =====
|
||
# Доступные периоды подписки (через запятую)
|
||
# Возможные значения: 14,30,60,90,180,360
|
||
AVAILABLE_SUBSCRIPTION_PERIODS=30,90,180
|
||
AVAILABLE_RENEWAL_PERIODS=30,90,180
|
||
|
||
# ===== ПРОСТАЯ ПОКУПКА ПОДПИСКИ =====
|
||
SIMPLE_SUBSCRIPTION_ENABLED=true
|
||
# Стандартный период (должен совпадать с одним из AVAILABLE_SUBSCRIPTION_PERIODS)
|
||
SIMPLE_SUBSCRIPTION_PERIOD_DAYS=30
|
||
# Сколько устройств выдаётся в рамках простой подписки
|
||
SIMPLE_SUBSCRIPTION_DEVICE_LIMIT=1
|
||
# Лимит трафика в ГБ (0 — безлимит)
|
||
SIMPLE_SUBSCRIPTION_TRAFFIC_GB=0
|
||
# UUID сквада (оставьте пустым, чтобы использовать сквады по умолчанию)
|
||
# SIMPLE_SUBSCRIPTION_SQUAD_UUID=
|
||
|
||
# ===== ЦЕНЫ (в копейках) =====
|
||
BASE_SUBSCRIPTION_PRICE=0
|
||
|
||
# Цены за периоды
|
||
PRICE_14_DAYS=7000
|
||
PRICE_30_DAYS=1000
|
||
PRICE_60_DAYS=25900
|
||
PRICE_90_DAYS=36900
|
||
PRICE_180_DAYS=69900
|
||
PRICE_360_DAYS=109900
|
||
|
||
# Скидка для Базовых Юзеров (Для других Промогрупп не работает!)
|
||
BASE_PROMO_GROUP_PERIOD_DISCOUNTS_ENABLED=false
|
||
# 60:10 = скидка 10% на все доп услуги. 90:20 = 20% за 90 дней и тд
|
||
BASE_PROMO_GROUP_PERIOD_DISCOUNTS=60:10,90:20,180:40,360:70
|
||
|
||
# Выводимые пакеты трафика и их цены в копейках
|
||
TRAFFIC_PACKAGES_CONFIG="5:2000:false,10:3500:false,25:7000:false,50:11000:true,100:15000:true,250:17000:false,500:19000:false,1000:19500:true,0:0:true"
|
||
|
||
# Цена за дополнительное устройство (DEFAULT_DEVICE_LIMIT идет бесплатно!)
|
||
PRICE_PER_DEVICE=10000
|
||
# Включить выбор количества устройств при покупке и продлении
|
||
DEVICES_SELECTION_ENABLED=true
|
||
# Единое количество устройств для режима без выбора (0 — не назначать устройства)
|
||
DEVICES_SELECTION_DISABLED_AMOUNT=0
|
||
# Отключение превью ссылок в сообщениях бота
|
||
DISABLE_WEB_PAGE_PREVIEW=false
|
||
|
||
# ===== РЕФЕРАЛЬНАЯ СИСТЕМА =====
|
||
REFERRAL_PROGRAM_ENABLED=true
|
||
REFERRAL_MINIMUM_TOPUP_KOPEKS=10000
|
||
REFERRAL_FIRST_TOPUP_BONUS_KOPEKS=10000
|
||
REFERRAL_INVITER_BONUS_KOPEKS=10000
|
||
REFERRAL_COMMISSION_PERCENT=25
|
||
|
||
|
||
# Уведомления
|
||
REFERRAL_NOTIFICATIONS_ENABLED=true
|
||
REFERRAL_NOTIFICATION_RETRY_ATTEMPTS=3
|
||
|
||
# ===== АВТОПРОДЛЕНИЕ =====
|
||
AUTOPAY_WARNING_DAYS=3,1
|
||
DEFAULT_AUTOPAY_ENABLED=true
|
||
DEFAULT_AUTOPAY_DAYS_BEFORE=3
|
||
MIN_BALANCE_FOR_AUTOPAY_KOPEKS=10000
|
||
|
||
# ===== ПЛАТЕЖНЫЕ СИСТЕМЫ =====
|
||
|
||
# Telegram Stars (работает автоматически)
|
||
TELEGRAM_STARS_ENABLED=false
|
||
TELEGRAM_STARS_RATE_RUB=1.79
|
||
|
||
# Tribute (https://tribute.app)
|
||
TRIBUTE_ENABLED=false
|
||
TRIBUTE_API_KEY=
|
||
TRIBUTE_DONATE_LINK=
|
||
TRIBUTE_WEBHOOK_PATH=/tribute-webhook
|
||
TRIBUTE_WEBHOOK_HOST=0.0.0.0
|
||
# Примечание: индивидуальные *_WEBHOOK_PORT используются только для старой схемы запуска.
|
||
# В режиме единого FastAPI сервера оставьте эти значения по умолчанию.
|
||
TRIBUTE_WEBHOOK_PORT=8081
|
||
|
||
# YooKassa (https://yookassa.ru)
|
||
YOOKASSA_ENABLED=false
|
||
YOOKASSA_SHOP_ID=
|
||
YOOKASSA_SECRET_KEY=
|
||
YOOKASSA_RETURN_URL=
|
||
YOOKASSA_DEFAULT_RECEIPT_EMAIL=receipts@yourdomain.com
|
||
|
||
# Включить оплату через СБП (Систему быстрых платежей)
|
||
YOOKASSA_SBP_ENABLED=false
|
||
|
||
# Настройки чеков для налоговой
|
||
YOOKASSA_VAT_CODE=1
|
||
# Коды НДС:
|
||
# 1 - НДС не облагается
|
||
# 2 - НДС 0%
|
||
# 3 - НДС 10%
|
||
# 4 - НДС 20%
|
||
# 5 - НДС 10/110
|
||
# 6 - НДС 20/120
|
||
|
||
YOOKASSA_PAYMENT_MODE=full_payment
|
||
# Способы расчета:
|
||
# full_payment - полная оплата
|
||
# partial_payment - частичная оплата
|
||
# advance - аванс
|
||
# full_prepayment - полная предоплата
|
||
# partial_prepayment - частичная предоплата
|
||
# credit - передача в кредит
|
||
# credit_payment - оплата кредита
|
||
|
||
YOOKASSA_PAYMENT_SUBJECT=service
|
||
# Предметы расчета:
|
||
# commodity - товар
|
||
# excise - подакцизный товар
|
||
# job - работа
|
||
# service - услуга
|
||
# gambling_bet - ставка в азартной игре
|
||
# gambling_prize - выигрыш в азартной игре
|
||
# lottery - лотерейный билет
|
||
# lottery_prize - выигрыш в лотерее
|
||
# intellectual_activity - результат интеллектуальной деятельности
|
||
# payment - платеж
|
||
# agent_commission - агентское вознаграждение
|
||
# composite - составной предмет расчета
|
||
# another - другое
|
||
|
||
# Webhook настройки
|
||
YOOKASSA_WEBHOOK_PATH=/yookassa-webhook
|
||
YOOKASSA_WEBHOOK_HOST=0.0.0.0
|
||
YOOKASSA_WEBHOOK_PORT=8082
|
||
|
||
# Лимиты сумм пополнения через YooKassa (в копейках)
|
||
YOOKASSA_MIN_AMOUNT_KOPEKS=5000
|
||
YOOKASSA_MAX_AMOUNT_KOPEKS=1000000
|
||
|
||
# Быстрый выбор суммы пополнения через YooKassa
|
||
YOOKASSA_QUICK_AMOUNT_SELECTION_ENABLED=true
|
||
|
||
# Отключить отображение кнопок выбора суммы пополнения (оставить только ввод вручную)
|
||
DISABLE_TOPUP_BUTTONS=false
|
||
# Отключить пополнение баланса через поддержку
|
||
SUPPORT_TOPUP_ENABLED=true
|
||
|
||
# Автоматическая проверка зависших пополнений и повторные обращения к провайдерам
|
||
PAYMENT_VERIFICATION_AUTO_CHECK_ENABLED=false
|
||
# Интервал (в минутах) между автоматическими проверками пополнений
|
||
PAYMENT_VERIFICATION_AUTO_CHECK_INTERVAL_MINUTES=10
|
||
|
||
# ===== НАЛОГОВАЯ СЛУЖБА (NaloGO) =====
|
||
# Автоматическая отправка чеков в налоговую при пополнении баланса
|
||
NALOGO_ENABLED=false
|
||
NALOGO_RECEIPTS_ENABLED=false
|
||
NALOGO_INN= # ИНН самозанятого
|
||
NALOGO_PASSWORD= # Пароль от личного кабинета налоговой
|
||
NALOGO_DEVICE_ID= # Опционально: ID устройства для авторизации
|
||
NALOGO_STORAGE_PATH=./nalogo_tokens.json # Путь к файлу с токенами
|
||
|
||
# ===== НАСТРОЙКИ ОПИСАНИЙ ПЛАТЕЖЕЙ =====
|
||
# Эти настройки позволяют изменить описания платежей,
|
||
# чтобы избежать блокировок платежных систем
|
||
PAYMENT_SERVICE_NAME=Интернет-сервис
|
||
PAYMENT_BALANCE_DESCRIPTION=Пополнение баланса
|
||
PAYMENT_SUBSCRIPTION_DESCRIPTION=Оплата подписки
|
||
PAYMENT_BALANCE_TEMPLATE={service_name} - {description}
|
||
PAYMENT_SUBSCRIPTION_TEMPLATE={service_name} - {description}
|
||
|
||
# CRYPTOBOT
|
||
CRYPTOBOT_ENABLED=false
|
||
CRYPTOBOT_API_TOKEN=123456789:AAzQcZWQqQAbsfgPnOLr4FHC8Doa4L7KryC
|
||
CRYPTOBOT_WEBHOOK_SECRET=your_webhook_secret_here
|
||
CRYPTOBOT_BASE_URL=https://pay.crypt.bot
|
||
CRYPTOBOT_TESTNET=false
|
||
CRYPTOBOT_WEBHOOK_PATH=/cryptobot-webhook
|
||
# Эти порты используются только при ручном запуске старого aiohttp сервера.
|
||
# В новой конфигурации все вебхуки обрабатываются через порт 8080.
|
||
CRYPTOBOT_WEBHOOK_PORT=8081
|
||
CRYPTOBOT_DEFAULT_ASSET=USDT
|
||
CRYPTOBOT_ASSETS=USDT,TON,BTC,ETH,LTC,BNB,TRX,USDC
|
||
CRYPTOBOT_INVOICE_EXPIRES_HOURS=24
|
||
|
||
# HELEKET
|
||
HELEKET_ENABLED=false
|
||
HELEKET_MERCHANT_ID=
|
||
HELEKET_API_KEY=
|
||
HELEKET_BASE_URL=https://api.heleket.com/v1
|
||
HELEKET_DEFAULT_CURRENCY=USDT
|
||
HELEKET_DEFAULT_NETWORK=
|
||
HELEKET_INVOICE_LIFETIME=3600
|
||
HELEKET_MARKUP_PERCENT=0
|
||
HELEKET_WEBHOOK_PATH=/heleket-webhook
|
||
HELEKET_WEBHOOK_HOST=0.0.0.0
|
||
HELEKET_WEBHOOK_PORT=8086
|
||
HELEKET_CALLBACK_URL=
|
||
HELEKET_RETURN_URL=
|
||
HELEKET_SUCCESS_URL=
|
||
|
||
# MULENPAY
|
||
MULENPAY_ENABLED=false
|
||
MULENPAY_API_KEY=
|
||
MULENPAY_SECRET_KEY=
|
||
MULENPAY_SHOP_ID=<ID магазина>
|
||
# необязательно, есть дефолтные значения
|
||
MULENPAY_BASE_URL=https://mulenpay.ru/api
|
||
MULENPAY_WEBHOOK_PATH=/mulenpay-webhook
|
||
MULENPAY_DESCRIPTION="Пополнение баланса"
|
||
MULENPAY_LANGUAGE=ru
|
||
MULENPAY_VAT_CODE=0
|
||
MULENPAY_PAYMENT_SUBJECT=4
|
||
MULENPAY_PAYMENT_MODE=4
|
||
MULENPAY_MIN_AMOUNT_KOPEKS=10000
|
||
MULENPAY_MAX_AMOUNT_KOPEKS=10000000
|
||
|
||
# PAYPALYCH / PAL24
|
||
PAL24_ENABLED=false
|
||
PAL24_API_TOKEN=
|
||
PAL24_SHOP_ID=
|
||
PAL24_SIGNATURE_TOKEN=
|
||
PAL24_BASE_URL=https://pal24.pro/api/v1/
|
||
PAL24_WEBHOOK_PATH=/pal24-webhook
|
||
PAL24_WEBHOOK_PORT=8084
|
||
PAL24_PAYMENT_DESCRIPTION="Пополнение баланса"
|
||
PAL24_MIN_AMOUNT_KOPEKS=10000
|
||
PAL24_MAX_AMOUNT_KOPEKS=100000000
|
||
PAL24_REQUEST_TIMEOUT=30
|
||
# Отображать кнопку СБП в PayPalych (true - отображать, false - скрывать)
|
||
PAL24_SBP_BUTTON_VISIBLE=true
|
||
# Отображать кнопку оплаты картой в PayPalych (true - отображать, false - скрывать)
|
||
PAL24_CARD_BUTTON_VISIBLE=true
|
||
|
||
# PLATEGA
|
||
PLATEGA_ENABLED=false
|
||
PLATEGA_MERCHANT_ID=
|
||
PLATEGA_SECRET=
|
||
PLATEGA_BASE_URL=https://app.platega.io
|
||
PLATEGA_RETURN_URL=
|
||
PLATEGA_FAILED_URL=
|
||
PLATEGA_CURRENCY=RUB
|
||
# Список ID активных методов из кабинета Platega (через запятую)
|
||
PLATEGA_ACTIVE_METHODS=2,10,11,12,13
|
||
PLATEGA_MIN_AMOUNT_KOPEKS=100
|
||
PLATEGA_MAX_AMOUNT_KOPEKS=100000000
|
||
PLATEGA_WEBHOOK_PATH=/platega-webhook
|
||
PLATEGA_WEBHOOK_HOST=0.0.0.0
|
||
PLATEGA_WEBHOOK_PORT=8086
|
||
|
||
# ===== ИНТЕРФЕЙС И UX =====
|
||
|
||
# Включить логотип для всех сообщений (true - с изображением, false - только текст)
|
||
ENABLE_LOGO_MODE=true
|
||
LOGO_FILE=vpn_logo.png
|
||
|
||
# Режим главного меню (default - классический режим работы бота, text - режим работы с активным ЛК MiniApp, отключает покупку/управление подпиской в меню, заменяет все кнопками открытия в MiniApp ЛК)
|
||
MAIN_MENU_MODE=default
|
||
|
||
# Скрыть блок с ссылкой подключения в разделе с информацией о подписке
|
||
HIDE_SUBSCRIPTION_LINK=false
|
||
|
||
# Режим работы кнопки "Подключиться"
|
||
# guide - открывает гайд подключения (режим 1)
|
||
# miniapp_subscription - открывает ссылку подписки в мини-приложении (режим 2)
|
||
# miniapp_custom - открывает заданную ссылку в мини-приложении (режим 3)
|
||
# link - Открывает ссылку напрямую в браузере (режим 4)
|
||
# happ_cryptolink - Вывод cryptoLink ссылки на подписку Happ (режим 5)
|
||
CONNECT_BUTTON_MODE=guide
|
||
|
||
# URL для режима miniapp_custom (обязателен при CONNECT_BUTTON_MODE=miniapp_custom)
|
||
MINIAPP_CUSTOM_URL=
|
||
MINIAPP_STATIC_PATH=miniapp
|
||
MINIAPP_SERVICE_NAME_EN=Bedolaga VPN
|
||
MINIAPP_SERVICE_NAME_RU=Bedolaga VPN
|
||
MINIAPP_SERVICE_DESCRIPTION_EN=Secure & Fast Connection
|
||
MINIAPP_SERVICE_DESCRIPTION_RU=Безопасное и быстрое подключение
|
||
|
||
# Параметры режима happ_cryptolink
|
||
CONNECT_BUTTON_HAPP_DOWNLOAD_ENABLED=false
|
||
HAPP_DOWNLOAD_LINK_IOS=
|
||
HAPP_DOWNLOAD_LINK_ANDROID=
|
||
HAPP_DOWNLOAD_LINK_MACOS=
|
||
HAPP_DOWNLOAD_LINK_WINDOWS=
|
||
# Кнопка (Подключится) с редиректом (тк ссылки с happ:// тг не поддерживает) - Без установленной ссылки на редирект кнопки (подключится) не будет! Пример: https://sub.domain.sub/redirect-page/?redirect_to=
|
||
HAPP_CRYPTOLINK_REDIRECT_TEMPLATE=
|
||
|
||
# Пропустить принятие правил использования бота
|
||
SKIP_RULES_ACCEPT=false
|
||
# Пропустить запрос реферального кода
|
||
SKIP_REFERRAL_CODE=false
|
||
|
||
# ===== МОНИТОРИНГ И УВЕДОМЛЕНИЯ =====
|
||
MONITORING_INTERVAL=60
|
||
INACTIVE_USER_DELETE_MONTHS=3
|
||
|
||
# Уведомления
|
||
TRIAL_WARNING_HOURS=2
|
||
ENABLE_NOTIFICATIONS=true
|
||
NOTIFICATION_RETRY_ATTEMPTS=3
|
||
MONITORING_LOGS_RETENTION_DAYS=30
|
||
NOTIFICATION_CACHE_HOURS=24
|
||
|
||
# ===== СТАТУС СЕРВЕРОВ =====
|
||
# Режимы: disabled, external_link, external_link_miniapp, xray
|
||
SERVER_STATUS_MODE=disabled
|
||
# Ссылка на внешний мониторинг (для режимов external_link и external_link_miniapp)
|
||
SERVER_STATUS_EXTERNAL_URL=
|
||
# URL метрик XrayChecker (для режима xray)
|
||
SERVER_STATUS_METRICS_URL=
|
||
# Данные Basic Auth (опционально)
|
||
SERVER_STATUS_METRICS_USERNAME=
|
||
SERVER_STATUS_METRICS_PASSWORD=
|
||
# Проверять SSL сертификат при запросе метрик
|
||
SERVER_STATUS_METRICS_VERIFY_SSL=true
|
||
# Таймаут запроса к метрикам (в секундах)
|
||
SERVER_STATUS_REQUEST_TIMEOUT=10
|
||
# Количество серверов на странице в режиме интеграции
|
||
SERVER_STATUS_ITEMS_PER_PAGE=10
|
||
|
||
# ===== РЕЖИМ ТЕХНИЧЕСКИХ РАБОТ =====
|
||
MAINTENANCE_MODE=false
|
||
MAINTENANCE_CHECK_INTERVAL=30
|
||
MAINTENANCE_AUTO_ENABLE=true
|
||
MAINTENANCE_MONITORING_ENABLED=true
|
||
MAINTENANCE_RETRY_ATTEMPTS=1
|
||
MAINTENANCE_MESSAGE=Ведутся технические работы. Сервис временно недоступен. Попробуйте позже.
|
||
|
||
# ===== ЛОКАЛИЗАЦИЯ =====
|
||
# Укажите язык из AVAILABLE_LANGUAGES. При некорректном значении используется ru.
|
||
DEFAULT_LANGUAGE=ru
|
||
AVAILABLE_LANGUAGES=ru,en,ua,zh
|
||
# Включить выбор языка при старте и отображение кнопки в меню
|
||
LANGUAGE_SELECTION_ENABLED=true
|
||
# Часовой пояс
|
||
TZ=Europe/Moscow # или UTC, America/New_York и т.д.
|
||
|
||
# ===== ДОПОЛНИТЕЛЬНЫЕ НАСТРОЙКИ =====
|
||
# Конфигурация приложений для гайда подключения
|
||
APP_CONFIG_PATH=app-config.json
|
||
ENABLE_DEEP_LINKS=true
|
||
APP_CONFIG_CACHE_TTL=3600
|
||
|
||
# ===== СИСТЕМА БЕКАПОВ =====
|
||
BACKUP_AUTO_ENABLED=true
|
||
BACKUP_INTERVAL_HOURS=24
|
||
BACKUP_TIME=03:00
|
||
# Первый запуск автобекапа выполняется в ближайшее время BACKUP_TIME после старта бота,
|
||
# далее копии создаются каждые BACKUP_INTERVAL_HOURS.
|
||
BACKUP_MAX_KEEP=7
|
||
BACKUP_COMPRESSION=true
|
||
BACKUP_INCLUDE_LOGS=false
|
||
BACKUP_LOCATION=/app/data/backups
|
||
|
||
# Отправка бэкапов в телеграм
|
||
BACKUP_SEND_ENABLED=true
|
||
BACKUP_SEND_CHAT_ID=-100123456789 # Замени на ID твоего канала (-100) - ПРЕФИКС ЗАКРЫТОГО КАНАЛА!
|
||
# ВСТАВИТЬ СВОЙ ID СРАЗУ ПОСЛЕ (-100) БЕЗ ПРОБЕЛОВ!
|
||
BACKUP_SEND_TOPIC_ID=123 # Опционально: ID топика
|
||
|
||
# ===== ПРОВЕРКА ОБНОВЛЕНИЙ БОТА =====
|
||
VERSION_CHECK_ENABLED=true
|
||
VERSION_CHECK_REPO=fr1ngg/remnawave-bedolaga-telegram-bot
|
||
VERSION_CHECK_INTERVAL_HOURS=1
|
||
|
||
# ===== ЛОГИРОВАНИЕ =====
|
||
LOG_LEVEL=INFO
|
||
LOG_FILE=logs/bot.log
|
||
|
||
# ===== РАЗРАБОТКА =====
|
||
DEBUG=false
|
||
WEBHOOK_URL=
|
||
WEBHOOK_PATH=/webhook
|
||
WEBHOOK_SECRET_TOKEN=
|
||
WEBHOOK_DROP_PENDING_UPDATES=true
|
||
WEBHOOK_MAX_QUEUE_SIZE=1024
|
||
WEBHOOK_WORKERS=4
|
||
WEBHOOK_ENQUEUE_TIMEOUT=0.1
|
||
WEBHOOK_WORKER_SHUTDOWN_TIMEOUT=30.0
|
||
BOT_RUN_MODE=polling # polling, webhook или both
|
||
|
||
# ===== КОНКУРСНАЯ СИСТЕМА =====
|
||
CONTESTS_ENABLED=false
|
||
CONTESTS_BUTTON_VISIBLE=false
|
||
|
||
# ===== КНОПКА АКТИВАЦИИ =====
|
||
ACTIVATE_BUTTON_VISIBLE=false
|
||
# ACTIVATE_BUTTON_TEXT=активировать
|
||
|
||
# ===== ЕДИНЫЙ ВЕБ-СЕРВЕР =====
|
||
WEB_API_ENABLED=false
|
||
WEB_API_HOST=0.0.0.0
|
||
WEB_API_PORT=8080
|
||
WEB_API_ALLOWED_ORIGINS=*
|
||
WEB_API_DOCS_ENABLED=false
|
||
WEB_API_DEFAULT_TOKEN=
|
||
WEB_API_DEFAULT_TOKEN_NAME=Bootstrap Token
|
||
MINIAPP_STATIC_PATH=miniapp
|