Add connection lost and restored events

This commit is contained in:
Aaron Bach 2020-02-04 21:48:27 -07:00
parent 1d89126944
commit e7ffe05938
5 changed files with 20 additions and 13 deletions

View file

@ -13,6 +13,8 @@ from simplipy.websocket import (
EVENT_ARMED_HOME,
EVENT_AWAY_EXIT_DELAY_BY_KEYPAD,
EVENT_AWAY_EXIT_DELAY_BY_REMOTE,
EVENT_CONNECTION_LOST,
EVENT_CONNECTION_RESTORED,
EVENT_DISARMED_BY_MASTER_PIN,
EVENT_DISARMED_BY_REMOTE,
EVENT_HOME_EXIT_DELAY,
@ -175,11 +177,6 @@ class SimpliSafeAlarm(SimpliSafeEntity, AlarmControlPanel):
@callback
def async_update_from_rest_api(self):
"""Update the entity with the provided REST API data."""
if self._system.state == SystemStates.error:
self._online = False
return
self._online = True
if self._system.version == 3:
self._attrs.update(
{
@ -227,7 +224,9 @@ class SimpliSafeAlarm(SimpliSafeEntity, AlarmControlPanel):
EVENT_HOME_EXIT_DELAY,
):
self._state = STATE_ALARM_ARMING
else:
self._state = None
elif event.event_type == EVENT_CONNECTION_LOST:
self._online = False
elif event.event_type == EVENT_CONNECTION_RESTORED:
self._online = True
self._changed_by = event.changed_by

View file

@ -3,7 +3,13 @@ import logging
from simplipy.errors import SimplipyError
from simplipy.lock import LockStates
from simplipy.websocket import EVENT_LOCK_ERROR, EVENT_LOCK_LOCKED, EVENT_LOCK_UNLOCKED
from simplipy.websocket import (
EVENT_CONNECTION_LOST,
EVENT_CONNECTION_RESTORED,
EVENT_LOCK_ERROR,
EVENT_LOCK_LOCKED,
EVENT_LOCK_UNLOCKED,
)
from homeassistant.components.lock import LockDevice
from homeassistant.const import STATE_LOCKED, STATE_UNKNOWN, STATE_UNLOCKED
@ -89,5 +95,7 @@ class SimpliSafeLock(SimpliSafeEntity, LockDevice):
self._state = STATE_UNLOCKED
elif event.event_type == EVENT_LOCK_ERROR:
self._state = STATE_UNKNOWN
else:
self._state = None
elif event.event_type == EVENT_CONNECTION_LOST:
self._online = False
elif event.event_type == EVENT_CONNECTION_RESTORED:
self._online = True

View file

@ -3,7 +3,7 @@
"name": "SimpliSafe",
"config_flow": true,
"documentation": "https://www.home-assistant.io/integrations/simplisafe",
"requirements": ["simplisafe-python==7.1.0"],
"requirements": ["simplisafe-python==7.2.0"],
"dependencies": [],
"codeowners": ["@bachya"]
}

View file

@ -1822,7 +1822,7 @@ simplehound==0.3
simplepush==1.1.4
# homeassistant.components.simplisafe
simplisafe-python==7.1.0
simplisafe-python==7.2.0
# homeassistant.components.sisyphus
sisyphus-control==2.2.1

View file

@ -600,7 +600,7 @@ sentry-sdk==0.13.5
simplehound==0.3
# homeassistant.components.simplisafe
simplisafe-python==7.1.0
simplisafe-python==7.2.0
# homeassistant.components.sleepiq
sleepyq==0.7