|
11 | 11 | DOMAIN as PLATFORM,
|
12 | 12 | AlarmControlPanelEntity,
|
13 | 13 | AlarmControlPanelEntityFeature as Feature,
|
| 14 | + AlarmControlPanelState, |
14 | 15 | CodeFormat,
|
15 | 16 | )
|
16 |
| -from homeassistant.const import ( |
17 |
| - STATE_ALARM_ARMED_AWAY, |
18 |
| - STATE_ALARM_ARMED_HOME, |
19 |
| - STATE_ALARM_ARMING, |
20 |
| - STATE_ALARM_DISARMED, |
21 |
| - STATE_ALARM_PENDING, |
22 |
| - STATE_ALARM_TRIGGERED, |
23 |
| -) |
24 | 17 | from homeassistant.core import HomeAssistant
|
25 | 18 | from homeassistant.helpers import entity_registry as er
|
26 | 19 | from homeassistant.helpers.entity_platform import AddEntitiesCallback
|
27 |
| -from homeassistant.helpers.typing import StateType |
28 | 20 |
|
29 | 21 | from . import VivintConfigEntry
|
30 | 22 | from .const import CONF_DISARM_CODE, DOMAIN
|
31 | 23 | from .hub import VivintEntity, VivintHub
|
32 | 24 |
|
33 | 25 | ARMED_STATE_MAP = {
|
34 |
| - ArmedState.DISARMED: STATE_ALARM_DISARMED, |
35 |
| - ArmedState.ARMING_AWAY_IN_EXIT_DELAY: STATE_ALARM_ARMING, |
36 |
| - ArmedState.ARMING_STAY_IN_EXIT_DELAY: STATE_ALARM_ARMING, |
37 |
| - ArmedState.ARMED_STAY: STATE_ALARM_ARMED_HOME, |
38 |
| - ArmedState.ARMED_AWAY: STATE_ALARM_ARMED_AWAY, |
39 |
| - ArmedState.ARMED_STAY_IN_ENTRY_DELAY: STATE_ALARM_PENDING, |
40 |
| - ArmedState.ARMED_AWAY_IN_ENTRY_DELAY: STATE_ALARM_PENDING, |
41 |
| - ArmedState.ALARM: STATE_ALARM_TRIGGERED, |
42 |
| - ArmedState.ALARM_FIRE: STATE_ALARM_TRIGGERED, |
43 |
| - ArmedState.DISABLED: STATE_ALARM_DISARMED, |
44 |
| - ArmedState.WALK_TEST: STATE_ALARM_DISARMED, |
| 26 | + ArmedState.DISARMED: AlarmControlPanelState.DISARMED, |
| 27 | + ArmedState.ARMING_AWAY_IN_EXIT_DELAY: AlarmControlPanelState.ARMING, |
| 28 | + ArmedState.ARMING_STAY_IN_EXIT_DELAY: AlarmControlPanelState.ARMING, |
| 29 | + ArmedState.ARMED_STAY: AlarmControlPanelState.ARMED_HOME, |
| 30 | + ArmedState.ARMED_AWAY: AlarmControlPanelState.ARMED_AWAY, |
| 31 | + ArmedState.ARMED_STAY_IN_ENTRY_DELAY: AlarmControlPanelState.PENDING, |
| 32 | + ArmedState.ARMED_AWAY_IN_ENTRY_DELAY: AlarmControlPanelState.PENDING, |
| 33 | + ArmedState.ALARM: AlarmControlPanelState.TRIGGERED, |
| 34 | + ArmedState.ALARM_FIRE: AlarmControlPanelState.TRIGGERED, |
| 35 | + ArmedState.DISABLED: AlarmControlPanelState.DISARMED, |
| 36 | + ArmedState.WALK_TEST: AlarmControlPanelState.DISARMED, |
45 | 37 | }
|
46 | 38 |
|
47 | 39 |
|
@@ -92,8 +84,8 @@ def __init__(
|
92 | 84 | self._disarm_code = disarm_code
|
93 | 85 |
|
94 | 86 | @property
|
95 |
| - def state(self) -> StateType: |
96 |
| - """Return the state of the alarm control panel.""" |
| 87 | + def alarm_state(self) -> AlarmControlPanelState | None: |
| 88 | + """Return the current alarm control panel entity state.""" |
97 | 89 | return ARMED_STATE_MAP.get(self.device.state)
|
98 | 90 |
|
99 | 91 | async def async_alarm_disarm(self, code: str | None = None) -> None:
|
|
0 commit comments