Resolve missing version on uptime-kuma 1.23.x. Closes #55

This commit is contained in:
Dariusz Jarosz 2023-09-08 13:41:24 -05:00
parent ba047114c9
commit 81d6aa7dcd

View file

@ -470,6 +470,7 @@ class UptimeKumaApi(object):
self.headers = headers self.headers = headers
self.wait_events = wait_events self.wait_events = wait_events
self.sio = socketio.Client(ssl_verify=ssl_verify) self.sio = socketio.Client(ssl_verify=ssl_verify)
self._version_str = None
self._event_data: dict = { self._event_data: dict = {
Event.MONITOR_LIST: None, Event.MONITOR_LIST: None,
@ -677,8 +678,10 @@ class UptimeKumaApi(object):
@property @property
def version(self) -> str: def version(self) -> str:
info = self.info() if not self._version_str:
return info.get("version") info = self.info()
self._version_str = info.get("version")
return self._version_str
def _build_monitor_data( def _build_monitor_data(
self, self,
@ -3012,13 +3015,22 @@ class UptimeKumaApi(object):
if username is None and password is None: if username is None and password is None:
with self.wait_for_event(Event.AUTO_LOGIN): with self.wait_for_event(Event.AUTO_LOGIN):
return {} return {}
return self._call('login', { r = self._call('login', {
"username": username, "username": username,
"password": password, "password": password,
"token": token "token": token
}) })
# Load version that is published after login.
self._event_data[Event.INFO] = None
# Loads version cache for next 'info' event.
self.version
return r
def login_by_token(self, token: str) -> dict: def login_by_token(self, token: str) -> dict:
""" """
Login by token. Login by token.