You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
1.4 KiB
Python

import requests as req
import logging
import json
class ValhallaServer():
def __init__(self, server_address: str, server_port: str, server_user: str, server_access_password: str, logging_level: str):
self.server_address = server_address
self.server_port = server_port
self.server_user = server_user
self.server_access_password = server_access_password
self.logging_level = logging_level
self.logger = logging.getLogger(__name__)
self.bearer_token = ""
log_level_mapping_dict = {
"NOTSET": 0,
"DEBUG": 10,
"INFO": 20,
"WARNING": 30,
"ERROR": 40,
"CRITICAL": 50,
}
self.logger.setLevel(log_level_mapping_dict[logging_level])
def authenticate(self):
try:
login_data = {
"username": self.server_user,
"password": self.server_access_password
}
headers = {"Content-Type": "application/json"}
print(json.dumps(login_data))
response = req.post(url=f"{self.server_address}:{self.server_port}/login", json=login_data, headers=headers)
self.logger.info(str(response.json()))
print(str(response.json()))
except Exception as ex:
self.logger.error(f"{str(ex)}")