I did have some ai assistance. But did some on my own. Took some effort too as ai are helpful, but only to a degree and throws a lot of nonsense at you.
First, I setup a Samba share to an external 6tb USB drive for storage.
I’ll skip details on that as everyones storage varies.
Camera’s I’m testing are Reolink Lumas Pro 4k WiFi models. Connected to 5ghz.
I dumbed them down some in the Reolink app camera settings. Fps, resolution, constant bitrate. etc.
Automation example:
alias: Lumas Pro Person Detected - Fast Alert
description: Instant rich notification with low-latency person snapshot
triggers:
- entity_id: binary_sensor.test_camera_person
to: "on"
trigger: state
conditions: []
actions:
- target:
entity_id: camera.test_camera_snapshots_fluent
data:
filename: /media/Reolink_6TB_Clips/lumas_person_latest.jpg
action: camera.snapshot
- delay:
hours: 0
minutes: 0
seconds: 2
milliseconds: 0
- data:
title: Security Alert - Person Detected
message: Person on Lumus Above Deck Camera – check now
data:
ttl: 0
priority: high
image: /media/local/Reolink_6TB_Clips/lumas_person_latest.jpg
clickAction: /lumas-deck-camera/person #dashboard path
actions:
- action: URI
title: Open Reolink App
uri: reolink://
action: notify.your.mobile
mode: single
Save clips to 6tb:
alias: Lumas Pro Person Detected - Save Clip to 6TB
description: Saves high-quality clip on person detection (background)
triggers:
- trigger: state
entity_id: binary_sensor.test_camera_person
to: "on"
conditions: []
actions:
- action: camera.record
target:
entity_id: camera.test_camera_clear
data:
filename: >-
/media/Reolink_6TB_Clips/clip_person_{{
now().strftime('%Y-%m-%d_%H%M%S') }}_lumas.mp4
duration: 20
lookback: 5
mode: queued
Cleanup 6tb:
alias: Lumas Cleanup Old Reolink Files on 6TB
description: Deletes snapshots/clips older than 10 days
triggers:
- at: "03:00:00"
trigger: time
conditions: []
actions:
- action: shell_command.cleanup_reolink_6tb
mode: single
Shell commands in configuration.yaml:
shell_command:
cleanup_reolink_6tb: find /media/Reolink_6TB_Clips -type f -mtime +10 -delete
copy_latest_snapshot: cp {{ source }} {{ destination }} # simple copy command
I did this for person, animal and vehicle.
I added dashboards with picture cards only for each.
Picture card:
type: picture
image: media-source://media_source/local/Reolink_6TB_Clips/lumas_person_latest.jpg
aspect_ratio: "16:9"
fit: cover #haven't figured out tap action if it's possible. Maybe picture glance
You can get the dashboard paths by opening HAOS in a browser and navigating to each dashboard.
This may not be the cleanest, best way, but it’s what I did. Thought I’d post it for posterity, I’m old and forgetful and probably won’t remember next week exactly what I did or how I did it.
Might have missed something in this post. Lol
I know or think I know, that using the configuration www folder might be easier, although a tiny bit of a security issue, but not much. Nothing to see in my backyard.
I went this way because I wanted to see if I could. Ai was involved but not exclusively used either.
Hope it posts cleanly, I’m not a forum expert either.
HAOS 2026.1.0, PC, HP Z1 G5 Workstation HAOS in Ubuntu KVM VM.
Note: “Entities/paths are placeholders — replace with your own.”
This was just finished so YMMV. Still tweaking, seems to work good. May be useful to some one and then again it may not.
TBD.