mirror of
https://github.com/movixcorp/MovixOpenSource.git
synced 2026-07-27 00:52:08 +00:00
Maj url dans l'app mobile, extension et userscript et backend : streamonsport, livetv. Amélioration du scraper darkiworld/hydracker Nouvelle source vo/vostfr qui est plutôt pas mal Renommages des sources vo/vostfr avec le nom du doamine pour mieux se repérer Correction de la synchronisation des données qui étais buggé sur certains navigateurs autre que chrome sur certaines versions Amélioration de la détection du blocage dns
97 lines
6.5 KiB
Text
97 lines
6.5 KiB
Text
PORT=YOUR_API_PORT # Exemple: 3000
|
|
JWT_SECRET=YOUR_JWT_SECRET # Exemple: change_me_super_secret_key
|
|
OPENROUTER_API_KEY=YOUR_OPENROUTER_API_KEY # Exemple: sk-or-v1-xxxxxxxx
|
|
TMDB_API_KEY=YOUR_BACKEND_TMDB_API_KEY # Exemple: 123abc456def7890
|
|
UQLOAD_API_KEY=YOUR_UQLOAD_API_KEY # Cle API XVideoSharing / Uqload
|
|
DB_HOST=YOUR_DB_HOST # Exemple: localhost
|
|
DB_PORT=YOUR_DB_PORT # Exemple: 3306
|
|
DB_USER=YOUR_DB_USER # Exemple: root
|
|
DB_PASSWORD=YOUR_DB_PASSWORD # Exemple: motdepassefort
|
|
DB_NAME=YOUR_DB_NAME # Exemple: movix
|
|
FRONTEND_BASE_URL=YOUR_FRONTEND_BASE_URL # Exemple: https://movix.rodeo
|
|
DISCORD_SYNC_ERROR_WEBHOOK_URL=YOUR_DISCORD_SYNC_ERROR_WEBHOOK_URL # Exemple: https://discord.com/api/webhooks/xxx/yyy
|
|
REDIS_HOST=YOUR_REDIS_HOST # Exemple: 127.0.0.1
|
|
REDIS_PORT=YOUR_REDIS_PORT # Exemple: 6379
|
|
REDIS_PASSWORD=YOUR_REDIS_PASSWORD # Exemple: redis_password
|
|
NUM_WORKERS=YOUR_NUM_WORKERS # Exemple: 4
|
|
PROXY_SERVER_URL=YOUR_PROXY_SERVER_URL # Exemple: https://proxy.movix.rodeo
|
|
CF_PROXY_403_URL=YOUR_CF_PROXY_403_URL # Exemple: https://cf-proxy-403.movix.rodeo
|
|
BYPASS403_SERVER_URL=YOUR_BYPASS403_SERVER_URL # Exemple: https://proxy.movix.blog
|
|
CLOUDFLARE_WORKERS_PROXIES=YOUR_CLOUDFLARE_WORKERS_PROXIES # Exemple: worker1.example.workers.dev,worker2.example.workers.dev
|
|
PROXYSCRAPE_API_TOKEN=YOUR_PROXYSCRAPE_API_TOKEN # Cle API ProxyScrape (header api-token)
|
|
PROXYSCRAPE_ACCOUNT_ID=YOUR_PROXYSCRAPE_ACCOUNT_ID
|
|
SOCKS5_PROXIES=YOUR_SOCKS5_PROXIES_JSON # Exemple: [{"host":"1.2.3.4","port":12324,"auth":"user:pass","type":"socks5h"}]
|
|
HTTP_PROXIES=YOUR_HTTP_PROXIES_JSON # Exemple: [{"host":"1.2.3.4","port":12323,"auth":"user:pass"}]
|
|
WITV_SOCKS5_PROXY_URL=YOUR_WITV_SOCKS5_PROXY_URL # Exemple: socks5://user:pass@127.0.0.1:1080
|
|
DARKIWORLD_BASE_URL=YOUR_DARKIWORLD_BASE_URL # Exemple: https://darkiworld16.com
|
|
DARKIWORLD_COOKIES=YOUR_DARKIWORLD_COOKIES # Exemple: SERVERID=S1; connected=1; dbruser=1; remember_web_...=...; cookie_notice=true; XSRF-TOKEN=...; darkiworld_session=...
|
|
DARKIWORLD_XSRF_TOKEN=YOUR_DARKIWORLD_XSRF_TOKEN # Exemple: longue-chaine-xsrf-decodée
|
|
TURNSTILE_SECRET_KEY=YOUR_TURNSTILE_SECRET_KEY # Exemple: 0x4AAAAAAxxxxxxxxxxxxxxxxxxxxxxxx
|
|
TURNSTILE_INVISIBLE_SECRETKEY=YOUR_TURNSTILE_INVISIBLE_SECRETKEY # Turnstile invisible (likes, etc.)
|
|
BESTDEBRID_API_KEY=YOUR_BESTDEBRID_API_KEY
|
|
VIP_SUPPORT_TELEGRAM_URL=YOUR_VIP_SUPPORT_TELEGRAM_URL # Exemple: https://t.me/movix_site
|
|
VIP_INVOICE_EXPIRATION_MINUTES=YOUR_VIP_INVOICE_EXPIRATION_MINUTES # Exemple: 210
|
|
VIP_BTC_XPUB=YOUR_VIP_BTC_XPUB # xpub BTC dedie a la reception, sans seed ni cle privee
|
|
VIP_BTC_ADDRESS_TYPE=YOUR_VIP_BTC_ADDRESS_TYPE # Type d'adresse derivee: legacy | segwit | p2sh-segwit (optionnel, auto-detecte selon le prefixe si vide)
|
|
VIP_BTC_CHAIN=YOUR_VIP_BTC_CHAIN # Branche de derivation sous le xpub: 0 = adresses externes de reception (par defaut)
|
|
VIP_BTC_START_INDEX=YOUR_VIP_BTC_START_INDEX # Index de depart optionnel si les premieres adresses du wallet sont deja utilisees
|
|
VIP_BTC_CONFIRMATIONS=YOUR_VIP_BTC_CONFIRMATIONS # Exemple: 1
|
|
VIP_LTC_XPUB=YOUR_VIP_LTC_XPUB # xpub/Ltub LTC dedie a la reception, sans seed ni cle privee
|
|
VIP_LTC_ADDRESS_TYPE=YOUR_VIP_LTC_ADDRESS_TYPE # Type d'adresse derivee: legacy | segwit | p2sh-segwit (optionnel, auto-detecte selon le prefixe si vide)
|
|
VIP_LTC_CHAIN=YOUR_VIP_LTC_CHAIN # Branche de derivation sous le xpub: 0 = adresses externes de reception (par defaut)
|
|
VIP_LTC_START_INDEX=YOUR_VIP_LTC_START_INDEX # Index de depart optionnel si les premieres adresses du wallet sont deja utilisees
|
|
VIP_LTC_CONFIRMATIONS=YOUR_VIP_LTC_CONFIRMATIONS # Exemple: 1
|
|
VIP_PAYGATE_ENABLED=YOUR_VIP_PAYGATE_ENABLED # Exemple: true
|
|
VIP_PAYGATE_DOMAIN=YOUR_VIP_PAYGATE_DOMAIN # Exemple: checkout.paygate.to
|
|
VIP_PAYGATE_SETTLEMENT_WALLET=YOUR_VIP_PAYGATE_SETTLEMENT_WALLET # Adresse de settlement configuree chez PayGate
|
|
VIP_PAYGATE_CALLBACK_BASE_URL=YOUR_VIP_PAYGATE_CALLBACK_BASE_URL # Optionnel, force l'URL publique backend pour les callbacks
|
|
VIP_PAYGATE_LOGO_URL=YOUR_VIP_PAYGATE_LOGO_URL # Optionnel, logo affiche dans le checkout heberge
|
|
VIP_PAYGATE_BACKGROUND=YOUR_VIP_PAYGATE_BACKGROUND # Optionnel, code HEX du fond du checkout PayGate (ex: #0A0A0A)
|
|
VIP_PAYGATE_THEME=YOUR_VIP_PAYGATE_THEME # Optionnel, code HEX de la couleur de theme PayGate (ex: #FBBF24)
|
|
VIP_PAYGATE_BUTTON=YOUR_VIP_PAYGATE_BUTTON # Optionnel, code HEX du bouton PayGate (ex: #EAB308)
|
|
VIP_PAYGATE_MIN_AMOUNT_EUR=YOUR_VIP_PAYGATE_MIN_AMOUNT_EUR # Exemple: 6.25
|
|
VIP_PAYGATE_MIN_PACK_EUR=YOUR_VIP_PAYGATE_MIN_PACK_EUR # Exemple: 7
|
|
VIP_PAYGATE_MIN_PAID_RATIO=YOUR_VIP_PAYGATE_MIN_PAID_RATIO # Exemple: 0.60
|
|
BLOCKCYPHER_TOKEN=YOUR_BLOCKCYPHER_TOKEN
|
|
FSTREAM_LOGIN_NAME=YOUR_FSTREAM_LOGIN_NAME # Exemple: monlogin
|
|
FSTREAM_LOGIN_PASSWORD=YOUR_FSTREAM_LOGIN_PASSWORD # Exemple: monmotdepasse
|
|
VAPID_PUBLIC_KEY=YOUR_VAPID_PUBLIC_KEY # Généré avec: npx web-push generate-vapid-keys
|
|
VAPID_PRIVATE_KEY=YOUR_VAPID_PRIVATE_KEY # Généré avec: npx web-push generate-vapid-keys
|
|
VAPID_SUBJECT=YOUR_VAPID_SUBJECT # Exemple: mailto:contact@movix.blog
|
|
XTREAM_URL=YOUR_XTREAM_URL # Exemple: http://cf.ru
|
|
XTREAM_USER=YOUR_XTREAM_USER # Exemple: 2bf0ac
|
|
XTREAM_PASS=YOUR_XTREAM_PASS # Exemple: 9d7fe
|
|
|
|
# === Payblis (VIP donations — 4th payment method) ===
|
|
# When false, /api/vip/invoices rejects payment_method=payblis requests.
|
|
VIP_PAYBLIS_ENABLED=false
|
|
|
|
# Merchant credentials (obtain from the Payblis merchant dashboard).
|
|
VIP_PAYBLIS_MERCHANT_KEY=
|
|
VIP_PAYBLIS_SECRET_KEY=
|
|
|
|
# HMAC signature strategy for the OUTGOING token sent to Payblis.
|
|
# One of: concat_declared | concat_alphabetical | over_serialized.
|
|
# Payblis sandbox accepts any — production formula unconfirmed as of 2026-04-21.
|
|
VIP_PAYBLIS_SIGNATURE_STRATEGY=concat_declared
|
|
|
|
# Toggle sandbox mode (sent as `sandbox=true` in the payment token).
|
|
VIP_PAYBLIS_SANDBOX=true
|
|
|
|
# Public store_name displayed on the Payblis checkout page.
|
|
VIP_PAYBLIS_STORE_NAME=Movix
|
|
|
|
# Optional overrides. If unset, the IPN base URL is auto-detected from the
|
|
# incoming request, and the checkout domain defaults to pay.payblis.com.
|
|
VIP_PAYBLIS_IPN_BASE_URL=
|
|
VIP_PAYBLIS_DOMAIN=pay.payblis.com
|
|
|
|
# === Hydracker queue decoding ===
|
|
# When deployed without frontend support for 202, set to 'false' to disable
|
|
# the queue (route returns 404 on cache miss instead of 202). Default: true.
|
|
HYDRACKER_QUEUE_ENABLED=true
|
|
# When 'false', /decode/:id bypasses Redis/queue entirely and POSTs hydracker
|
|
# inline (synchronous mode, like before the queue was introduced). The drain
|
|
# timer is also skipped. Useful in dev / low-traffic where the queue rarely
|
|
# reaches 50. Default: true (queue+batch of 50 enabled).
|
|
HYDRACKER_BATCHING_ENABLED=true
|