## Backend Changes - Add new API endpoints: combustible, pois, mantenimiento, video, configuracion - Fix vehiculos endpoint to return paginated response with items array - Add /vehiculos/all endpoint for non-paginated list - Add /geocercas/all endpoint - Add /alertas/configuracion GET/PUT endpoints - Add /viajes/activos and /viajes/iniciar endpoints - Add /reportes/stats, /reportes/templates, /reportes/preview endpoints - Add /conductores/all and /conductores/disponibles endpoints - Update router.py to include all new modules ## Frontend Changes - Fix authentication token handling (snake_case vs camelCase) - Update vehiculosApi.listAll to use /vehiculos/all - Fix FuelGauge component usage in Combustible page - Fix chart component exports (named + default exports) - Update API client for proper token refresh ## Infrastructure - Rename services from ADAN to ATLAS - Configure Cloudflare tunnel for atlas.consultoria-as.com - Update systemd service files - Configure PostgreSQL with TimescaleDB - Configure Redis, Mosquitto, Traccar, MediaMTX ## Documentation - Update installation guides - Update API reference - Rename all ADAN references to ATLAS Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
7.8 KiB
Configuracion de Video Streaming
Guia para configurar camaras y video streaming en ATLAS.
Arquitectura de Video
Camaras en Vehiculos Servidor Dashboard/App
| | |
[Dashcam] --RTSP--> [MediaMTX] --WebRTC--> [Navegador]
[DVR] --RTSP--> | --HLS----> [App Movil]
[Cam IP] --RTSP--> |
|
[Grabaciones]
/opt/atlas/videos/
Tipos de Camaras Soportadas
1. Dashcams con RTSP
Marcas recomendadas:
- Viofo (A129, A139) - Excelente calidad, WiFi
- BlackVue (DR900X, DR750X) - Premium, Cloud opcional
- Thinkware (U1000, Q800) - Buena integracion
Requisitos:
- Soporte RTSP
- Conexion WiFi o Ethernet
- Alimentacion 12V continua
2. DVR Vehiculares
Para flotas comerciales:
- Hikvision Mobile DVR - 4/8 canales
- Dahua Mobile DVR - Industrial
- Howen - Economico
Caracteristicas:
- Multiples canales (interior, exterior, lateral)
- Almacenamiento local SD/HDD
- 3G/4G integrado
3. Camaras IP Genericas
Cualquier camara con:
- Protocolo RTSP u ONVIF
- Resolucion minima 720p
- Alimentacion PoE o 12V
4. Celular como Dashcam
La app ATLAS puede usar la camara del celular:
- Sin costo adicional
- Calidad depende del celular
- Consume bateria y datos
Configuracion de Camaras
Obtener URL RTSP
Formato tipico:
rtsp://usuario:password@IP:puerto/stream
Ejemplos por marca:
| Marca | URL RTSP |
|---|---|
| Hikvision | rtsp://admin:pass@IP:554/Streaming/Channels/101 |
| Dahua | rtsp://admin:pass@IP:554/cam/realmonitor?channel=1&subtype=0 |
| Viofo | rtsp://IP:554/live/ch00_0 |
| Generic | rtsp://IP:554/stream1 |
Verificar Stream
Antes de agregar al sistema, probar con VLC o ffprobe:
# Con ffprobe
ffprobe rtsp://admin:pass@192.168.1.100:554/stream1
# Con VLC
vlc rtsp://admin:pass@192.168.1.100:554/stream1
Agregar Camara en el Dashboard
- Ir a detalle del vehiculo > pestaña Video
- Click + Agregar camara
- Completar:
- Nombre: Ej. "Frontal", "Interior"
- Posicion: Frontal, Trasera, Interior, Lateral izq/der
- Tipo: RTSP, ONVIF
- URL Stream: URL RTSP completa
- Usuario/Password: Si requiere autenticacion
- Click Probar conexion
- Si funciona, click Guardar
Configuracion de MediaMTX
Configuracion Basica
El archivo /etc/mediamtx/mediamtx.yml ya viene configurado. Opciones importantes:
# WebRTC (para dashboard web)
webrtc: yes
webrtcAddress: :8889
webrtcAllowOrigin: '*'
# HLS (para app movil y compatibilidad)
hls: yes
hlsAddress: :8888
hlsSegmentDuration: 1s
hlsSegmentCount: 3
Agregar Camara Manualmente
Si necesitas agregar una camara directamente:
# Via API de MediaMTX
curl -X POST http://localhost:9997/v2/config/paths/add/cam_vehiculo1_frontal \
-H "Content-Type: application/json" \
-d '{
"source": "rtsp://admin:pass@192.168.1.100:554/stream1",
"sourceOnDemand": true,
"sourceOnDemandStartTimeout": "10s",
"sourceOnDemandCloseAfter": "10s"
}'
Verificar Streams Activos
# Listar paths
curl http://localhost:9997/v2/paths/list
# Ver estado de un path
curl http://localhost:9997/v2/paths/get/cam_vehiculo1_frontal
Conexion de Red
Opcion 1: Router 4G en Vehiculo
[Camara] --Ethernet/WiFi--> [Router 4G] --Internet--> [Servidor]
Configuracion:
- Router 4G con IP publica o VPN
- Port forward del puerto RTSP al servidor
- O usar VPN para conexion segura
Routers recomendados:
- Teltonika RUT240/RUT955
- Mikrotik LtAP
- Sierra Wireless
Opcion 2: Camara con 4G Integrado
Camaras con SIM integrada:
- Hikvision DS-2CD6425G1
- Dahua IPC-HFW4X31E-SE
Ventaja: Sin router adicional Desventaja: Mas costoso, SIM por camara
Opcion 3: VPN Site-to-Site
[Vehiculo] --VPN--> [Servidor]
|
[Camara con IP local]
Configuracion:
- Router en vehiculo con cliente VPN (WireGuard/OpenVPN)
- Servidor con servidor VPN
- Acceso a camara via IP de VPN
Grabacion de Video
Tipos de Grabacion
- Continua: Graba todo el tiempo
- Por eventos: Solo cuando hay alertas
- Manual: Iniciada por el operador
- Programada: En horarios especificos
Configuracion de Grabacion
En el dashboard, por camara:
- Grabar continuo: Si/No
- Grabar eventos: Si/No
- Calidad continuo: Baja/Media/Alta
- Calidad eventos: Media/Alta
- Pre-evento: Segundos antes del evento (buffer)
- Post-evento: Segundos despues del evento
- Solo con motor encendido: Si/No
Almacenamiento
Estimacion de espacio:
| Calidad | Bitrate | Por hora | Por dia (10h) |
|---|---|---|---|
| Baja (480p) | 1 Mbps | 450 MB | 4.5 GB |
| Media (720p) | 2 Mbps | 900 MB | 9 GB |
| Alta (1080p) | 4 Mbps | 1.8 GB | 18 GB |
Para 20 vehiculos con grabacion continua 720p:
- Por dia: 180 GB
- Por mes: 5.4 TB
Recomendacion:
- Grabacion continua solo en horario laboral
- O solo grabacion por eventos
Retencion
Configurar en Configuracion > Retencion de datos:
- Videos continuos: 7-14 dias
- Videos de eventos: 30-90 dias
Script de limpieza automatica:
# Ejecutar diariamente via cron
find /opt/atlas/videos -name "*.mp4" -mtime +30 -delete
Ver Video en el Dashboard
Video en Vivo
- Ir a Video > En Vivo
- Seleccionar layout (1, 2x2, 3x3)
- Click en celda para seleccionar camara
- Controles:
- Pantalla completa: Expandir
- Captura: Tomar screenshot
- Grabar: Iniciar grabacion manual
Video Sincronizado con Viaje
- Ir a Viajes > seleccionar viaje > Replay
- El video se sincroniza con la posicion en el mapa
- Usar timeline para navegar
Buscar Grabaciones
- Ir a Video > Grabaciones
- Filtrar por:
- Vehiculo
- Camara
- Fecha/hora
- Tipo (continua, evento, manual)
- Click para reproducir
- Descargar si es necesario
Eventos de Video
Deteccion Automatica
El sistema puede detectar eventos basados en:
- Datos de GPS: Frenado brusco, aceleracion, impacto
- Sensores de camara: G-sensor integrado
- Alertas del sistema: Al generar alerta, marca el video
Configurar Deteccion
En Configuracion > Video > Eventos:
- Umbral de frenado brusco: -0.5 G
- Umbral de aceleracion: 0.4 G
- Umbral de impacto: 2.0 G
Revisar Eventos
- Ir a Video > Eventos
- Lista de eventos con severidad
- Click para ver clip
- Marcar como revisado
- Agregar notas
Solucion de Problemas de Video
Camara no conecta
- Verificar URL RTSP es correcta
- Verificar credenciales
- Verificar conectividad de red
- Probar con ffprobe:
ffprobe -v error rtsp://admin:pass@IP:554/stream
Video con lag alto
Posibles causas:
- Ancho de banda insuficiente
- Servidor sobrecargado
- Bitrate muy alto
Soluciones:
- Reducir calidad en camara
- Usar sub-stream (menor resolucion)
- Verificar conexion de datos del vehiculo
Video se corta frecuentemente
Posibles causas:
- Conexion 4G inestable
- Timeout de conexion
Soluciones:
- Aumentar timeouts en MediaMTX
- Configurar reconexion automatica
- Usar buffering mas largo
No se guardan grabaciones
Verificar:
# Espacio en disco
df -h /opt/atlas/videos
# Permisos
ls -la /opt/atlas/videos
# Logs de MediaMTX
journalctl -u mediamtx -f
Seguridad
Autenticacion
- URLs RTSP internas no expuestas a internet
- Acceso a video solo via dashboard autenticado
- Tokens temporales para streams
Encriptacion
- RTSP puede usar RTSPS (SSL)
- WebRTC usa DTLS (encriptado por defecto)
- HLS puede usar HTTPS
Mejores Practicas
- No exponer puertos de video directamente a internet
- Usar VPN para acceso remoto a camaras
- Cambiar credenciales default de camaras
- Actualizar firmware de camaras regularmente