From 1f28a175cf57702d7c73bf7f6e54e41d2836e96a Mon Sep 17 00:00:00 2001 From: mayun110 Date: Wed, 9 Aug 2023 18:26:44 +0800 Subject: [PATCH] =?UTF-8?q?fix=20BestFilmVersion=20jellyfin=E9=97=AE?= =?UTF-8?q?=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/modules/jellyfin/jellyfin.py | 2 ++ app/plugins/bestfilmversion/__init__.py | 4 +++- app/schemas/mediaserver.py | 2 ++ 3 files changed, 7 insertions(+), 1 deletion(-) diff --git a/app/modules/jellyfin/jellyfin.py b/app/modules/jellyfin/jellyfin.py index 1fff7354..f4c46abb 100644 --- a/app/modules/jellyfin/jellyfin.py +++ b/app/modules/jellyfin/jellyfin.py @@ -376,6 +376,8 @@ class Jellyfin(metaclass=Singleton): item_id=message.get('ItemId'), item_name=message.get('Name'), item_type=message.get('ItemType'), + item_favorite=message.get('Favorite'), + save_reason=message.get('SaveReason'), tmdb_id=message.get('Provider_tmdb'), user_name=message.get('NotificationUsername'), channel="jellyfin" diff --git a/app/plugins/bestfilmversion/__init__.py b/app/plugins/bestfilmversion/__init__.py index 6a328514..f073faa1 100644 --- a/app/plugins/bestfilmversion/__init__.py +++ b/app/plugins/bestfilmversion/__init__.py @@ -599,7 +599,7 @@ class BestFilmVersion(_PluginBase): mediainfo: Optional[MediaInfo] = None if not data.tmdb_id: info = None - if data.channel == 'jellyfin' and data.event == 'UserDataSaved': + if data.channel == 'jellyfin' and data.save_reason == 'UpdateUserRating' and data.item_favorite: info = Jellyfin().get_iteminfo(itemid=data.item_id) if data.channel == 'emby' and data.event == 'item.rate': info = Emby().get_iteminfo(itemid=data.item_id) @@ -628,6 +628,8 @@ class BestFilmVersion(_PluginBase): logger.warn(f'未识别到媒体信息,标题:{data.item_name},tmdbID:{tmdb_id}') return else: + if settings.MEDIASERVER == 'jellyfin' and data.save_reason == 'UpdateUserRating' and not data.item_favorite: + return if data.item_type not in ['Movie', 'MOV', 'movie']: return diff --git a/app/schemas/mediaserver.py b/app/schemas/mediaserver.py index 160f5c87..e5f889e2 100644 --- a/app/schemas/mediaserver.py +++ b/app/schemas/mediaserver.py @@ -131,3 +131,5 @@ class WebhookEventInfo(BaseModel): client: Optional[str] = None user_name: Optional[str] = None image_url: Optional[str] = None + item_favorite: Optional[bool] = None + save_reason: Optional[str] = None