# =============================================== # 🤖 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 # Время отправки (по МСК) ежедневного отчета # Обязательная подписка на канал CHANNEL_SUB_ID= # Опционально ID твоего канала (-100) CHANNEL_IS_REQUIRED_SUB=false # Обязательна ли подписка на канал CHANNEL_LINK= # Опционально ссылка на канал # ===== 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=false # Стандартный период (должен совпадать с одним из 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 # ===== РЕФЕРАЛЬНАЯ СИСТЕМА ===== 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 # Автоматическая проверка зависших пополнений и повторные обращения к провайдерам PAYMENT_VERIFICATION_AUTO_CHECK_ENABLED=false # Интервал (в минутах) между автоматическими проверками пополнений PAYMENT_VERIFICATION_AUTO_CHECK_INTERVAL_MINUTES=10 # ===== НАСТРОЙКИ ОПИСАНИЙ ПЛАТЕЖЕЙ ===== # Эти настройки позволяют изменить описания платежей, # чтобы избежать блокировок платежных систем 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= # необязательно, есть дефолтные значения 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=10000 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 # ===== ЕДИНЫЙ ВЕБ-СЕРВЕР ===== 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