diff --git a/app/modules/jellyfin/__init__.py b/app/modules/jellyfin/__init__.py index 8afe61e8..563870c6 100644 --- a/app/modules/jellyfin/__init__.py +++ b/app/modules/jellyfin/__init__.py @@ -278,3 +278,31 @@ class JellyfinModule(_ModuleBase, _MediaServerBase[Jellyfin]): if not server: return [] return server.get_latest(num=count, username=username) + + def mediaserver_latest_images(self, + server: str, + count: int = 20, + username: str = None, + host_type: bool = True, + ) -> List[str]: + """ + 获取媒体服务器最新入库条目的图片 + + :param server: 媒体服务器名称 + :param count: 获取数量 + :param username: 用户名 + :param host_type: True为外网链接, False为内网链接 + :return: 图片链接列表 + """ + server: Jellyfin = self.get_instance(server) + if not server: + return [] + + links = [] + items: List[schemas.MediaServerPlayItem] = self.mediaserver_latest(num=count, username=username) + for item in items: + link = server.generate_image_link(item_id=item.id, image_type="Backdrop",host_type=host_type) + if link: + links.append(link) + + return links