Files
Flaro/Packages/FlixyKit/Tests/JellyfinKitTests/Fixtures/episode.json
T
ScarriffleandClaude Opus 5 9540f26dd8 JellyfinKit: anmelden, stöbern, übersetzen
Der zweite Server. Eigenes Target neben PlexKit, nicht darin — die beiden
teilen die neutrale Schicht und sonst nichts.

Die Anmeldung geht zuerst über **Quick Connect**: die App zeigt einen
sechsstelligen Code, den man in einem bereits angemeldeten Client
bestätigt. Damit gilt hier dieselbe Zusage wie bei Plex — das Passwort
erreicht Flixy nie. Benutzername und Passwort bleiben als Rückfall, falls
der Server Quick Connect abgeschaltet hat; dann hält die App das Passwort
für die Dauer einer Anfrage und speichert es nirgends.

Zwei Stellen, an denen sich eine Übersetzung verrechnet, und die deshalb
Tests haben:

Jellyfin zählt Zeiten in Ticks zu hundert Nanosekunden. Eine Null zu viel,
und aus 44 Minuten werden siebeneinhalb Stunden.

Und es meldet die **ungesehenen** Folgen, nicht die gesehenen. Ungeprüft
übernommen stünde bei einer fast fertigen Serie „9 von 24" statt „15 von
24".

Dass die Adressen den Token tragen, steht hier von Anfang an — bei Plex
hat genau das tagelang gekostet, weil AVPlayer keine Kopfzeilen mitschickt.

Zwei Fähigkeiten sind ausdrücklich nicht da: Sterne-Bewertungen kennt
Jellyfin nicht, nur Daumen hoch und runter. Und die Adresse einer
verkleinerten Fassung gibt es erst nach einer Anfrage — sie zu erfinden
hieße, eine Adresse anzubieten, die nicht antwortet.

Die Startseite ist nachsichtig gebaut: fällt „Als Nächstes" aus, bleibt
deshalb nicht die ganze Seite leer.

Die App bietet Jellyfin noch nicht an — das ist der nächste Schritt.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-09-13 12:59:02 +02:00

91 lines
2.2 KiB
JSON

{
"Items": [
{
"Name": "Der Anfang",
"Id": "a1b2c3d4e5f6",
"Type": "Episode",
"Overview": "Es f\u00e4ngt an.",
"ProductionYear": 2024,
"RunTimeTicks": 26400000000,
"IndexNumber": 3,
"ParentIndexNumber": 2,
"SeriesName": "Eine Serie",
"SeriesId": "series-1",
"SeasonId": "season-2",
"SeasonName": "Staffel 2",
"OfficialRating": "12",
"CommunityRating": 8.4,
"DateCreated": "2026-01-15T10:30:00.0000000Z",
"Genres": [
"Drama",
"Mystery"
],
"People": [
{
"Id": "p1",
"Name": "Eine Person",
"Role": "Die Hauptrolle",
"Type": "Actor",
"PrimaryImageTag": "t1"
},
{
"Id": "p2",
"Name": "Wer Regie f\u00fchrte",
"Type": "Director"
}
],
"UserData": {
"PlaybackPositionTicks": 6000000000,
"PlayCount": 1,
"Played": false,
"IsFavorite": true
},
"ImageTags": {
"Primary": "tag-primary",
"Logo": "tag-logo"
},
"BackdropImageTags": [
"tag-backdrop"
],
"SeriesPrimaryImageTag": "tag-series",
"MediaSources": [
{
"Id": "source-1",
"Container": "mkv",
"Size": 5368709120,
"Bitrate": 12000000,
"RunTimeTicks": 26400000000,
"SupportsDirectPlay": true,
"SupportsTranscoding": true,
"MediaStreams": [
{
"Index": 0,
"Type": "Video",
"Codec": "hevc",
"Height": 2160,
"Width": 3840
},
{
"Index": 1,
"Type": "Audio",
"Codec": "dts",
"Language": "ger",
"Channels": 6,
"DisplayTitle": "Deutsch (DTS 5.1)",
"IsDefault": true
},
{
"Index": 2,
"Type": "Subtitle",
"Codec": "subrip",
"Language": "eng",
"IsForced": false
}
]
}
]
}
],
"TotalRecordCount": 1,
"StartIndex": 0
}