🐛 (api.py): Raise correct error when timeout #45
1 changed files with 5 additions and 5 deletions
|
@ -502,14 +502,14 @@ class UptimeKumaApi(object):
|
|||
def _call(self, event, data=None) -> Any:
|
||||
try:
|
||||
r = self.sio.call(event, data, timeout=self.timeout)
|
||||
r.pop("ok")
|
||||
except socketio.exceptions.TimeoutError:
|
||||
|
||||
raise Timeout(f"Timed out while waiting for event {event}")
|
||||
except Exception as e:
|
||||
raise UptimeKumaException(r.get("msg"))
|
||||
|
||||
if isinstance(r, dict) and "ok" in r:
|
||||
if not r["ok"]:
|
||||
raise UptimeKumaException(r.get("msg"))
|
||||
r.pop("ok")
|
||||
return r
|
||||
|
||||
|
||||
# event handlers
|
||||
|
||||
def _event_connect(self) -> None:
|
||||
|
|
Loading…
Reference in a new issue
The response of
self.sio.call
is not always a dict (for exampleapi.need_setup
). In this caser.pop("ok")
fails. You have deleted the code that checks if the response type is a dict.Also you have deleted the code that checks the
r["ok"]
value. The UptimeKumaException is now no longer raised when Uptime Kuma responds with an error message (whenr["ok"]
is false).