3 Commits

Author SHA1 Message Date
Luis Garcia
629f50ecdc Tag version 8.2.0
Signed-off-by: Luis Garcia <git@luigi311.com>
2025-07-14 19:10:36 +00:00
Luigi311
3e2450b5fd Merge pull request #296 from luigi311/fix_emby
Jellyfin/Emby: Add fallback for played percentage if missing
2025-07-14 13:09:58 -06:00
Luis Garcia
0de5e86837 Jellyfin/Emby: Add fallback for played percentage if missing
Signed-off-by: Luis Garcia <git@luigi311.com>
2025-07-14 17:21:55 +00:00
3 changed files with 20 additions and 4 deletions

View File

@@ -1,6 +1,6 @@
[project]
name = "jellyplex-watched"
version = "8.1.0"
version = "8.2.0"
description = "Sync watched between media servers locally"
readme = "README.md"
requires-python = ">=3.12"

View File

@@ -377,8 +377,24 @@ class JellyfinEmby:
if not show.get("UserData"):
continue
if show["UserData"].get("PlayedPercentage", 0) > 0:
watched_shows_filtered.append(show)
played_percentage = show["UserData"].get("PlayedPercentage")
if played_percentage is None:
# Emby no longer shows PlayedPercentage
total_episodes = show.get("RecursiveItemCount")
unplayed_episodes = show["UserData"].get("UnplayedItemCount")
if total_episodes is None:
# Failed to get total count of episodes
continue
if (
unplayed_episodes is not None
and unplayed_episodes < total_episodes
):
watched_shows_filtered.append(show)
else:
if played_percentage > 0:
watched_shows_filtered.append(show)
# Retrieve the watched/partially watched list of episodes of each watched show
for show in watched_shows_filtered:

2
uv.lock generated
View File

@@ -84,7 +84,7 @@ wheels = [
[[package]]
name = "jellyplex-watched"
version = "8.1.0"
version = "8.2.0"
source = { virtual = "." }
dependencies = [
{ name = "loguru" },