Ugh, a bunch of things. @overrides. --lmodule. Chromecasts. etc...
[python_utils.git] / site_config.py
index 332731277dde2ef16b983da04e749ba19975c496..e3b186daa2839c79063ca399997db1f9508fd021 100644 (file)
@@ -3,8 +3,9 @@
 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
 
@@ -31,6 +32,7 @@ class SiteConfig(object):
     network_router_ip: str
     presence_location: presence.Location
     is_anyone_present: Callable[None, bool]
+    arper_minimum_device_count: int
 
 
 def get_location():
@@ -78,6 +80,7 @@ def get_config():
             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(
@@ -87,6 +90,7 @@ def get_config():
             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}')