From 2567a6472fcf043c69af7e31efaca8458137bd0a Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Sat, 28 Feb 2026 08:35:27 -0600 Subject: [PATCH 1/3] Add exception handling for apprise connection --- modules/apprise.py | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/modules/apprise.py b/modules/apprise.py index 993d9ca1..8fb638e0 100755 --- a/modules/apprise.py +++ b/modules/apprise.py @@ -1,6 +1,7 @@ """Apprise notification class""" import time +import requests from modules import util from modules.util import Failed @@ -25,10 +26,9 @@ def check_api_url(self): """Check if the API URL is valid""" # Check the response using application.json get header status_endpoint = self.api_url + "/status" - response = self.config.get(status_endpoint, headers={"Accept": "application/json"}) - if response.status_code != 200: - raise Failed( - f"Apprise Error: Unable to connect to Apprise using {status_endpoint} " - f"with status code {response.status_code}: {response.reason}" - ) - return response + try: + response = self.config.get(status_endpoint, headers={"Accept": "application/json"}) + response.raise_for_status() + return response + except requests.exceptions.RequestException as e: + raise Failed(f"Apprise Error: Unexpected error connecting to {status_endpoint} ({e})") From dfa43df766ef00ad96c111af3d418b0ea2d19664 Mon Sep 17 00:00:00 2001 From: Tim Potter Date: Sat, 28 Feb 2026 09:03:22 -0600 Subject: [PATCH 2/3] Add similar exception handling for notifiarr connection --- modules/notifiarr.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/modules/notifiarr.py b/modules/notifiarr.py index 734c36b0..29b527cc 100755 --- a/modules/notifiarr.py +++ b/modules/notifiarr.py @@ -1,4 +1,5 @@ import time +import requests from json import JSONDecodeError from modules import util @@ -21,7 +22,11 @@ def __init__(self, config, params): self.instance = params["instance"] self.url = f"{self.BASE_URL}/{self.API_VERSION}/" logger.secret(self.apikey) - response = self.config.get(f"{self.url}user/qbitManage/", headers=self.header, params={"fetch": "settings"}) + try: + response = self.config.get(f"{self.url}user/qbitManage/", headers=self.header, params={"fetch": "settings"}) + response.raise_for_status() + except requests.exceptions.RequestException as e: + raise Failed(f"Notifiarr error: Unable to connect to Notifiarr ({e})") response_json = None try: response_json = response.json() @@ -37,6 +42,10 @@ def __init__(self, config, params): def notification(self, json): """Send notification to Notifiarr""" params = {"qbit_client": self.config.data["qbt"]["host"], "instance": self.instance} - response = self.config.get(f"{self.url}notification/qbitManage/", json=json, headers=self.header, params=params) + try: + response = self.config.get(f"{self.url}notification/qbitManage/", json=json, headers=self.header, params=params) + response.raise_for_status() + except requests.exceptions.RequestException as e: + raise Failed(f"Notifarr error: Unable to send notification ({e})") time.sleep(1) # Pause for 1 second before sending the next request return response From 275fe0d3270959090c2da826149f476aee60c244 Mon Sep 17 00:00:00 2001 From: "pre-commit-ci[bot]" <66853113+pre-commit-ci[bot]@users.noreply.github.com> Date: Sat, 28 Feb 2026 15:11:49 +0000 Subject: [PATCH 3/3] [pre-commit.ci] auto fixes from pre-commit.com hooks for more information, see https://pre-commit.ci --- modules/apprise.py | 3 ++- modules/notifiarr.py | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/modules/apprise.py b/modules/apprise.py index 8fb638e0..1195cd05 100755 --- a/modules/apprise.py +++ b/modules/apprise.py @@ -1,6 +1,7 @@ """Apprise notification class""" import time + import requests from modules import util @@ -30,5 +31,5 @@ def check_api_url(self): response = self.config.get(status_endpoint, headers={"Accept": "application/json"}) response.raise_for_status() return response - except requests.exceptions.RequestException as e: + except requests.exceptions.RequestException as e: raise Failed(f"Apprise Error: Unexpected error connecting to {status_endpoint} ({e})") diff --git a/modules/notifiarr.py b/modules/notifiarr.py index 29b527cc..66cea688 100755 --- a/modules/notifiarr.py +++ b/modules/notifiarr.py @@ -1,7 +1,8 @@ import time -import requests from json import JSONDecodeError +import requests + from modules import util from modules.util import Failed