android player_client YouTube'un "Sign in to confirm you're not a bot" duvarını aşmadı — Coolify sunucusunun IP'si datacenter olarak işaretlenmiş. Kimlik doğrulanmış bir tarayıcı oturumunun cookies.txt'i YTDLP_COOKIES_B64 env değişkeni (Coolify'da ayarlandı, repo'da yok) üzerinden container'a taşınıp /tmp'e yazılıyor ve her yt-dlp çağrısına --cookies olarak veriliyor. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
29 lines
1.1 KiB
Bash
29 lines
1.1 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=
|
||
|
||
# base64-encoded Netscape-format cookies.txt from a logged-in YouTube session.
|
||
# Datacenter server IPs increasingly get YouTube's "Sign in to confirm
|
||
# you're not a bot" bot-check on yt-dlp requests; authenticated cookies
|
||
# avoid it. Use a throwaway/secondary Google account, not your main one —
|
||
# this file is a live session credential. Never commit the raw cookies.txt.
|
||
YTDLP_COOKIES_B64=
|