59 lines
1.4 KiB
Python

import requests
from requests.auth import HTTPBasicAuth
from django.conf import settings
from .models import GotifyUser
def create_user(username: str, password: str) -> dict:
"""Creates a user on the Gotify instance.
:param username: The name of the user to be created.
:param password: The password of the user to be created.
"""
data = {
'admin': False,
'name': username,
'pass': password
}
response = requests.post(
url=f"http://{settings.GOTIFY_CONFIG['HOST']}/user",
auth=HTTPBasicAuth(
settings.GOTIFY_CONFIG['USERNAME'],
settings.GOTIFY_CONFIG['PASSWORD'],
),
json=data
)
if response is not None:
response.raise_for_status()
return response.json()
def create_application(username: str, password: str) -> dict:
"""Creates an application on the Gotify instance.
:param username: The user for whom an application will be created.
:param password: The user's password.
"""
data = {
'defaultPriority': 6,
'description': 'A remote patient health monitoring system.',
'name': 'Medwings'
}
response = requests.post(
url=f"http://{settings.GOTIFY_CONFIG['HOST']}/application",
auth=HTTPBasicAuth(username, password),
json=data
)
if response is not None:
response.raise_for_status()
return response.json()