From 3dddb397e861b926fc93f2efff7d193f320df53b Mon Sep 17 00:00:00 2001 From: Robert Goldmann <deadlocker@gmx.de> Date: Wed, 9 Oct 2024 22:46:41 +0200 Subject: [PATCH] BaseUtils: add ntfy helper (v1.8.0) --- .../TheCodeLabs_BaseUtils/NtfyHelper.py | 25 +++++++++++++++++++ TheCodeLabs_BaseUtils/setup.py | 5 ++-- 2 files changed, 28 insertions(+), 2 deletions(-) create mode 100644 TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/NtfyHelper.py diff --git a/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/NtfyHelper.py b/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/NtfyHelper.py new file mode 100644 index 0000000..9501586 --- /dev/null +++ b/TheCodeLabs_BaseUtils/TheCodeLabs_BaseUtils/NtfyHelper.py @@ -0,0 +1,25 @@ +import base64 +from typing import Any + +import requests + + +class NtfyHelper: + @staticmethod + def send_message(userName: str, + password: str, + baseUrl: str, + topicName: str, + message: str, + tags: list[str], + headers: dict[str, Any] | None = None) -> None: + base64Encoded = base64.b64encode(f'{userName}:{password}'.encode('utf-8')) + + baseHeaders = { + 'Authorization': f'Basic {base64Encoded.decode("utf-8")}', + 'Tags': ','.join(tags) + } + baseHeaders.update(headers) + + response = requests.post(f'{baseUrl}/{topicName}', data=message, headers=baseHeaders) + response.raise_for_status() diff --git a/TheCodeLabs_BaseUtils/setup.py b/TheCodeLabs_BaseUtils/setup.py index 5929538..ff0b72a 100644 --- a/TheCodeLabs_BaseUtils/setup.py +++ b/TheCodeLabs_BaseUtils/setup.py @@ -3,7 +3,7 @@ from setuptools import setup setup( name='TheCodeLabs-BaseUtils', packages=['TheCodeLabs_BaseUtils'], - version='1.7.0', + version='1.8.0', license='MIT', description='Useful python classes', author='TheCodeLabs', @@ -14,7 +14,8 @@ setup( install_requires=[ 'psutil', 'snakeviz', - 'pyocclient' + 'pyocclient', + 'requests' ], setup_requires=[ 'wheel' -- GitLab