Commit Graph
3 Commits
Author SHA1 Message Date
james 3e3aba4157 Add Reddit video support
Reddit links now download and post like the other platforms.

Two changes were needed, not just the URL pattern:

- Regex: yt-dlp's Reddit extractor only matches /comments/ permalinks, so
  the app's /r/<sub>/s/<code> share links and redd.it / v.redd.it
  shortlinks are listed explicitly — they redirect to the canonical URL,
  which yt-dlp follows. Without them the link is silently dropped.

- Format selector: Reddit publishes video and audio as separate DASH/HLS
  streams with no muxed rendition, so every `best...` term failed and
  yt-dlp aborted with "Requested format is not available". Added a
  bv*+ba merge tail (and a bare bv* for silent videos) to the normal and
  /force selectors. Muxed hosts still resolve at the earlier terms, so
  YouTube/IG/TikTok/X selection is unchanged.

Posts with no video report "No media found", already in the silent list,
so ordinary Reddit links shared in chat draw no reply.
2026-08-14 05:00:16 -04:00
jamesandClaude Opus 4.8 d16c025753 Fix YouTube downloads: bump yt-dlp, require Node 22, drop YT cookies
Two YouTube regressions stacked up:

- yt-dlp 2026.3.17 hit "HTTP Error 403: Forbidden" on the actual media
  download. Bumping to 2026.6.9 fixes the data-download 403, but its EJS
  n-sig challenge solver now requires Node >= 22, and Debian 13 only ships
  Node 20 ("node-20.x (unsupported)" -> only image formats resolve). bot.py
  now points --js-runtimes at a standalone /opt/node22 via the new
  JS_RUNTIME constant.

- With a cookies.txt present, yt-dlp skips the cookieless android_vr/android
  clients (whose URLs work) and falls back to the `tv` client, whose media
  URLs 403. New _cookie_args(url) withholds cookies for YouTube hosts only,
  while still sending them to Instagram/TikTok/X.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-16 16:12:17 -04:00
jamesandClaude Opus 4.8 0f9030b72e Initial commit: Signal video-grabber bot
Group-chat bot that downloads videos from X/Instagram/YouTube/TikTok links
via yt-dlp and posts them back, plus /speed and /rev video toys.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-13 01:53:14 -04:00