qbit_manage/modules/apprise.py
bobokun b5e6bb395a
4.1.5 (#559)
* 4.1.5-develop1

* Fixes #552

* Fix max_seeding_time limit to 1 year (525600 minutes) due to qbt limits

* Adds [FR]: Option to completely customize tag name. #551

* --- (#556)

updated-dependencies:
- dependency-name: requests
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* Fixes #557

* Adds #483

* Fixes #558

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-05-24 20:39:18 -04:00

35 lines
1.2 KiB
Python
Executable file

"""Apprise notification class"""
import time
from modules import util
from modules.util import Failed
logger = util.logger
class Apprise:
"""Apprise notification class"""
def __init__(self, config, params):
self.config = config
self.api_url = params["api_url"]
logger.secret(self.api_url)
self.notify_url = ",".join(params["notify_url"])
response = self.check_api_url()
time.sleep(1) # Pause for 1 second before sending the next request
if response.status_code != 200:
raise Failed(f"Apprise Error: Unable to connect to Apprise using {self.api_url}")
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