diff --git a/app/modules/emby/emby.py b/app/modules/emby/emby.py index 6ea1423d6..3ec6f37a5 100644 --- a/app/modules/emby/emby.py +++ b/app/modules/emby/emby.py @@ -613,6 +613,8 @@ def get_data(self, url: str) -> Optional[Response]: 自定义URL从媒体服务器获取数据,其中{HOST}、{APIKEY}、{USER}会被替换成实际的值 :param url: 请求地址 """ + if not self._host or not self._apikey: + return None url = url.replace("{HOST}", self._host)\ .replace("{APIKEY}", self._apikey)\ .replace("{USER}", self._user) diff --git a/app/modules/jellyfin/jellyfin.py b/app/modules/jellyfin/jellyfin.py index 6d226c381..2d29f64f3 100644 --- a/app/modules/jellyfin/jellyfin.py +++ b/app/modules/jellyfin/jellyfin.py @@ -450,6 +450,8 @@ def get_data(self, url: str) -> Optional[Response]: 自定义URL从媒体服务器获取数据,其中{HOST}、{APIKEY}、{USER}会被替换成实际的值 :param url: 请求地址 """ + if not self._host or not self._apikey: + return None url = url.replace("{HOST}", self._host)\ .replace("{APIKEY}", self._apikey)\ .replace("{USER}", self._user) diff --git a/app/plugins/speedlimiter/__init__.py b/app/plugins/speedlimiter/__init__.py index a46495299..f3aaf37d1 100644 --- a/app/plugins/speedlimiter/__init__.py +++ b/app/plugins/speedlimiter/__init__.py @@ -5,6 +5,8 @@ from app.core.config import settings from app.core.event import eventmanager, Event from app.log import logger +from app.modules.emby import Emby +from app.modules.jellyfin import Jellyfin from app.modules.plex import Plex from app.modules.qbittorrent import Qbittorrent from app.modules.transmission import Transmission @@ -143,7 +145,7 @@ def get_form(self) -> Tuple[List[dict], Dict[str, Any]]: 'props': { 'chips': True, 'multiple': True, - 'model': 'sign_sites', + 'model': 'downloader', 'label': '下载器', 'items': [ {'title': 'Qbittorrent', 'value': 'qbittorrent'}, @@ -266,7 +268,7 @@ def __check_playing_sessions(self, event: Event = None): if settings.MEDIASERVER == "emby": req_url = "{HOST}emby/Sessions?api_key={APIKEY}" try: - res = RequestUtils().get_res(req_url) + res = Emby().get_data(req_url) if res and res.status_code == 200: sessions = res.json() for session in sessions: @@ -282,7 +284,7 @@ def __check_playing_sessions(self, event: Event = None): elif settings.MEDIASERVER == "jellyfin": req_url = "{HOST}Sessions?api_key={APIKEY}" try: - res = RequestUtils().get_res(req_url) + res = Jellyfin().get_data(req_url) if res and res.status_code == 200: sessions = res.json() for session in sessions: