Skip to content

feat(sonarr): add season recap downloader - #7

Open
mvanbaak wants to merge 24 commits into
mainfrom
feat/sonarr-recap-downloader
Open

feat(sonarr): add season recap downloader#7
mvanbaak wants to merge 24 commits into
mainfrom
feat/sonarr-recap-downloader

Conversation

@mvanbaak

@mvanbaak mvanbaak commented Sep 11, 2026

Copy link
Copy Markdown
Owner

What

New sonarr/connect/download_recap.sh Connect script for Sonarr: downloads the previous season's recap when a new season starts (triggered on the Download event).

Discovery chain

  1. TMDB season-videos endpoint (type == "Recap" && official == true) per configured language
  2. YouTube official recap search in the series' original language only (iff TMDB found nothing)
  3. Optional fan-made recap per FAN_MADE config: never | fallback | always

All candidates are ranked and the single best recap per (season, language) is downloaded. Junk titles (trailers, teasers, soundtracks, reactions, reviews, interviews, single-episode recaps) are filtered. Search width configurable via RECAP_SEARCH_COUNT (default 10).

Storage (Plex extras naming scheme)

STORAGE_MODE config: show (default, Other/), season (Season NN/Other/), or both (show-level download + hardlink into season folder, cp fallback). A recap of season N lands in the Season N+1 folder (the watched season); the filename still names the recapped season. Multi-language support with subtitles for original-language recaps. Bulk mode backfills recaps for all downloaded seasons.

Refactor

  • radarr/connect/scripts_common.sh: added sonarr_api_get(), get_series_info(), Sonarr API defaults, and moved shared defaults + lang_to_iso639_1/notify_autopulse from the trailer script (both scripts now source these).
  • radarr/connect/download_trailer.sh: dropped duplicated shared code, bumped to 0.4.0. Behavior unchanged.
  • New sonarr/connect/scripts.conf.sample, README + AGENTS.md docs.

Notes

  • No test suite in this repo; scripts verified via sh -n + shellcheck -e SC1091,SC3043, all clean.
  • Uses sonarr_series_tmdbid from the Sonarr API/env directly (no TMDB find call needed).
  • Pre-v0.2.0 junk recap files can be cleaned with: find /path/to/Series -path "*/Other/Recap-*" -type f -delete

@mvanbaak
mvanbaak force-pushed the feat/sonarr-recap-downloader branch from 83016a9 to 50cc9cf Compare September 11, 2026 13:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant