feat: initial commit
This commit is contained in:
+69
@@ -0,0 +1,69 @@
|
||||
# video-surveillance-portal — Session Handoff
|
||||
|
||||
**Last Session:** 2026-05-12_162235_video-surveillance-portal
|
||||
**Model:** deepseek-v4-pro
|
||||
**Status:** in-progress
|
||||
**Updated:** 2026-05-12T16:22:35.809084
|
||||
|
||||
## Summary
|
||||
Video surveillance portal: 4 Docker containers. ONVIF event polling, multi-channel alerts, ANPR via PlateRecognizer API, phone camera via WebRTC WHIP, live view grid, PTZ control, HTTPS for mobile.
|
||||
|
||||
## Key Decisions
|
||||
- Skip local AI (Celeron N4000 too weak)
|
||||
- ONVIF PullPoint for events
|
||||
- PlateRecognizer Cloud API
|
||||
- Phone via WebRTC WHIP
|
||||
- HTTPS self-signed cert
|
||||
- SQLite instead of PostgreSQL
|
||||
- MediaMTX host network
|
||||
|
||||
## Pending Tasks
|
||||
- [ ] Test with real ICSee ONVIF camera
|
||||
- [ ] Configure Twilio/SMTP/Telegram
|
||||
- [ ] Configure PlateRecognizer token
|
||||
- [ ] Test phone from Samsung S22
|
||||
|
||||
## Files Touched
|
||||
- `docker-compose.yml`
|
||||
- `Dockerfile`
|
||||
- `requirements.txt`
|
||||
- `Makefile`
|
||||
- `config/nginx.conf`
|
||||
- `config/mediamtx.yml`
|
||||
- `src/main.py`
|
||||
- `src/config.py`
|
||||
- `src/api/cameras.py`
|
||||
- `src/api/alerts.py`
|
||||
- `src/api/plates.py`
|
||||
- `src/api/streams.py`
|
||||
- `src/onvif_client/events.py`
|
||||
- `src/onvif_client/ptz.py`
|
||||
- `src/onvif_client/snapshot.py`
|
||||
- `src/alerts/dispatcher.py`
|
||||
- `src/alerts/emailer.py`
|
||||
- `src/alerts/sms.py`
|
||||
- `src/alerts/telegram.py`
|
||||
- `src/anpr/plate_client.py`
|
||||
- `src/recording/recorder.py`
|
||||
- `src/db/database.py`
|
||||
- `src/db/models.py`
|
||||
- `frontend/index.html`
|
||||
|
||||
## Docker
|
||||
```json
|
||||
{
|
||||
"containers": [
|
||||
"vsp-nginx",
|
||||
"vsp-app",
|
||||
"vsp-redis",
|
||||
"vsp-mediamtx"
|
||||
],
|
||||
"ports": {
|
||||
"http": 8081,
|
||||
"https": 8444
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
---
|
||||
*Auto-generated from session `2026-05-12_162235_video-surveillance-portal`. Run `python3 .codex/save-session.py --handoff video-surveillance-portal` to regenerate.*
|
||||
Reference in New Issue
Block a user