Compare commits

..

No commits in common. "6260313e5113a2bb5abb6dca479f11cf6d4b4623" and "4a5f7bd6a3a98f40fe4b4461e7891e20643fdcce" have entirely different histories.

4 changed files with 8 additions and 21 deletions

View File

@ -334,9 +334,6 @@ class WebPushClient(Communicator):
return return
camera: str = payload["after"]["camera"] 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() current_time = datetime.datetime.now().timestamp()
if self._within_cooldown(camera): if self._within_cooldown(camera):
@ -378,7 +375,7 @@ class WebPushClient(Communicator):
if state == "genai" and payload["after"]["data"]["metadata"]: if state == "genai" and payload["after"]["data"]["metadata"]:
message = payload["after"]["data"]["metadata"]["scene"] message = payload["after"]["data"]["metadata"]["scene"]
else: else:
message = f"Detected on {camera_name}" message = f"Detected on {titlecase(camera.replace('_', ' '))}"
if ended: if ended:
logger.debug( logger.debug(
@ -409,9 +406,6 @@ class WebPushClient(Communicator):
return return
camera: str = payload["camera"] camera: str = payload["camera"]
camera_name: str = getattr(
self.config.cameras[camera], "nickname", None
) or titlecase(camera.replace("_", " "))
current_time = datetime.datetime.now().timestamp() current_time = datetime.datetime.now().timestamp()
if self._within_cooldown(camera): if self._within_cooldown(camera):
@ -427,16 +421,14 @@ class WebPushClient(Communicator):
name = payload["name"] name = payload["name"]
score = payload["score"] score = payload["score"]
title = f"{name.replace('_', ' ')} triggered on {camera_name}" title = f"{name.replace('_', ' ')} triggered on {titlecase(camera.replace('_', ' '))}"
message = f"{titlecase(trigger_type)} trigger fired for {camera_name} with score {score:.2f}" message = f"{titlecase(trigger_type)} trigger fired for {titlecase(camera.replace('_', ' '))} with score {score:.2f}"
image = f"clips/triggers/{camera}/{event_id}.webp" image = f"clips/triggers/{camera}/{event_id}.webp"
direct_url = f"/explore?event_id={event_id}" direct_url = f"/explore?event_id={event_id}"
ttl = 0 ttl = 0
logger.debug( logger.debug(f"Sending push notification for {camera}, trigger name {name}")
f"Sending push notification for {camera_name}, trigger name {name}"
)
for user in self.web_pushers: for user in self.web_pushers:
self.send_push_notification( self.send_push_notification(

View File

@ -4,7 +4,6 @@ import { Button } from "../ui/button";
import { FaVideo } from "react-icons/fa"; import { FaVideo } from "react-icons/fa";
import { isMobile } from "react-device-detect"; import { isMobile } from "react-device-detect";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { CameraNameLabel } from "../camera/CameraNameLabel";
type MobileCameraDrawerProps = { type MobileCameraDrawerProps = {
allCameras: string[]; allCameras: string[];
@ -45,7 +44,7 @@ export default function MobileCameraDrawer({
setCameraDrawer(false); setCameraDrawer(false);
}} }}
> >
<CameraNameLabel camera={cam} /> {cam.replaceAll("_", " ")}
</div> </div>
))} ))}
</div> </div>

View File

@ -21,7 +21,6 @@ import {
usePreviewForTimeRange, usePreviewForTimeRange,
} from "@/hooks/use-camera-previews"; } from "@/hooks/use-camera-previews";
import { useTranslation } from "react-i18next"; import { useTranslation } from "react-i18next";
import { useCameraNickname } from "@/hooks/use-camera-nickname";
type PreviewPlayerProps = { type PreviewPlayerProps = {
previewRef?: (ref: HTMLDivElement | null) => void; previewRef?: (ref: HTMLDivElement | null) => void;
@ -149,7 +148,6 @@ function PreviewVideoPlayer({
const { t } = useTranslation(["components/player"]); const { t } = useTranslation(["components/player"]);
const { data: config } = useSWR<FrigateConfig>("config"); const { data: config } = useSWR<FrigateConfig>("config");
const cameraName = useCameraNickname(camera);
// controlling playback // controlling playback
const previewRef = useRef<HTMLVideoElement | null>(null); const previewRef = useRef<HTMLVideoElement | null>(null);
@ -344,7 +342,7 @@ function PreviewVideoPlayer({
)} )}
{cameraPreviews && !currentPreview && ( {cameraPreviews && !currentPreview && (
<div className="absolute inset-0 flex items-center justify-center rounded-lg bg-background_alt text-primary dark:bg-black md:rounded-2xl"> <div className="absolute inset-0 flex items-center justify-center rounded-lg bg-background_alt text-primary dark:bg-black md:rounded-2xl">
{t("noPreviewFoundFor", { camera: cameraName })} {t("noPreviewFoundFor", { camera: camera.replaceAll("_", " ") })}
</div> </div>
)} )}
{firstLoad && <Skeleton className="absolute aspect-video size-full" />} {firstLoad && <Skeleton className="absolute aspect-video size-full" />}
@ -466,7 +464,6 @@ function PreviewFramesPlayer({
}: PreviewFramesPlayerProps) { }: PreviewFramesPlayerProps) {
const { t } = useTranslation(["components/player"]); const { t } = useTranslation(["components/player"]);
const cameraName = useCameraNickname(camera);
// frames data // frames data
const { data: previewFrames } = useSWR<string[]>( const { data: previewFrames } = useSWR<string[]>(
@ -567,7 +564,7 @@ function PreviewFramesPlayer({
/> />
{previewFrames?.length === 0 && ( {previewFrames?.length === 0 && (
<div className="-y-translate-1/2 align-center absolute inset-x-0 top-1/2 rounded-lg bg-background_alt text-center text-primary dark:bg-black md:rounded-2xl"> <div className="-y-translate-1/2 align-center absolute inset-x-0 top-1/2 rounded-lg bg-background_alt text-center text-primary dark:bg-black md:rounded-2xl">
{t("noPreviewFoundFor", { cameraName: cameraName })} {t("noPreviewFoundFor", { cameraName: camera.replaceAll("_", " ") })}
</div> </div>
)} )}
{firstLoad && <Skeleton className="absolute aspect-video size-full" />} {firstLoad && <Skeleton className="absolute aspect-video size-full" />}

View File

@ -64,7 +64,6 @@ import {
TooltipContent, TooltipContent,
TooltipTrigger, TooltipTrigger,
} from "@/components/ui/tooltip"; } from "@/components/ui/tooltip";
import { CameraNameLabel } from "@/components/camera/CameraNameLabel";
type RecordingViewProps = { type RecordingViewProps = {
startCamera: string; startCamera: string;
@ -720,7 +719,7 @@ export function RecordingView({
</div> </div>
</TooltipTrigger> </TooltipTrigger>
<TooltipContent className="smart-capitalize"> <TooltipContent className="smart-capitalize">
<CameraNameLabel camera={cam} /> {cam.replaceAll("_", " ")}
</TooltipContent> </TooltipContent>
</Tooltip> </Tooltip>
); );