mirror of
https://github.com/home-assistant/core.git
synced 2025-07-22 20:57:21 +00:00
Fix august lock/unlock with older bridges (#64143)
This commit is contained in:
parent
b0387efee3
commit
2d5fe93cb2
@ -261,13 +261,14 @@ class AugustData(AugustSubscriberMixin):
|
||||
device_id,
|
||||
)
|
||||
|
||||
async def async_lock_async(self, device_id):
|
||||
async def async_lock_async(self, device_id, hyper_bridge):
|
||||
"""Lock the device but do not wait for a response since it will come via pubnub."""
|
||||
return await self._async_call_api_op_requires_bridge(
|
||||
device_id,
|
||||
self._api.async_lock_async,
|
||||
self._august_gateway.access_token,
|
||||
device_id,
|
||||
hyper_bridge,
|
||||
)
|
||||
|
||||
async def async_unlock(self, device_id):
|
||||
@ -279,13 +280,14 @@ class AugustData(AugustSubscriberMixin):
|
||||
device_id,
|
||||
)
|
||||
|
||||
async def async_unlock_async(self, device_id):
|
||||
async def async_unlock_async(self, device_id, hyper_bridge):
|
||||
"""Unlock the device but do not wait for a response since it will come via pubnub."""
|
||||
return await self._async_call_api_op_requires_bridge(
|
||||
device_id,
|
||||
self._api.async_unlock_async,
|
||||
self._august_gateway.access_token,
|
||||
device_id,
|
||||
hyper_bridge,
|
||||
)
|
||||
|
||||
async def _async_call_api_op_requires_bridge(
|
||||
|
@ -46,17 +46,22 @@ class AugustLock(AugustEntityMixin, RestoreEntity, LockEntity):
|
||||
self._attr_unique_id = f"{self._device_id:s}_lock"
|
||||
self._update_from_data()
|
||||
|
||||
@property
|
||||
def _hyper_bridge(self):
|
||||
"""Check if the lock has a paired hyper bridge."""
|
||||
return bool(self._detail.bridge and self._detail.bridge.hyper_bridge)
|
||||
|
||||
async def async_lock(self, **kwargs):
|
||||
"""Lock the device."""
|
||||
if self._data.activity_stream.pubnub.connected:
|
||||
await self._data.async_lock_async(self._device_id)
|
||||
await self._data.async_lock_async(self._device_id, self._hyper_bridge)
|
||||
return
|
||||
await self._call_lock_operation(self._data.async_lock)
|
||||
|
||||
async def async_unlock(self, **kwargs):
|
||||
"""Unlock the device."""
|
||||
if self._data.activity_stream.pubnub.connected:
|
||||
await self._data.async_unlock_async(self._device_id)
|
||||
await self._data.async_unlock_async(self._device_id, self._hyper_bridge)
|
||||
return
|
||||
await self._call_lock_operation(self._data.async_unlock)
|
||||
|
||||
|
@ -2,7 +2,7 @@
|
||||
"domain": "august",
|
||||
"name": "August",
|
||||
"documentation": "https://www.home-assistant.io/integrations/august",
|
||||
"requirements": ["yalexs==1.1.18"],
|
||||
"requirements": ["yalexs==1.1.19"],
|
||||
"codeowners": ["@bdraco"],
|
||||
"dhcp": [
|
||||
{
|
||||
|
@ -2504,7 +2504,7 @@ xs1-api-client==3.0.0
|
||||
yalesmartalarmclient==0.3.7
|
||||
|
||||
# homeassistant.components.august
|
||||
yalexs==1.1.18
|
||||
yalexs==1.1.19
|
||||
|
||||
# homeassistant.components.yeelight
|
||||
yeelight==0.7.8
|
||||
|
@ -1526,7 +1526,7 @@ xmltodict==0.12.0
|
||||
yalesmartalarmclient==0.3.7
|
||||
|
||||
# homeassistant.components.august
|
||||
yalexs==1.1.18
|
||||
yalexs==1.1.19
|
||||
|
||||
# homeassistant.components.yeelight
|
||||
yeelight==0.7.8
|
||||
|
Loading…
x
Reference in New Issue
Block a user