99_LOGGER = logging .getLogger (__name__ )
1010
1111
12- class SystemStates (Enum ):
13- """Define states that the system can be in."""
14-
15- away = 1
16- away_count = 2
17- entry_delay = 3
18- exit_delay = 4
19- home = 5
20- home_count = 5
21- off = 6
22- unknown = 99
23-
24-
2512class System :
2613 """Define a system."""
2714
15+ class SystemStates (Enum ):
16+ """Define states that the system can be in."""
17+
18+ away = 1
19+ away_count = 2
20+ entry_delay = 3
21+ exit_delay = 4
22+ home = 5
23+ home_count = 5
24+ off = 6
25+ unknown = 99
26+
2827 def __init__ (self , account , location_info : dict ) -> None :
2928 """Initialize."""
3029 self ._location_info = location_info
@@ -33,10 +32,10 @@ def __init__(self, account, location_info: dict) -> None:
3332
3433 try :
3534 raw_state = location_info ['system' ]['alarmState' ]
36- self ._state = SystemStates [convert_to_underscore (raw_state )]
35+ self ._state = self . SystemStates [convert_to_underscore (raw_state )]
3736 except KeyError :
3837 _LOGGER .error ('Unknown alarm state: %s' , raw_state )
39- self ._state = SystemStates .unknown
38+ self ._state = self . SystemStates .unknown
4039
4140 @property
4241 def alarm_going_off (self ) -> bool :
@@ -49,7 +48,7 @@ def serial(self) -> str:
4948 return self ._location_info ['system' ]['serial' ]
5049
5150 @property
52- def state (self ) -> SystemStates :
51+ def state (self ) -> Enum :
5352 """Return the current state of the system."""
5453 return self ._state
5554
@@ -76,8 +75,7 @@ async def _update_location_info(self) -> None:
7675 """Update information on the system."""
7776 subscription_resp = await self .account .get_subscription_data ()
7877 [location_info ] = [
79- system ['location' ]
80- for system in subscription_resp ['subscriptions' ]
78+ system ['location' ] for system in subscription_resp ['subscriptions' ]
8179 if system ['sid' ] == self .system_id
8280 ]
8381 self ._location_info = location_info
@@ -100,15 +98,15 @@ async def get_events(
10098
10199 async def set_away (self ) -> None :
102100 """Set the system in "Away" mode."""
103- await self ._set_state (SystemStates .away )
101+ await self ._set_state (self . SystemStates .away )
104102
105103 async def set_home (self ) -> None :
106104 """Set the system in "Home" mode."""
107- await self ._set_state (SystemStates .home )
105+ await self ._set_state (self . SystemStates .home )
108106
109107 async def set_off (self ) -> None :
110108 """Set the system in "Off" mode."""
111- await self ._set_state (SystemStates .off )
109+ await self ._set_state (self . SystemStates .off )
112110
113111 async def update (
114112 self , refresh_location : bool = True , cached : bool = True ) -> None :
@@ -119,7 +117,7 @@ async def update(
119117class SystemV2 (System ):
120118 """Define a V2 (original) system."""
121119
122- async def _set_state (self , value : SystemStates ) -> None :
120+ async def _set_state (self , value : Enum ) -> None :
123121 """Set the state of the system."""
124122 if self ._state == value :
125123 return
@@ -130,7 +128,7 @@ async def _set_state(self, value: SystemStates) -> None:
130128 params = {'state' : value .name })
131129
132130 if resp ['success' ]:
133- self ._state = SystemStates [resp ['requestedState' ]]
131+ self ._state = self . SystemStates [resp ['requestedState' ]]
134132
135133 async def update (
136134 self , refresh_location : bool = True , cached : bool = True ) -> None :
@@ -160,7 +158,7 @@ async def update(
160158class SystemV3 (System ):
161159 """Define a V3 (new) system."""
162160
163- async def _set_state (self , value : SystemStates ) -> None :
161+ async def _set_state (self , value : Enum ) -> None :
164162 """Set the state of the system."""
165163 if self ._state == value :
166164 return
@@ -169,7 +167,7 @@ async def _set_state(self, value: SystemStates) -> None:
169167 'post' , 'ss3/subscriptions/{0}/state/{1}' .format (
170168 self .system_id , value .name ))
171169
172- self ._state = SystemStates [convert_to_underscore (resp ['state' ])]
170+ self ._state = self . SystemStates [convert_to_underscore (resp ['state' ])]
173171
174172 async def update (
175173 self , refresh_location : bool = True , cached : bool = True ) -> None :
0 commit comments