--- title: Watchlist Automation — Полный Flow namespace: personal created: '2026-05-20' updated: '2026-05-20' last_synced: '2026-05-20' type: concept tags: - kraken - watchlist - automation - synthesis confidence: 0.9 --- # Watchlist Automation — Полный Flow Синтез: как `family/documents/movies-watchlist.md` превращается в скачанный контент. Объединяет [[tech/arr-stack-kraken]], [[concepts/kraken-media-stack]], [[tech/hermes-docker-kraken]]. ## Полная цепочка ``` [вс 09:00] watchlist-discover ← KP API топ фильмов 2024-2025 ↓ добавляет в секцию "Новинки 👍/👎" movies-watchlist.md Alex ставит 👍 / 👎 ↓ [ежедн 09:00] watchlist-resolve ← SSH Кракен → resolve → commit [ежедн 10:00] watchlist-sync-down → process-thumbs (перемещает 👍 → начало списка) → sync-down (добавляет батч в Radarr/Sonarr) ↓ Radarr (7878) / Sonarr (8989) → Prowlarr (9696) → RuTracker / Kinozal(M) / NoNaMe / etc. → Transmission (9091) → /media/movies-radarr или /media/series-sonarr ↓ router.py (Custom Script) → читает жанры из NFO/TMDb → symlink в /media/{movies,cartoons,documentaries,...}/ ↓ Jellyfin (8096) → rescan → виден контент ``` ## Статусы в movies-watchlist.md | Символ | Значение | Действие | |--------|---------|---------| | `[ ]` | не смотрел, в очереди | sync-down добавляет в Radarr/Sonarr | | `[x]` | просмотрено | sync-up из Jellyfin watched history | | `👍` | нравится (новинка) | process-thumbs переносит в начало → попадёт в sync-down | | `👎` | не хочу (новинка) | process-thumbs перемещает в "Новинки 👎" | | `🗓️` | upcoming (ещё не вышел) | discover помечает, не скачивается | ## Cron Jobs на Eagle | Job | ID | Расписание | |-----|-----|-----------| | `watchlist-discover` | `6aba6979b8c4` | вс 09:00 | | `watchlist-resolve` | `16438138c8c5` | ежедн. 09:00 | | `watchlist-sync-down` | `7d12b6d48786` | ежедн. 10:00 | ## Discover — Фильтрация | Тип | Порог | |-----|-------| | Мировые | IMDb ≥ 7.0 или KP ≥ 7.0 | | Российские | KP ≥ 8.5 (защита от накрутки) | | Upcoming | год ≥ текущий−1 | | Минимум голосов | IMDb ≥ 1000 или KP ≥ 500 | KP API endpoint: `https://api.poiskkino.dev/v1.4/movie` (redirect с api.kinopoisk.dev). ## *arr Stack — Индексеры (Prowlarr) | ID | Имя | Тип | Примечание | |----|-----|-----|-----------| | 1 | RuTracker | semi-private | блокирует при rate limit на сутки | | 2 | RuTor | public | поиск по imdbid | | 3 | Byrutor | public | | | 4 | NoNaMe Club | semi-private | анонимный | | 5 | Kinozal | semi-private | резерв | | 6 | Kinozal (M) | semi-private | магнет ✅ — без grab limit, **предпочтительный** | **Pi-hole pitfall:** блокирует `skyhook.sonarr.tv` → Sonarr/Radarr поиск молча не запускается. Фикс: `dns: [8.8.8.8]` в docker-compose.yml. ## Router Script — Маршрутизация по жанру После импорта Sonarr/Radarr: `router.py --apply` создаёт symlinks: - Animation (не R/18+) → `/media/cartoons/` или `/media/cartoons-series/` - Documentary → `/media/documentaries/` или `/media/documentaries-series/` - Прочее → `/media/movies/` или `/media/series/` Kopirует NFO + постер рядом с symlink (Jellyfin не видит метадату через symlink напрямую). ## Open Tasks (2026-05-20) - 🟡 Передавать Transmission locations через router script при каждом импорте (сейчас вручную) - 🔴 rsync невыполненных фильмов с HTPC на Кракен (`Фильмы не перенесенные с htpc на кракен.md`) - 🟡 Watchlist sync-up: добавить перенесённые фильмы в нужные разделы ## See Also - [[tech/arr-stack-kraken]] — детальные питфоллы *arr стека - [[concepts/kraken-media-stack]] — полная архитектура медиасервера - [[tech/hermes-docker-kraken]] — Hermes на Кракене - [[tech/jellyfin-transcode-rpi5]] — Jellyfin PGS/ASS питфоллы