Skip to content

v1.4.8 - Fix live playback + Explorer library detection

Choose a tag to compare

@ZL154 ZL154 released this 11 Apr 00:56
· 342 commits to main since this release

Fixes

Live playback silently dropping every event

On Jellyfin 10.11, PlaybackProgressEventArgs exposes Session (SessionInfo) and Users (IReadOnlyList) — not UserId or SessionInfo as flat properties. The reflection-based extractor in v1.4.7 looked for the old names and returned null on every event, so nothing was ever recorded. Tracker now consumes the typed event args directly and uses Session.UserId with a Users[0].Id fallback.

Explorer badge stuck at 1/3 despite 3 libraries

WatchHistoryBackfillService.GetLibraryName walked item.GetParent() looking for a class literally named CollectionFolder. On 10.11 this fails for most items because the parent chain resolves through UserViews. Both backfill and the live tracker now use ILibraryManager.GetCollectionFolders(item) directly.

Live playback now feeds Explorer too

Previously PlaybackCompletionService.RecordCompletion hardcoded libraryName: null when calling the badge service, so even a working live tracker would never have contributed to UniqueLibrariesVisited. Library name now flows through end-to-end.

Upgrade

Install from the plugin catalog or drop the zip in and restart. Re-run Scan watch history once to fix any stale Explorer progress from earlier scans that saw empty library names.