from dataclasses import dataclass
import logging
import platform
-from typing import Callable, Optional
+from typing import Callable
+# Note: this module is fairly early loaded. Be aware of dependencies.
import config
import presence
network_router_ip: str
presence_location: presence.Location
is_anyone_present: Callable[None, bool]
+ arper_minimum_device_count: int
def get_location():
network_router_ip = '10.0.0.1',
presence_location = presence.Location.HOUSE,
is_anyone_present = lambda x=presence.Location.HOUSE: is_anyone_present_wrapper(x),
+ arper_minimum_device_count = 50,
)
elif location == 'CABIN':
return SiteConfig(
network_router_ip = '192.168.0.1',
presence_location = presence.Location.CABIN,
is_anyone_present = lambda x=presence.Location.CABIN: is_anyone_present_wrapper(x),
+ arper_minimum_device_count = 15,
)
else:
raise Exception(f'Unknown site location: {location}')