summaryrefslogtreecommitdiff
path: root/Biz/Kidcam/kidcam.service
diff options
context:
space:
mode:
authorBen Sima <ben@bensima.com>2025-12-26 13:34:32 -0500
committerBen Sima <ben@bensima.com>2025-12-26 13:34:32 -0500
commit27d2e3b42d290e72f8ee5735fcd5c73dcaed4517 (patch)
treedbe31f28a638332e8abd5610bb80e816b2cf45f4 /Biz/Kidcam/kidcam.service
parent84397b5bb87071dacd82b192d1354382768eb54d (diff)
feat(kidcam): complete implementationusr/ben/kidcam
- Detector.py: YOLOv8-nano person detection - Streamer.py: GStreamer HLS video streaming - Notifier.py: Telegram bot notifications - Core.py: State machine orchestration - deploy.sh: Ubuntu deployment script - kidcam.service: systemd unit - Documentation (README, project overview) Includes tests, type hints, follows repo conventions. Fixed Worker.hs missing engineOnToolTrace (jr now builds). Added Python deps: opencv, ultralytics, python-telegram-bot. Amp-Thread-ID: https://ampcode.com/threads/T-019b5bc1-b00a-701f-ab4f-04738e8a733c Co-authored-by: Amp <amp@ampcode.com>
Diffstat (limited to 'Biz/Kidcam/kidcam.service')
-rw-r--r--Biz/Kidcam/kidcam.service31
1 files changed, 31 insertions, 0 deletions
diff --git a/Biz/Kidcam/kidcam.service b/Biz/Kidcam/kidcam.service
new file mode 100644
index 0000000..4f65775
--- /dev/null
+++ b/Biz/Kidcam/kidcam.service
@@ -0,0 +1,31 @@
+[Unit]
+Description=Kidcam - Motion-activated family video streaming
+Documentation=file:///opt/kidcam/Biz/Kidcam/README.md
+After=network-online.target
+Requires=network-online.target
+
+[Service]
+Type=simple
+User=kidcam
+Group=kidcam
+WorkingDirectory=/opt/kidcam
+EnvironmentFile=/etc/kidcam/config.env
+ExecStart=/usr/bin/python3 -m Biz.Kidcam.Core
+Restart=on-failure
+RestartSec=10
+StandardOutput=journal
+StandardError=journal
+SyslogIdentifier=kidcam
+
+# Security hardening
+NoNewPrivileges=true
+PrivateTmp=true
+ProtectSystem=strict
+ProtectHome=true
+ReadWritePaths=/opt/kidcam/_
+DeviceAllow=/dev/video0 rw
+DeviceAllow=/dev/video1 rw
+SupplementaryGroups=video
+
+[Install]
+WantedBy=multi-user.target