From 53d0bef98247d743a05b90fbe20d97a220931faa Mon Sep 17 00:00:00 2001 From: David Knowles Date: Sun, 3 Sep 2023 00:23:20 +0000 Subject: [PATCH] Add a "connected" attribute to Lock --- pyschlage/lock.py | 4 ++++ tests/test_lock.py | 1 + 2 files changed, 5 insertions(+) diff --git a/pyschlage/lock.py b/pyschlage/lock.py index 00c8f11..b411f34 100644 --- a/pyschlage/lock.py +++ b/pyschlage/lock.py @@ -56,6 +56,9 @@ class Lock(Mutable): Also see known device types in device.py. """ + connected: bool = False + """Whether the lock is connected to WiFi.""" + battery_level: int | None = None """The remaining battery level of the lock. @@ -134,6 +137,7 @@ def from_json(cls, auth: Auth, json: dict) -> Lock: name=json["name"], model_name=json["modelName"], device_type=json["devicetypeId"], + connected=json["connected"], battery_level=attributes.get("batteryLevel"), is_locked=is_locked, is_jammed=is_jammed, diff --git a/tests/test_lock.py b/tests/test_lock.py index 6811ddc..989dd63 100644 --- a/tests/test_lock.py +++ b/tests/test_lock.py @@ -18,6 +18,7 @@ def test_from_json(self, mock_auth, lock_json): assert lock.name == "Door Lock" assert lock.model_name == "__model_name__" assert lock.device_type == "be489wifi" + assert lock.connected is True assert lock.battery_level == 95 assert lock.is_locked assert lock._cat == "01234"