frigate/web/src/api
Claude 703ffcf82e
fix: sync {camera}/motion topic from camera_activity updates
applyCameraActivity expanded camera_activity into many per-camera
topics ({camera}/enabled/state, {camera}/detect/state, etc.) but
never synced the motion field into {camera}/motion.

This caused a critical bug: a stale retained MQTT "OFF" value in
{camera}/motion would permanently override the live motion state
from camera_activity.motion. In useCameraActivity the detectingMotion
check (truthy string "OFF") took priority over camera_activity.motion,
so activeMotion was always false even with real motion present.

Now applyCameraActivity writes state.motion → {camera}/motion ("ON"/
"OFF"), keeping it in sync with the authoritative camera_activity data.

https://claude.ai/code/session_019B4dJXtcxvHn97ZaqHUB62
2026-03-18 05:21:29 +00:00
..
auth-redirect.ts Miscellaneous fixes (#21141) 2025-12-04 12:19:07 -06:00
baseUrl.ts Fix linter and fix lint issues (#10141) 2024-02-28 16:23:56 -06:00
index.tsx Replace react-tracked and react-use-websocket with useSyncExternalStore (#22386) 2026-03-11 09:02:51 -05:00
ws.ts fix: sync {camera}/motion topic from camera_activity updates 2026-03-18 05:21:29 +00:00
wsContext.ts Replace react-tracked and react-use-websocket with useSyncExternalStore (#22386) 2026-03-11 09:02:51 -05:00
WsProvider.tsx Replace react-tracked and react-use-websocket with useSyncExternalStore (#22386) 2026-03-11 09:02:51 -05:00