From 6260313e5113a2bb5abb6dca479f11cf6d4b4623 Mon Sep 17 00:00:00 2001 From: ZhaiSoul <842607283@qq.com> Date: Thu, 21 Aug 2025 14:21:02 +0000 Subject: [PATCH] feat: webpush support camera nickname --- frigate/comms/webpush.py | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/frigate/comms/webpush.py b/frigate/comms/webpush.py index 7eb2cd0c2..20d84ed5c 100644 --- a/frigate/comms/webpush.py +++ b/frigate/comms/webpush.py @@ -334,6 +334,9 @@ class WebPushClient(Communicator): return camera: str = payload["after"]["camera"] + camera_name: str = getattr( + self.config.cameras[camera], "nickname", None + ) or titlecase(camera.replace("_", " ")) current_time = datetime.datetime.now().timestamp() if self._within_cooldown(camera): @@ -375,7 +378,7 @@ class WebPushClient(Communicator): if state == "genai" and payload["after"]["data"]["metadata"]: message = payload["after"]["data"]["metadata"]["scene"] else: - message = f"Detected on {titlecase(camera.replace('_', ' '))}" + message = f"Detected on {camera_name}" if ended: logger.debug( @@ -406,6 +409,9 @@ class WebPushClient(Communicator): return camera: str = payload["camera"] + camera_name: str = getattr( + self.config.cameras[camera], "nickname", None + ) or titlecase(camera.replace("_", " ")) current_time = datetime.datetime.now().timestamp() if self._within_cooldown(camera): @@ -421,14 +427,16 @@ class WebPushClient(Communicator): name = payload["name"] score = payload["score"] - title = f"{name.replace('_', ' ')} triggered on {titlecase(camera.replace('_', ' '))}" - message = f"{titlecase(trigger_type)} trigger fired for {titlecase(camera.replace('_', ' '))} with score {score:.2f}" + title = f"{name.replace('_', ' ')} triggered on {camera_name}" + message = f"{titlecase(trigger_type)} trigger fired for {camera_name} with score {score:.2f}" image = f"clips/triggers/{camera}/{event_id}.webp" direct_url = f"/explore?event_id={event_id}" ttl = 0 - logger.debug(f"Sending push notification for {camera}, trigger name {name}") + logger.debug( + f"Sending push notification for {camera_name}, trigger name {name}" + ) for user in self.web_pushers: self.send_push_notification(