X-Git-Url: https://wannabe.guru.org/gitweb/?a=blobdiff_plain;f=camera_trigger.py;h=0e9ac6d8752860b8b5a22a3278749b33feda336d;hb=6b8d4eeb7153617221f822a243a117f0bcab07bf;hp=620a5b2fd62f27587cac6c096583eb94f42e90a5;hpb=c06bfef53f70551e7920bc4facce27f47b89e2ba;p=kiosk.git diff --git a/camera_trigger.py b/camera_trigger.py index 620a5b2..0e9ac6d 100644 --- a/camera_trigger.py +++ b/camera_trigger.py @@ -4,7 +4,7 @@ from datetime import datetime import glob import os import time -from typing import List, Tuple +from typing import List, Tuple, Optional import trigger import utils @@ -15,20 +15,23 @@ class any_camera_trigger(trigger.trigger): self.triggers_in_the_past_seven_min = { "driveway": 0, "frontdoor": 0, + "doorbell": 0, "cabin_driveway": 0, } self.last_trigger_timestamp = { "driveway": 0, "frontdoor": 0, + "doorbell": 0, "cabin_driveway": 0, } def choose_priority(self, camera: str, age: int) -> int: """Based on the camera name and last trigger age, compute priority.""" base_priority_by_camera = { - "driveway": 1, + "driveway": 3, "frontdoor": 2, - "cabin_driveway": 1, + "doorbell": 1, + "cabin_driveway": 3, } priority = base_priority_by_camera[camera] if age < 10: @@ -39,11 +42,11 @@ class any_camera_trigger(trigger.trigger): priority += trigger.trigger.PRIORITY_LOW return priority - def get_triggered_page_list(self) -> List[Tuple[str, int]]: + def get_triggered_page_list(self) -> Optional[List[Tuple[str, int]]]: """Return a list of triggered pages with priorities.""" triggers = [] num_cameras_with_recent_triggers = 0 - camera_list = ["driveway", "frontdoor", "cabin_driveway"] + camera_list = ["driveway", "frontdoor", "doorbell", "cabin_driveway"] now = time.time() try: @@ -78,10 +81,9 @@ class any_camera_trigger(trigger.trigger): self.triggers_in_the_past_seven_min[camera] <= 4 or num_cameras_with_recent_triggers > 1 ): - ts = utils.timestamp() - priority = self.choose_priority(camera, age) + priority = self.choose_priority(camera, int(age)) print( - f"{ts}: ****** {camera}[{priority}] CAMERA TRIGGER ******" + f"{utils.timestamp()}: *** {camera}[{priority}] CAMERA TRIGGER ***" ) triggers.append( ( @@ -90,7 +92,7 @@ class any_camera_trigger(trigger.trigger): ) ) else: - print(f"{ts}: Camera {camera} too spammy, squelching it") + print(f"{utils.timestamp()}: Camera {camera} too spammy, squelching it") except Exception as e: print(e) pass