Regex tabanlı HTML çıkarımı IP'den bağımsız olarak tutarsız çıktı: YouTube bazen player verisini (videoDetails) sunucu tarafında hiç göndermiyor. yt-dlp'nin kendi extractor'ı engellenmediği sürece her zaman doğru çözüyor, o yüzden kontrol tekrar yt-dlp'ye taşındı — bu sefer üç katmanı birlikte kullanarak: cookie (oturum), pot-provider (PO-token) ve PROXY_URL (temiz residential/ISP IP — Coolify sunucusunun kendi IP'si bir günlük yoğun testten sonra işaretlendi). Oxylabs ISP Proxies ile doğrulandı (gerçek ISP: CenturyLink), datacenter proxy'lerin aksine. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
42 lines
1.8 KiB
Bash
42 lines
1.8 KiB
Bash
# Local dev (running services directly on the host) uses localhost.
|
||
# docker-compose overrides DATABASE_URL/REDIS_URL/SHARED_MEDIA_ROOT to
|
||
# internal container hostnames — see infra/docker-compose.yml.
|
||
DATABASE_URL=postgresql://streamclipper:streamclipper@localhost:5432/streamclipper
|
||
REDIS_URL=redis://localhost:6379
|
||
SHARED_MEDIA_ROOT=./shared-media
|
||
|
||
# Canlı yayın tespiti yt-dlp ile yapılıyor (bkz. youtubePolling.ts) —
|
||
# YouTube Data API key gerekmiyor.
|
||
OPENAI_API_KEY=
|
||
TELEGRAM_BOT_TOKEN=
|
||
TELEGRAM_CHAT_ID=
|
||
|
||
POLL_INTERVAL_MS=60000
|
||
SEGMENT_TIME_SEC=900
|
||
API_DAEMON_PORT=4001
|
||
|
||
# Set to a live YouTube URL to bypass the 60s polling loop and start
|
||
# capturing immediately — useful for testing the pipeline without waiting
|
||
# for a real scheduled stream.
|
||
FORCE_LIVE_URL=
|
||
|
||
# YouTube cookies (Netscape cookies.txt content) are configured from the
|
||
# panel's /settings page, not here — they rotate every few hours and are
|
||
# stored in the app_settings table so they can be updated without a
|
||
# redeploy. Use a throwaway/secondary Google account, not your main one —
|
||
# it's a live session credential.
|
||
|
||
# URL of a bgutil-ytdlp-pot-provider HTTP server (see docker-compose.yml
|
||
# sc_pot_provider). Needed alongside cookies to avoid YouTube's "The page
|
||
# needs to be reloaded" proof-of-origin token check. In docker-compose this
|
||
# is auto-set to http://sc_pot_provider:4416; leave blank for local dev
|
||
# unless you're running the provider yourself.
|
||
YTDLP_POT_PROVIDER_URL=
|
||
|
||
# Residential/ISP proxy (http://user:pass@host:port) for yt-dlp calls.
|
||
# Datacenter server IPs get progressively more flagged the more they're
|
||
# used for yt-dlp requests — a clean residential/ISP IP avoids that. Use an
|
||
# ISP proxy product specifically (e.g. Oxylabs "ISP Proxies"), not a plain
|
||
# datacenter proxy — the latter has the same problem as the server itself.
|
||
PROXY_URL=
|