299 lines
26 KiB
Bash
299 lines
26 KiB
Bash
# Telegram Bot Token and Admin IDs
|
|
BOT_TOKEN=your_bot_token_here # Telegram bot token
|
|
ADMIN_IDS=comma_separated_admin_ids # Your telegram ID
|
|
|
|
# PostgreSQL Database Connection Settings
|
|
POSTGRES_USER= # Required: database user name
|
|
POSTGRES_PASSWORD= # Required: database password
|
|
POSTGRES_HOST=remnawave-minishop-db # Database container name
|
|
POSTGRES_PORT=5432 # Port
|
|
POSTGRES_DB=postgres # Database name
|
|
DB_POOL_SIZE=20 # SQLAlchemy async pool size per backend/worker process
|
|
DB_MAX_OVERFLOW=10 # Extra transient DB connections above pool size
|
|
DB_POOL_TIMEOUT_SECONDS=30 # Seconds to wait for a DB pool connection
|
|
DB_POOL_RECYCLE_SECONDS=1800 # Recycle DB connections to avoid stale sockets
|
|
|
|
REDIS_URL=redis://redis:6379/0 # Shared Redis for FSM, rate limits, cache, locks and queues
|
|
REDIS_KEY_PREFIX=remnawave-tg-shop # Prefix for Redis keys
|
|
WEBAPP_ME_CACHE_TTL_SECONDS=15 # Short TTL for /api/me payload cache
|
|
WEBAPP_RATE_LIMIT_TTL_SECONDS=60 # Redis rate-limit window
|
|
WEBAPP_RATE_LIMIT_MAX_REQUESTS=30 # Requests per window/action/user/IP
|
|
WEBHOOK_QUEUE_NAME=webhook-events # Redis queue for heavy webhook processing
|
|
WEBHOOK_QUEUE_CONCURRENCY=4 # Worker webhook consumers
|
|
WORKER_PANEL_SYNC_INTERVAL_SECONDS=900 # Worker panel sync interval
|
|
TARIFF_WORKER_LOCK_TTL_SECONDS=240 # Redis lock TTL for tariff tick
|
|
TARIFF_WORKER_TICK_SECONDS=300 # Tariff worker tick interval
|
|
|
|
# Localization and Display
|
|
DEFAULT_LANGUAGE="ru" # or "en"
|
|
DEFAULT_CURRENCY_SYMBOL="RUB" # e.g., RUB, USD, EUR
|
|
|
|
# External Links
|
|
SUPPORT_LINK=https://t.me/your_support_link # Link to the support chat
|
|
SERVER_STATUS_URL=https://status.yourdomain.tld/status/your_service # Link to the server status page
|
|
TERMS_OF_SERVICE_URL=https://example.com/tos # Link to the terms of service
|
|
PRIVACY_POLICY_URL=https://example.com/privacy # Link to the privacy policy
|
|
USER_AGREEMENT_URL=https://example.com/user-agreement # Link to the user agreement
|
|
SUBSCRIPTION_MINI_APP_URL= # Public URL of the subscription Mini App, e.g. https://app.yourdomain.tld/
|
|
START_COMMAND_DESCRIPTION= # Description of the /start command
|
|
DISABLE_WELCOME_MESSAGE= # Disable the welcome message
|
|
MY_DEVICES_SECTION_ENABLED=False # Enable the My Devices section in the subscription menu
|
|
USER_HWID_DEVICE_LIMIT=0 # Default HWID/device limit for panel users (0 = unlimited)
|
|
|
|
# Required channel subscription
|
|
REQUIRED_CHANNEL_ID= # Telegram channel ID (e.g. -1001234567890) the user must join
|
|
REQUIRED_CHANNEL_LINK=https://t.me/your_channel # Optional: public link/invite button text opens
|
|
|
|
# Webhook Base URL (used for Telegram and payment providers)
|
|
WEBHOOK_BASE_URL=https://webhooks.yourdomain.tld
|
|
TRUSTED_PROXIES=127.0.0.1,::1 # Reverse proxies trusted for X-Forwarded-For
|
|
|
|
# Subscription Mini App (same container, separate port)
|
|
WEBAPP_ENABLED=True # Run Mini App HTTP server
|
|
WEBAPP_SERVER_HOST=0.0.0.0 # Internal listen host
|
|
WEBAPP_SERVER_PORT=8081 # Internal/published Mini App port
|
|
WEBAPP_TITLE="/minishop" # Mini App title
|
|
WEBAPP_THEMES_DIR=data/themes # Folder with theme subfolders: <key>/theme.json and optional CSS/assets
|
|
WEBAPP_DEFAULT_THEME= # Optional: override descriptor default theme key (e.g. light)
|
|
WEBAPP_SESSION_SECRET= # Optional: HMAC secret for webapp sessions; generated if empty
|
|
WEBHOOK_SECRET_TOKEN= # Optional: Telegram webhook secret token; generated if empty
|
|
WEBAPP_SESSION_TTL_SECONDS=86400 # Web App session lifetime (24h)
|
|
WEBAPP_AUTH_MAX_AGE_SECONDS=86400 # Max Telegram initData age
|
|
WEBAPP_LOGIN_TOKEN_TTL_SECONDS=600 # External browser login link lifetime
|
|
TELEGRAM_OAUTH_CLIENT_ID= # Telegram Web Login Client ID from BotFather; defaults to bot ID from BOT_TOKEN
|
|
TELEGRAM_OAUTH_CLIENT_SECRET= # Optional Telegram Web Login Client Secret; reserved for full OIDC code flow
|
|
TELEGRAM_OAUTH_REQUEST_ACCESS=write # Optional comma-separated permissions: write,phone; empty = OpenID profile only
|
|
|
|
# Email login and account linking via SMTP (Brevo SMTP relay defaults)
|
|
SMTP_HOST=smtp-relay.brevo.com # SMTP server
|
|
SMTP_PORT=587 # Brevo recommends 587 with STARTTLS
|
|
SMTP_FALLBACK_PORTS=2525,465 # Tried after SMTP_PORT; 465 uses SSL automatically
|
|
SMTP_TIMEOUT_SECONDS=30 # Per SMTP connection/send attempt timeout
|
|
SMTP_USERNAME= # Brevo SMTP login
|
|
SMTP_PASSWORD= # Brevo SMTP key/password
|
|
SMTP_FROM_EMAIL= # Verified sender email
|
|
SMTP_FROM_NAME= # Optional sender name
|
|
SMTP_STARTTLS=True # Use STARTTLS on SMTP_PORT
|
|
SMTP_USE_SSL=False # Use SSL wrapper, usually only for port 465
|
|
EMAIL_CODE_TTL_SECONDS=600 # Email verification code lifetime
|
|
EMAIL_CODE_RESEND_SECONDS=60 # Minimum delay between code sends
|
|
EMAIL_CODE_MAX_ATTEMPTS=5 # Max attempts per code
|
|
BRUTE_FORCE_MAX_FAILURES=5 # Max failed code attempts in the throttle window
|
|
BRUTE_FORCE_WINDOW_SECONDS=900 # Rolling window used to count failures
|
|
BRUTE_FORCE_LOCK_SECONDS=1800 # Temporary lockout duration after too many failures
|
|
|
|
# Payment Method Toggles
|
|
YOOKASSA_ENABLED=True # Turn on YOOKASSA
|
|
FREEKASSA_ENABLED=True # Turn on FreeKassa
|
|
STARS_ENABLED=True # Turn on STARS
|
|
CRYPTOPAY_ENABLED=True # Turn on CRYPTOPAY
|
|
PLATEGA_ENABLED=False # Turn on PLATEGA
|
|
SEVERPAY_ENABLED=False # Turn on SeverPay
|
|
WATA_ENABLED=False # Turn on Wata
|
|
# Order of payment methods (top to bottom). Supported: severpay, wata, freekassa, platega, yookassa, stars, cryptopay
|
|
PAYMENT_METHODS_ORDER=severpay,wata,yookassa,cryptopay,freekassa,platega,stars
|
|
|
|
# Payment button presentation overrides (all optional; empty = provider defaults)
|
|
# Text supports per-language overrides: *_LABEL_RU and *_LABEL_EN. Legacy *_LABEL applies to all languages if per-language values are empty.
|
|
# Available WebApp icons are exported from frontend/src/lib/components/ui/icons.js, e.g. CreditCard, Smartphone, Bitcoin, Sparkles.
|
|
PAYMENT_YOOKASSA_WEBAPP_LABEL_RU= # WebApp payment button text for YooKassa (Russian)
|
|
PAYMENT_YOOKASSA_WEBAPP_LABEL_EN= # WebApp payment button text for YooKassa (English)
|
|
PAYMENT_YOOKASSA_WEBAPP_ICON=CreditCard # WebApp payment button icon for YooKassa
|
|
PAYMENT_YOOKASSA_TELEGRAM_LABEL_RU= # Telegram bot payment button text for YooKassa (Russian)
|
|
PAYMENT_YOOKASSA_TELEGRAM_LABEL_EN= # Telegram bot payment button text for YooKassa (English)
|
|
PAYMENT_YOOKASSA_TELEGRAM_EMOJI= # Telegram bot payment button emoji for YooKassa
|
|
PAYMENT_FREEKASSA_WEBAPP_LABEL_RU= # WebApp payment button text for FreeKassa (Russian)
|
|
PAYMENT_FREEKASSA_WEBAPP_LABEL_EN= # WebApp payment button text for FreeKassa (English)
|
|
PAYMENT_FREEKASSA_WEBAPP_ICON=Smartphone # WebApp payment button icon for FreeKassa
|
|
PAYMENT_FREEKASSA_TELEGRAM_LABEL_RU= # Telegram bot payment button text for FreeKassa (Russian)
|
|
PAYMENT_FREEKASSA_TELEGRAM_LABEL_EN= # Telegram bot payment button text for FreeKassa (English)
|
|
PAYMENT_FREEKASSA_TELEGRAM_EMOJI= # Telegram bot payment button emoji for FreeKassa
|
|
PAYMENT_PLATEGA_SBP_WEBAPP_LABEL_RU= # WebApp payment button text for Platega SBP (Russian)
|
|
PAYMENT_PLATEGA_SBP_WEBAPP_LABEL_EN= # WebApp payment button text for Platega SBP (English)
|
|
PAYMENT_PLATEGA_SBP_WEBAPP_ICON=CreditCard # WebApp payment button icon for Platega SBP
|
|
PAYMENT_PLATEGA_SBP_TELEGRAM_LABEL_RU= # Telegram bot payment button text for Platega SBP (Russian)
|
|
PAYMENT_PLATEGA_SBP_TELEGRAM_LABEL_EN= # Telegram bot payment button text for Platega SBP (English)
|
|
PAYMENT_PLATEGA_SBP_TELEGRAM_EMOJI= # Telegram bot payment button emoji for Platega SBP
|
|
PAYMENT_PLATEGA_CRYPTO_WEBAPP_LABEL_RU= # WebApp payment button text for Platega crypto (Russian)
|
|
PAYMENT_PLATEGA_CRYPTO_WEBAPP_LABEL_EN= # WebApp payment button text for Platega crypto (English)
|
|
PAYMENT_PLATEGA_CRYPTO_WEBAPP_ICON=Bitcoin # WebApp payment button icon for Platega crypto
|
|
PAYMENT_PLATEGA_CRYPTO_TELEGRAM_LABEL_RU= # Telegram bot payment button text for Platega crypto (Russian)
|
|
PAYMENT_PLATEGA_CRYPTO_TELEGRAM_LABEL_EN= # Telegram bot payment button text for Platega crypto (English)
|
|
PAYMENT_PLATEGA_CRYPTO_TELEGRAM_EMOJI= # Telegram bot payment button emoji for Platega crypto
|
|
PAYMENT_SEVERPAY_WEBAPP_LABEL_RU= # WebApp payment button text for SeverPay (Russian)
|
|
PAYMENT_SEVERPAY_WEBAPP_LABEL_EN= # WebApp payment button text for SeverPay (English)
|
|
PAYMENT_SEVERPAY_WEBAPP_ICON=CreditCard # WebApp payment button icon for SeverPay
|
|
PAYMENT_SEVERPAY_TELEGRAM_LABEL_RU= # Telegram bot payment button text for SeverPay (Russian)
|
|
PAYMENT_SEVERPAY_TELEGRAM_LABEL_EN= # Telegram bot payment button text for SeverPay (English)
|
|
PAYMENT_SEVERPAY_TELEGRAM_EMOJI= # Telegram bot payment button emoji for SeverPay
|
|
PAYMENT_WATA_WEBAPP_LABEL_RU= # WebApp payment button text for Wata (Russian)
|
|
PAYMENT_WATA_WEBAPP_LABEL_EN= # WebApp payment button text for Wata (English)
|
|
PAYMENT_WATA_WEBAPP_ICON=WalletCards # WebApp payment button icon for Wata
|
|
PAYMENT_WATA_TELEGRAM_LABEL_RU= # Telegram bot payment button text for Wata (Russian)
|
|
PAYMENT_WATA_TELEGRAM_LABEL_EN= # Telegram bot payment button text for Wata (English)
|
|
PAYMENT_WATA_TELEGRAM_EMOJI= # Telegram bot payment button emoji for Wata
|
|
PAYMENT_STARS_WEBAPP_LABEL_RU= # WebApp payment button text for Telegram Stars (Russian)
|
|
PAYMENT_STARS_WEBAPP_LABEL_EN= # WebApp payment button text for Telegram Stars (English)
|
|
PAYMENT_STARS_WEBAPP_ICON=Sparkles # WebApp payment button icon for Telegram Stars
|
|
PAYMENT_STARS_TELEGRAM_LABEL_RU= # Telegram bot payment button text for Telegram Stars (Russian)
|
|
PAYMENT_STARS_TELEGRAM_LABEL_EN= # Telegram bot payment button text for Telegram Stars (English)
|
|
PAYMENT_STARS_TELEGRAM_EMOJI= # Telegram bot payment button emoji for Telegram Stars
|
|
PAYMENT_CRYPTOPAY_WEBAPP_LABEL_RU= # WebApp payment button text for CryptoPay (Russian)
|
|
PAYMENT_CRYPTOPAY_WEBAPP_LABEL_EN= # WebApp payment button text for CryptoPay (English)
|
|
PAYMENT_CRYPTOPAY_WEBAPP_ICON=Bitcoin # WebApp payment button icon for CryptoPay
|
|
PAYMENT_CRYPTOPAY_TELEGRAM_LABEL_RU= # Telegram bot payment button text for CryptoPay (Russian)
|
|
PAYMENT_CRYPTOPAY_TELEGRAM_LABEL_EN= # Telegram bot payment button text for CryptoPay (English)
|
|
PAYMENT_CRYPTOPAY_TELEGRAM_EMOJI= # Telegram bot payment button emoji for CryptoPay
|
|
|
|
# YooKassa Payment Gateway Configuration
|
|
YOOKASSA_SHOP_ID=your_shop_id # Your store ID in YooKassa
|
|
YOOKASSA_SECRET_KEY=your_secret_key # Your secret key for YooKassa
|
|
YOOKASSA_RETURN_URL=https://t.me/your_bot # URL to which the user will be returned after payment
|
|
YOOKASSA_DEFAULT_RECEIPT_EMAIL=your_email@example.com # Default email for sending receipts
|
|
YOOKASSA_VAT_CODE=1 # VAT code
|
|
YOOKASSA_AUTOPAYMENTS_ENABLED=False # Auto-renew toggle
|
|
YOOKASSA_AUTOPAYMENTS_REQUIRE_CARD_BINDING=True # Force automatic card binding when autopay is enabled (set to False to show the save-card checkbox)
|
|
|
|
# Nalogo (self-employed receipts)
|
|
NALOGO_INN=your_inn # INN for nalog.ru
|
|
NALOGO_PASSWORD=your_nalogo_password # Password for nalog.ru
|
|
NALOGO_RECEIPT_NAME_SUBSCRIPTION=subscription {months} months # Receipt name for time-based subscriptions ({months} = duration)
|
|
NALOGO_RECEIPT_NAME_TRAFFIC=traffic package {gb} GB # Receipt name for traffic packages ({gb} = traffic amount)
|
|
|
|
# FreeKassa Payment Gateway Configuration
|
|
FREEKASSA_MERCHANT_ID=your_shop_id # Your shop ID in FreeKassa
|
|
FREEKASSA_API_KEY=your_api_key # API key for REST requests
|
|
FREEKASSA_SECOND_SECRET=your_second_secret # Secret word #2 (used to verify notifications)
|
|
FREEKASSA_PAYMENT_IP= # Public IP address reported to FreeKassa
|
|
FREEKASSA_PAYMENT_METHOD_ID=44 # Payment method ID, you can get it from https://merchant.freekassa.net/settings/currencies
|
|
FREEKASSA_TRUSTED_IPS=168.119.157.136,168.119.60.227,178.154.197.79,51.250.54.238 # FreeKassa webhook source IP allowlist
|
|
|
|
# CryptoBot Payment Gateway Configuration
|
|
CRYPTOPAY_TOKEN= # API token for CryptoPay
|
|
CRYPTOPAY_NETWORK=mainnet # Network (mainnet or testnet)
|
|
CRYPTOPAY_CURRENCY_TYPE=fiat # Currency type (fiat or crypto)
|
|
CRYPTOPAY_ASSET=RUB # Asset, e.g., RUB, BTC, USDT
|
|
|
|
# Platega Payment Gateway Configuration
|
|
PLATEGA_BASE_URL=https://app.platega.io # Base API URL
|
|
PLATEGA_MERCHANT_ID= # Your MerchantId from Platega
|
|
PLATEGA_SECRET= # API secret from Platega
|
|
PLATEGA_PAYMENT_METHOD=2 # Legacy method ID; fallback for the SBP button when PLATEGA_SBP_METHOD stays default
|
|
PLATEGA_SBP_ENABLED=False # Show a separate "Pay via SBP" Platega button
|
|
PLATEGA_CRYPTO_ENABLED=False # Show a separate "Pay with crypto" Platega button
|
|
PLATEGA_SBP_METHOD=2 # Platega method ID for SBP QR (default 2)
|
|
PLATEGA_CRYPTO_METHOD=13 # Platega method ID for crypto (default 13)
|
|
PLATEGA_RETURN_URL= # Optional: redirect after successful payment (defaults to bot link)
|
|
PLATEGA_FAILED_URL= # Optional: redirect after failed/cancelled payment (defaults to return URL)
|
|
|
|
# SeverPay Payment Gateway Configuration
|
|
SEVERPAY_BASE_URL=https://severpay.io/api/merchant # Base API URL
|
|
SEVERPAY_MID= # Your MID from SeverPay
|
|
SEVERPAY_TOKEN= # API token/secret for signing requests
|
|
SEVERPAY_RETURN_URL= # Optional: redirect URL after payment (defaults to bot link)
|
|
SEVERPAY_LIFETIME_MINUTES= # Optional: payment link lifetime in minutes (30-4320, leave empty for default)
|
|
|
|
# Wata Payment Gateway Configuration
|
|
WATA_BASE_URL=https://api.wata.pro/api/h2h # Base API URL (use https://api-sandbox.wata.pro/api/h2h for sandbox)
|
|
WATA_API_TOKEN= # Bearer token from Wata terminal settings
|
|
WATA_RETURN_URL= # Optional: redirect after successful payment (defaults to bot link)
|
|
WATA_FAILED_URL= # Optional: redirect after failed payment (defaults to return URL)
|
|
WATA_PAYMENT_LINK_TTL_DAYS=3 # Payment link lifetime in days (1-30)
|
|
WATA_WEBHOOK_VERIFY_SIGNATURE=True # Verify X-Signature with Wata RSA public key
|
|
WATA_PUBLIC_KEY= # Optional: cached public key; leave empty to fetch from Wata
|
|
WATA_TRUSTED_IPS=62.84.126.140,51.250.106.150 # Wata webhook source IP allowlist
|
|
|
|
# Subscription Options. Specify cost parameters or payment links here.
|
|
1_MONTH_ENABLED=True
|
|
RUB_PRICE_1_MONTH=150
|
|
STARS_PRICE_1_MONTH=0
|
|
|
|
3_MONTHS_ENABLED=True
|
|
RUB_PRICE_3_MONTHS=300
|
|
STARS_PRICE_3_MONTHS=0
|
|
|
|
6_MONTHS_ENABLED=True
|
|
RUB_PRICE_6_MONTHS=500
|
|
STARS_PRICE_6_MONTHS=0
|
|
|
|
12_MONTHS_ENABLED=True
|
|
RUB_PRICE_12_MONTHS=900
|
|
STARS_PRICE_12_MONTHS=0
|
|
|
|
# Traffic Packages (enables traffic sale mode when set)
|
|
TRAFFIC_PACKAGES=10:199,50:799 # Format: "<GB>:<price>", comma-separated
|
|
STARS_TRAFFIC_PACKAGES=10:2500 # Optional: traffic packages priced in Stars
|
|
TARIFFS_CONFIG_PATH=data/tariffs.json # Optional Tariffs 2.0 JSON config. If missing, legacy .env pricing is used.
|
|
TARIFF_TRAFFIC_WARNING_LEVELS=85,90,95 # Tariffs 2.0 traffic warning levels, percent used
|
|
|
|
# Subscription Notifications
|
|
SUBSCRIPTION_NOTIFICATIONS_ENABLED=True # Enable subscription
|
|
SUBSCRIPTION_NOTIFY_ON_EXPIRE=True # Notify on subscription
|
|
SUBSCRIPTION_NOTIFY_AFTER_EXPIRE=True # Notify after
|
|
SUBSCRIPTION_NOTIFY_DAYS_BEFORE=3 # Days before expiration to notify
|
|
|
|
|
|
REFERRAL_ONE_BONUS_PER_REFEREE=False # Give a bonus only once per referee
|
|
REFERRAL_WELCOME_BONUS_DAYS=3 # Welcome bonus for newly registered user from referral link
|
|
LEGACY_REFS=true # Allow ref_<tg_id> links. Leave unset/true unless you want to disable old links
|
|
# Referral Bonus Days
|
|
# Bonus for the inviting user
|
|
REFERRAL_BONUS_DAYS_1_MONTH=3
|
|
REFERRAL_BONUS_DAYS_3_MONTHS=7
|
|
REFERRAL_BONUS_DAYS_6_MONTHS=15
|
|
REFERRAL_BONUS_DAYS_12_MONTHS=30
|
|
# Invited User Bonus
|
|
REFEREE_BONUS_DAYS_1_MONTH=1
|
|
REFEREE_BONUS_DAYS_3_MONTHS=3
|
|
REFEREE_BONUS_DAYS_6_MONTHS=7
|
|
REFEREE_BONUS_DAYS_12_MONTHS=15
|
|
|
|
# Panel API Configuration
|
|
PANEL_API_URL=http://your_panel_api_url/api # URL of the panel API
|
|
PANEL_API_KEY=your_panel_api_key # Panel API key
|
|
PANEL_WEBHOOK_SECRET= # secret used to verify panel webhook signatures
|
|
|
|
# User traffic limits (applied for all users)
|
|
# 0 means unlimited
|
|
USER_TRAFFIC_LIMIT_GB=0 # Traffic limit for users (0 unlimited)
|
|
USER_TRAFFIC_STRATEGY="NO_RESET" # Traffic reset strategy (NO_RESET, WEEK, MONTH)
|
|
|
|
# Default Internal Squads for Users (Optional, comma-separated UUIDs)
|
|
USER_SQUAD_UUIDS=uuid1,uuid2,uuid3
|
|
# Default External Squad for Users (Optional, single UUID)
|
|
USER_EXTERNAL_SQUAD_UUID= # Optional: UUID from Remnawave External Squads to auto-link new panel users
|
|
|
|
# Trial Settings
|
|
TRIAL_ENABLED=True # Enable the trial period
|
|
TRIAL_DURATION_DAYS=5 # Duration of the trial period in days
|
|
TRIAL_TRAFFIC_LIMIT_GB=0 # Traffic limit for the trial period (0 = unlimited)
|
|
TRIAL_TRAFFIC_STRATEGY="NO_RESET" # Traffic reset strategy for the trial period (NO_RESET, WEEK, MONTH)
|
|
|
|
# Connection link handling (happ crypt4)
|
|
CRYPT4_ENABLED=False # Enable happ crypt4 encryption for subscription URLs
|
|
CRYPT4_REDIRECT_URL= # Base redirect to wrap the connect button, e.g. https://redir.example.com?url=
|
|
|
|
# Web Server Settings (for handling webhooks)
|
|
WEB_SERVER_HOST="0.0.0.0"
|
|
WEB_SERVER_PORT=8080
|
|
|
|
# Admin Panel Log Pagination
|
|
LOGS_PAGE_SIZE=10 # Number of events in the log
|
|
LOG_LEVEL=INFO # Global log level (DEBUG, INFO, WARNING, ERROR, CRITICAL)
|
|
|
|
# Admin Logging Configuration
|
|
LOG_CHAT_ID=-1001234567890 # Telegram chat/group ID for admin notifications
|
|
LOG_THREAD_ID= # Optional: Thread ID for supergroup messages
|
|
LOG_NEW_USERS=True # Log new user registrations
|
|
LOG_PAYMENTS=True # Log payments
|
|
LOG_PROMO_ACTIVATIONS=True # Log promo code activations
|
|
LOG_TRIAL_ACTIVATIONS=True # Log trial activations
|
|
LOG_SUSPICIOUS_ACTIVITY=True # Log suspicious activity
|
|
LOG_ADMIN_ACTIONS=True # Log actions from users listed in ADMIN_IDS
|
|
|
|
# Embedded mode thumbnails. Please don't touch this if you don't know what it is.
|
|
INLINE_REFERRAL_THUMBNAIL_URL=https://cdn-icons-png.flaticon.com/512/1077/1077114.png
|
|
INLINE_USER_STATS_THUMBNAIL_URL=https://cdn-icons-png.flaticon.com/512/681/681494.png
|
|
INLINE_FINANCIAL_STATS_THUMBNAIL_URL=https://cdn-icons-png.flaticon.com/512/2769/2769339.png
|
|
INLINE_SYSTEM_STATS_THUMBNAIL_URL=https://cdn-icons-png.flaticon.com/512/2920/2920277.png
|