[2026-09-25] eagle: family/how-to/lampac-torrents.md personal/tech/lampa-jellyfin-plugin.md
This commit is contained in:
1 parent
95916efa2b
commit
7bf5d22101
2 files changed
+238
No files matched your search
@@ -1,3 +1,32 @@
|
||||
---
|
||||
created: '2026-09-22'
|
||||
namespace: family
|
||||
type: how-to
|
||||
status: работает-min_sid-на-обсуждении
|
||||
tags:
|
||||
- lampa
|
||||
- lampac
|
||||
- pidtor
|
||||
- torrents
|
||||
- jacred
|
||||
- torrserver
|
||||
- kraken
|
||||
- min_sid
|
||||
- diagnostics
|
||||
title: Torrents в Lampa — как оно работает и как чинить
|
||||
updated: '2026-09-25'
|
||||
related:
|
||||
- '[[personal/tech/lampac-torrserver]]'
|
||||
- '[[personal/tech/lampac-deployment]]'
|
||||
- '[[personal/tech/lampa-jellyfin-plugin]]'
|
||||
- '[[family/how-to/tv-lampac-plugin]]'
|
||||
- '[[family/how-to/arr-stack-kraken]]'
|
||||
- '[[personal/plans/lampac-kraken]]'
|
||||
summary: >-
|
||||
PidTor: три причины пустого списка — кэш-503, Playwright-503 на многословном
|
||||
title, и min_sid:15 отрезающий нишевые раздачи. Свежие фильмы работают,
|
||||
документалки требуют решения Alex по min_sid.
|
||||
---
|
||||
# Torrents в Lampa — как оно работает и как чинить
|
||||
|
||||
**Обновлено:** 2026-09-25
|
||||
@@ -19,6 +48,10 @@
|
||||
|
||||
**Вторая причина 503 (найдена 2026-09-25): длинный многословный `title`.** См. раздел ниже.
|
||||
|
||||
**Третья причина (2026-09-25): `min_sid: 15` отбрасывает нишевые раздачи.** Даже когда
|
||||
JacRed нашёл и `title` короткий — пустой список. Документалки не набирают 15 сидов.
|
||||
См. раздел «Третья причина» ниже.
|
||||
|
||||
---
|
||||
|
||||
## 🔴 Где на самом деле кэш (исправлено 2026-09-24)
|
||||
@@ -118,6 +151,85 @@ Playwright в контейнере lampac уходит в цикл и валит
|
||||
|
||||
---
|
||||
|
||||
## 🔴 Третья причина: `min_sid: 15` — фильтр, который режет документалки (2026-09-25)
|
||||
|
||||
**Повод:** Alex — *«понятно. занеси наблюдение в доку по лампе»* (после разбора
|
||||
документалок с диска Kraken).
|
||||
|
||||
**Факт.** Даже когда JacRed раздачу нашёл и `title` короткий (200, не 503), PidTor
|
||||
может отдать пустой список. Причина — **`min_sid` в секции `PidTor`**.
|
||||
|
||||
Текущее значение в `current.conf` lampac (строка 3378):
|
||||
|
||||
```json
|
||||
"PidTor": {
|
||||
"enable": true,
|
||||
"redapi": "http://jac.red",
|
||||
"apikey": null,
|
||||
"min_sid": 15, ← 🔴 вот он
|
||||
"max_size": 0,
|
||||
"emptyVoice": true,
|
||||
"forceAll": false,
|
||||
"torrs": null,
|
||||
"auth_torrs": null
|
||||
}
|
||||
```
|
||||
|
||||
Фильтр в `PidTor/Controller.cs:86-89`:
|
||||
|
||||
```csharp
|
||||
int sid = torrent.Seeders;
|
||||
if (sid >= init.min_sid) // 15 по умолчанию
|
||||
… // раздача показывается
|
||||
```
|
||||
|
||||
Раздача с `Seeders < 15` **отбрасывается молча** — наружу приходит пустой список,
|
||||
не ошибка.
|
||||
|
||||
### Почему это бьёт именно по документалкам
|
||||
|
||||
Нишевый контент не набирает сидов:
|
||||
|
||||
| Запрос | JacRed нашёл | Сидов | PidTor отдал |
|
||||
|---|---|---|---|
|
||||
| `шпион в снегах` (BBC Spy in the Snow) | rutracker, bitru, nnmclub, kinozal | **3** | ❌ отфильтровано |
|
||||
| `Spy in the Snow` (rutracker) | WEB-DL 1080p ДБ | **3** | ❌ отфильтровано |
|
||||
| `attenborough` → Blue Planet II | rutracker + nnmclub, 156 ГБ 4K | — | зависит от сидов |
|
||||
|
||||
Для фильмов-новинок 15 сидов норма; для BBC-документалки 2018 года — почти недостижимо.
|
||||
|
||||
### Второй барьер рядом — фильтр по качеству
|
||||
|
||||
`Controller.cs:84`: раздача проходит дальше только если `forceAll == true` **или**
|
||||
в имени есть `2160p` / `1080p` / `720p` (либо `4k`/`uhd`).
|
||||
`Spy in the Snow` содержит `1080p` → этот барьер проходит; `min_sid` его убивает.
|
||||
|
||||
### Как снижать `min_sid`
|
||||
|
||||
| Значение | Смысл |
|
||||
|---|---|
|
||||
| `0` | показывать всё, включая мёртвые раздачи (0 сидов) |
|
||||
| `1`–`2` | компромисс: мёртвые отсекаются, нишевые проходят |
|
||||
| `15` | текущее; режет почти все документалки |
|
||||
|
||||
**Порядок правки боевого конфига** ([[personal/plans/lampac-kraken]]):
|
||||
коммит `current.conf` **до** → правка `min_sid` → заливка + рестарт lampac →
|
||||
**приёмка Alex в UI** (искать `Spy in the Snow` в PidTor) → коммит **после**.
|
||||
|
||||
🔴 Приёмка = раздача **видна в UI**, а не «API отвечает 200».
|
||||
|
||||
### Добавка к диагностике: `rjson` как быстрый чекап
|
||||
|
||||
```bash
|
||||
# пустой список vs 503 — различать так (тело {} = отфильтровано, не сбой):
|
||||
curl "http://127.0.0.1:9118/lite/pidtor?title=Spy&rjson=true" → {}
|
||||
```
|
||||
|
||||
`rjson=true` отдаёт JSON вместо HTML — удобнее для скриптов. Пустой `{}` при
|
||||
известной раздаче в JacRed = фильтр `min_sid`/качество, а не поломка.
|
||||
|
||||
---
|
||||
|
||||
## По каким трекерам ищет PidTor
|
||||
|
||||
Свой список PidTor **не держит**. Он идёт на `{redapi}/api/v2.0/indexers/all/results?title=..&year=..`
|
||||
@@ -244,6 +356,99 @@ curl -s -X POST http://127.0.0.1:9118/ts/torrents \
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ ПРЕДЫСТОРИЯ: `min_sid` уже трогали — и откатили (2026-09-22)
|
||||
|
||||
🔴 **Перед любой правкой `min_sid` прочитать это.**
|
||||
|
||||
На сессии 2026-09-22 я **сам понижал `min_sid` до `3`** — и это было **откачено**:
|
||||
|
||||
```
|
||||
· min_sid: мой 3 убран → стоковое 15
|
||||
```
|
||||
|
||||
Причина отката — **`min_sid` не был причиной пустого списка у Alex**. Реальная
|
||||
причина была `redapi`: он указывал на локальный JacRed, который отдаёт формат
|
||||
**без поля `info`** → `PidTor/Controller.cs:97` (`torrent.info.sizeName`) → NPE → 500.
|
||||
|
||||
Стоковое `15` **рабочее состояние, зафиксированное в [[personal/tech/lampac-torrserver]]
|
||||
§«Статус закрытия»: ✅ `min_sid: 3` убран → сток `15`.**
|
||||
Трогать его — значит переоткрывать закрытую задачу.
|
||||
|
||||
⚠️ **Не путать два случая:**
|
||||
|
||||
| | 2026-09-22 (закрыто) | 2026-09-25 (открыто) |
|
||||
|---|---|---|
|
||||
| Симптом | «Торренты» **пусто у всех фильмов** | конкретные **документалки** пусто |
|
||||
| Причина | `redapi` → локальный JacRed (нет `info`) | `Seeders < 15` |
|
||||
| Фикс | `redapi = http://jac.red` | обсуждение `min_sid` |
|
||||
| Вывод | `min_sid` **не при чём** | `min_sid` — вероятная причина |
|
||||
|
||||
Т.е. понижение `min_sid` обосновано **только** для нишевого контента
|
||||
(BBC-документалки, 0–3 сида). Для свежих фильмов стоковое `15` всех устраивало —
|
||||
Гамнет: из 14 раздач проходили 6, F1 играл, **приёмка Alex пройдена**.
|
||||
|
||||
---
|
||||
|
||||
## 📋 Решение ожидает Alex: `min_sid` 15 → 1–2 (НЕ НАЧАТО)
|
||||
|
||||
**Статус:** план записан, правка не начата, ждёт подтверждения Alex.
|
||||
|
||||
**Что предлагается:** понизить `min_sid` до `1`–`2`, чтобы нишевые документалки
|
||||
(BBC `Spy in the Snow`, сидов 0–3) перестали отсеиваться.
|
||||
|
||||
**Цена (озвучена Alex, не забыть повторить): понижение `min_sid` — решение Alex,
|
||||
низкий sid = медленнее качает.** Т.е. раздачи с 1–2 сидами будут играть хуже.
|
||||
|
||||
| Значение | Что даёт | Риск |
|
||||
|---|---|---|
|
||||
| `15` (текущее) | свежие фильмы отлично, документалки пусто | нишевый контент недоступен |
|
||||
| `1`–`2` | документалки появляются | медленная загрузка на нишевых раздачах |
|
||||
| `0` | всё, включая мёртвые | плеер будет висеть на раздачах с 0 сидов |
|
||||
|
||||
### Порядок правки (если Alex подтвердит)
|
||||
|
||||
1. **Коммит `current.conf` ДО** правки.
|
||||
2. Правка `min_sid` в `config-module/init.conf` (**не** `config/init.conf` —
|
||||
правки там не применяются и не дают ошибки).
|
||||
3. Заливка + `docker restart lampac`.
|
||||
4. 🔴 **Приёмка Alex В UI:** искать `Spy in the Snow` в разделе PidTor, запустить.
|
||||
«API отвечает 200» ≠ «работает».
|
||||
5. **Коммит ПОСЛЕ.**
|
||||
|
||||
Объём: ~15 минут + приёмка на ТВ.
|
||||
|
||||
⚠️ **Файл:** правки идут в `config-module/init.conf`. `current.conf` — эффективный,
|
||||
слитый из `base.conf` + `init.conf`; правка `current.conf` напрямую перезапишется
|
||||
при старте. Держать в голове, в каком из двух файлов менять.
|
||||
|
||||
---
|
||||
|
||||
## Открытый дефект: Playwright валит длинные запросы (не закрыт)
|
||||
|
||||
**Статус:** найден 2026-09-25, **не трогал**, ждёт решения Alex.
|
||||
|
||||
**Симптом:** `/lite/pidtor?title=Spy%20in%20the%20Snow` → **503**, а `?title=Spy` → **200**.
|
||||
Multi-word `title` уходит в 180-секундный таймаут Chromium/Playwright внутри lampac.
|
||||
|
||||
```
|
||||
Chromium: Browser_Disconnected → Initialization → CreateAsync → LaunchAsync
|
||||
Chromium: Timeout 180000ms exceeded.
|
||||
- [err] Failed to connect to the bus: /run/dbus/system_bus_socket: No such file
|
||||
```
|
||||
|
||||
**Кандидаты на фикс:**
|
||||
- ограничить параллельный запуск Chromium;
|
||||
- отключить headless-модули в `base.conf` (`SkipModules` уже содержит
|
||||
`Potok`, `MsxNative`, `ForkPlayerXML`).
|
||||
|
||||
**Обходной путь (работает сейчас):** искать одним-двумя словами.
|
||||
Русские документалки — по русскому названию, **не** по имени папки на диске.
|
||||
|
||||
⚠️ Это **отдельный дефект** от `min_sid`. Если починить Playwright, длинные запросы
|
||||
начнут отвечать, но `min_sid` всё равно отрежет раздачи с <15 сидов.
|
||||
|
||||
---
|
||||
|
||||
## Питфоллы
|
||||
|
||||
1. 🔴 **503 — это кэш, а не ошибка.** Сначала снять кэш **ответа**, потом делать выводы. Иначе час диагностики по закэшированному отказу. ⚠️ Кэш **не в `cache/fdb/`** (там пусто) — см. «Где на самом деле кэш»; быстрее всего запросить **новый ключ** (другой год/title).
|
||||
@@ -259,6 +464,8 @@ curl -s -X POST http://127.0.0.1:9118/ts/torrents \
|
||||
11. 🔴 **`title` из нескольких слов = 503 (Playwright-таймаут).** Проверено 2026-09-25: `title=Spy%20in%20the%20Snow` → 503, `title=Spy` → 200. Это НЕ «раздач нет» и НЕ кэш (`X-Invoke-Cache` отсутствует). Искать одним словом.
|
||||
12. 🔴 **Шум `dbus/bus.cc:405 … /run/dbus/system_bus_socket` в `docker logs lampac` — маркер той же проблемы.** Chromium в контейнере без dbus стартует и отваливается; `Browser_Disconnected` + `Timeout 180000ms exceeded` в логе = PidTor будет отдавать 503.
|
||||
13. ⚠️ **`docker logs lampac` тонет в Chromium-шуме** (`grep -viE "dbus|chromium|playwright"`) — иначе реальные строки не видно. Исключений PidTor там по-прежнему НЕТ (см. п. 5).
|
||||
14. 🔴 **Пустой список ≠ 503.** Три разных состояния: `503` (кэш/Playwright), `{}`/пусто при 200 (= фильтры `min_sid`/качество отрезали), `500` (NPE на `info`). Проверять `rjson=true` для быстрого различения.
|
||||
15. 🔴 **`min_sid: 15` режет документалки молча.** Сидов у BBC-докфильмов обычно 0–3. Если JacRed находит, а PidTor пусто — смотреть `min_sid` первым делом, не трекеры.
|
||||
|
||||
---
|
||||
|
||||
|
||||
@@ -17,9 +17,13 @@ tags:
|
||||
- cartoons
|
||||
- pidtor
|
||||
- torrents
|
||||
- min_sid
|
||||
title: lampa-jellyfin-plugin — документалки Jellyfin в Lampa
|
||||
type: tech-note
|
||||
updated: '2026-09-25'
|
||||
summary: >-
|
||||
PidTor находит документалки только если смотреть title 1-2 словами + снизить
|
||||
min_sid с 15 до 1-2 (BBC-докфильмы держат 0-3 сида)
|
||||
---
|
||||
# Документалки Jellyfin в Lampa — исследование (2026-09-24)
|
||||
|
||||
@@ -57,6 +61,29 @@ title=Spy → 200 ✅
|
||||
а не по транслитерации имени папки на диске. Имена папок в `media/documentaries`
|
||||
это локальные имена закачек, и они не равны тому, что нужно в `title`.
|
||||
|
||||
⚠️ **Уточнение (2026-09-25):** `title=Penguin Meet the Family` → **503**, а не «пусто».
|
||||
Первая запись «⚠️ пусто» в таблице выше стояла для многословного запроса —
|
||||
на самом деле это тот же Playwright-503, что и у `Spy in the Snow`.
|
||||
|
||||
### 🔴 И второе правило: `min_sid` надо снижать, иначе пусто
|
||||
|
||||
Даже когда JacRed раздачу нашёл и `title` короткий — PidTor отдаёт пусто,
|
||||
потому что фильтрует по **`min_sid: 15`** (`PidTor/Controller.cs:86-89`).
|
||||
BBC-документалки 2018 года держат **0–3 сида** — все отсеиваются.
|
||||
|
||||
Проверено: `шпион в снегах` → JacRed нашёл 4 трекера (rutracker, bitru,
|
||||
nnmclub, kinozal), `Seeders: 3` → **PidTor не показал ничего**.
|
||||
|
||||
Понижение `min_sid` до `1`–`2` (или `0`) — и они появятся.
|
||||
|
||||
🔴 **Но: `min_sid` уже трогали 2026-09-22 и ОТКАТИЛИ обратно на стоковое 15**
|
||||
(понижение до `3` не помогло — реальная причина тогда была `redapi`, не `min_sid`).
|
||||
Стоковое `15` зафиксировано как рабочее. Возвращаться к нему — только ради
|
||||
нишевого контента и только с подтверждения Alex.
|
||||
|
||||
Полный разбор: [[family/how-to/lampac-torrents]] §«Предыстория min_sid»
|
||||
+ §«Решение ожидает Alex».
|
||||
|
||||
### Новое: 45 документалок на диске найдены (пути)
|
||||
|
||||
```
|
||||
@@ -86,6 +113,10 @@ PidTor о них не знает и знать не может; торренты
|
||||
Alex хочет видеть **именно свою библиотеку с диска** — то, чего в торрентах нет
|
||||
или что качается медленно. Два независимых пути, не альтернативы одного выбора.
|
||||
|
||||
🔴 **Оговорка (2026-09-25):** «находятся в PidTor» требует снижения `min_sid`
|
||||
с 15 до 1–2 — иначе JacRed находит, а PidTor показывает пусто (сидов < 15).
|
||||
Правка ждёт подтверждения Alex. См. §«И второе правило» выше.
|
||||
|
||||
## Ключевые факты
|
||||
|
||||
### 1. Lampa не играет с диска Kraken
|
||||
|
||||
Reference in new issue
Block a user