from overrides import overrides
import base_presence
-from type.locations import Location
import site_config
import state_tracker
+from type.locations import Location
logger = logging.getLogger(__name__)
"""
def __init__(
- self,
- override_update_interval_sec: float = 60.0,
- override_location: Location = site_config.get_location(),
+ self,
+ override_update_interval_sec: float = 60.0,
+ override_location: Location = site_config.get_location(),
) -> None:
self.last_someone_is_home: Optional[bool] = None
self.someone_is_home: Optional[bool] = None
self.everyone_gone_since: Optional[datetime.datetime] = None
self.someone_home_since: Optional[datetime.datetime] = None
self.location = override_location
- self.detector: base_presence.PresenceDetection = base_presence.PresenceDetection()
+ self.detector: base_presence.PresenceDetection = (
+ base_presence.PresenceDetection()
+ )
super().__init__(
{
'poll_presence': override_update_interval_sec,
if self.someone_is_home is None:
raise Exception("Too Soon!")
if self.someone_is_home:
+ assert self.someone_home_since is not None
return (True, self.someone_home_since)
else:
+ assert self.everyone_gone_since is not None
return (False, self.everyone_gone_since)