Distribucion de planes
Salud operativa (24h)
Clientes
Gestión de cuentas de empresa
| Empresa | Plan | Estado | Stripe | Cámaras | Usuarios | Alta | |
|---|---|---|---|---|---|---|---|
| Cargando… | |||||||
Tickets de soporte
Gestión de tickets cliente → soporte. Cierre + asignación + nota interna.
Planes y monetización
Topes por funcionalidad, promociones y sesiones activas
-1 = ilimitado · 0 = deshabilitado · Cambios surten efecto en <5min (cache).
| Funcionalidad | Free | Basic | Pro | Enterprise |
|---|---|---|---|---|
| Cargando… | ||||
Campañas de descuento temporales. La landing pública refleja la activa con mayor % por tier.
Sesiones JWT activas — superadmin puede revocar cualquiera o todas las de un tenant.
| Usuario | Dispositivo | IP | Última actividad | Acción |
|---|---|---|---|---|
| Cargando sesiones activas… | ||||
Provisionar cámara en el edge
Detectamos la resolución y el codec del NVR, aplicamos los ajustes recomendados (downscale a 1080p si la cámara es superior, GOP corto para arranque rápido) y verificamos el flujo de vídeo de extremo a extremo antes de marcarla como operativa. Si algo falla en el camino, deshacemos lo creado y te decimos exactamente dónde. Suele tardar entre 30 y 60 segundos.
Nueva promoción
Modelos IA
Gestión de modelos IA por familia
⚙️ Centro de control de IA
Eficiencia, escalado automático y verificación de sensibilidad
LocateAnything
Detección de vocabulario abierto (VLM) sobre un frame
Acceso restringido
No autorizado para esta herramienta.
Buscar en grabaciones
Sobre las detecciones ya guardadas de una cámara y rango (no reprocesa el vídeo).
Muestrea solo los frames que ya tienen detección (POC de evaluación · uso interno).
Clases IA
Activa o desactiva clases de detección a nivel global. Lo desactivado no se ofrece a ningún cliente y deja de detectarse. Las armas no se pueden desactivar.
Subir nuevo modelo
Relaciones de servicio
Quién mantiene las instalaciones de quién. Los técnicos del proveedor llegan a las sedes del cliente por aquí.
Nueva relación
El proveedor necesita el add-on de mantenimiento contratado: si lo pierde, el portal de sus clientes deja de funcionar.
Usuarios
Todos los usuarios de la plataforma
Usuarios demo (beta-testers)
Tenants aislados con el baseline real (cámaras, mapa y sensores) para que beta-testers prueben la plataforma.
| Nombre | Email de acceso | Creado | Última conexión | Conexiones | |
|---|---|---|---|---|---|
| Cargando… | |||||
Todos los usuarios
| Nombre | Tenant | Rol | Estado | Último login | ||
|---|---|---|---|---|---|---|
| Cargando… | ||||||
Feedback de beta-testers
Reportes enviados desde el botón de feedback. Responde para avisar al tester.
| Fecha | Tenant | Autor | Pantalla | Mensaje | Estado | |
|---|---|---|---|---|---|---|
| Cargando… | ||||||
Calidad de detección
¿La detección está viendo lo que tiene que ver? Mecanismos, controles y estado de los sensores.
Lo que no está bien
Mecanismos de calidad
Controles del auditor de sensibilidad
Compara lo que el modelo ve a confianza baja con lo que el pipeline conserva de verdad, pero SOLO sobre el encargo de cada cámara: sus clases habilitadas y sus zonas. Lo que se descarta porque decidimos no mirarlo no cuenta como hueco. Una inferencia por cámara y ronda.
Sondas SLO
| Sonda | Último veredicto | % de error | Ticks (ok / degradado / caído) | Visto hace |
|---|---|---|---|---|
| Cargando… | ||||
Por cámara
Estado del worker no disponible (Redis caído): se muestran solo las detecciones.Ritmo declarado frente al realmente ejecutado, latencia, descartes por etapa (objetos y frames son unidades distintas: NO se suman), recall del auditor, falsos positivos marcados por el operador y calidad LPR. Fototrampeo excluido (sin stream continuo).
| Cámara | Worker | FPS declarada / real | Inferencia p50/p99 (ms) | Descartes | Recall | Falsos positivos | LPR (cobertura) | Analítica (s) | Matrículas (s) |
|---|---|---|---|---|---|---|---|---|---|
| Cargando… | |||||||||
Infraestructura
Copias de seguridad, servidores y redundancia
Servidores
Copias de seguridad
| Archivo | Tamaño | Fecha | Antigüedad |
|---|---|---|---|
| Cargando… | |||
🎮 GPU / Inferencia
Estado de la GPU del host donde corre la inferencia (YOLO objetos + LPR). VRAM verde < 70%, amarillo 70–90%, rojo > 90% (riesgo OOM). Temp verde < 70°C, rojo > 83°C. Si el host no tiene GPU (p.ej. staging en CPU) se indica abajo.
| PID | Proceso | VRAM |
|---|
🚦 Estado de funcionalidades
Auto-check de cada funcionalidad clave (cada 6 h en el janitor y en vivo aquí), para cazar el «fallar callado pareciendo sano». 🟢 activa · 🟡 degradada · 🔴 caída · ⚪ desactivada/sin datos. Una feature caída emite un finding; si es crítica, avisa por Telegram. Complementa la monitorización externa (Uptime Kuma).
| Estado | Funcionalidad | Grupo | Detalle | Último OK |
|---|---|---|---|---|
| Cargando… | ||||
🧹 Health Janitor
Limpieza periódica cada 6h: detections >30d, edge_logs >7d, audit >90d, consent_events >5y, edge_telemetry >30d, JPGs >30d, enhanced cache >7d. Detección de zombies: edge nodes stale, go2rtc streams idle, cámaras inactivas con yaml.
| Cuándo | Modo | Duración | Estado | Borrados (det/log/audit/cons/tel) | MB | Warn | |
|---|---|---|---|---|---|---|---|
| Cargando… | |||||||
🔧 Findings (auto-remediation)
Problemas detectados por Janitor / Security audit con fix sugerido. Apply ejecuta el fix pre-codeado. Dismiss los ignora con motivo.
| Severidad | Kind | Título | Source | Detectado | Estado | Acciones |
|---|---|---|---|---|---|---|
| Cargando… | ||||||
🎓 Training
Datasets Roboflow + entrenamiento custom (Fase 1: read-only Roboflow)
🎬 Canario de fiabilidad
Un vídeo de contenido conocido pasado por los modelos activos. Responde a dos preguntas: ¿deja de ver algo que tiene que ver (ausencia), y se inventa algo que la escena garantiza que no está (invención)? Lo segundo no admite interpretación: si en una escena vacía aparece un arma, es un falso positivo, sin más.
| Escena | Luz | Dificultad | Fotogramas | Debe verse | Detectado | Veredicto |
|---|---|---|---|---|---|---|
| Sin mediciones todavía. | ||||||
📏 Alcance real (MEVA)
El canario mide si aparece lo que debe aparecer. Esto mide cuántos de los objetos que hay se ven,
usando MEVA (Kitware/IARPA, CC BY 4.0), que trae la verdad anotada caja por caja. Responde a
«¿hasta qué distancia detectamos de verdad?».
No muestra precisión a propósito: MEVA solo anota a los actores de su guion, así que lo que
el sistema detecta de más suele ser correcto pero sin anotar.
🔌 Datasets Roboflow
Datasets sincronizados desde tu cuenta Roboflow cada 6h. Para entrenar modelos custom necesitas: 1) Configurar API key (drawer ⚙). 2) Crear y etiquetar el dataset en Roboflow. 3) Sync. 4) Lanzar training (próxima fase).
| Name | Classes | Última versión | Imágenes | Última sync | |
|---|---|---|---|---|---|
| Cargando… | |||||
🏋 Training runs
Trainings lanzados desde un dataset. El Mac edge agent claim el job cuando esté idle (ventana horaria + CPU<50%).
| Cuándo | Dataset/ver | Family | Base | Status | Epoch | mAP50 | Acciones |
|---|---|---|---|---|---|---|---|
| Cargando… | |||||||
🕶 Shadow evaluations
Modelo nuevo corre en sombra contra prod en N cámaras. Verdict pass/fail/borderline al cierre. Crear desde "Detalle" de un training completed.
| Empezó | Run | Cámaras | Acaba en | Frames | Status | Verdict | Acciones |
|---|---|---|---|---|---|---|---|
| Cargando… | |||||||
📤 Feedback a Roboflow
Sube una detection JPG de Centinela a tu dataset Roboflow para reetiquetar. Cierra el feedback loop: falsos positivos → relabel → próximo training mejora.
Auditoria
Registro append-only de acciones (audit_log)
| Fecha | Cliente | Accion | Actor | Objetivo | Payload |
|---|---|---|---|---|---|
| Cargando… | |||||
Aceptaciones legales
Prueba de consentimiento (términos, privacidad, uso responsable de cámaras) de la web y las apps. Versión vigente: —
| Fecha | Cliente | Usuario | Versión | IP | Dispositivo |
|---|---|---|---|---|---|
| Cargando… | |||||
Seguridad
Auditoría recurrente del repositorio. Solo análisis — no aplica cambios automáticos.
Histórico
| Inicio | Origen | Veredicto | C / H / M / I | Duración | Estado |
|---|---|---|---|---|---|
| Cargando… | |||||
Hallazgos
Sugerencias de mejora
Logs del sistema
Notificaciones y eventos recientes de toda la plataforma
| Fecha | Tenant | Canal | Estado | Labels | Error |
|---|---|---|---|---|---|
| Cargando… | |||||
Marketing Studio
Assets, campañas y suscriptores
Aún no hay assets. Genera el primero desde Claude con Canva MCP.
| Estado | Origen | Alta | IP | Acción |
|---|
Brevo (ex-Sendinblue)
Cargando…Pega aquí la API key v3 (sin checkbox MCP) generada en app.brevo.com/settings/keys/api y el ID de la lista donde se sincronizarán suscriptores confirmados. Las claves se guardan encriptadas en DB.
list-listing/IDX-Brevo-Signature. Sin secret, los webhooks llegan sin validación.
URL:
https://centinela24.com/api/marketing/newsletter/brevo-webhookEventos:
unsubscribed, hard_bounce, spamSi configuraste un secret arriba, añádelo como header
X-Brevo-Signature.
Configuración del buzón Silvano
Servidor IMAP, usuario, contraseña y filtro de remitente. Los cambios se aplican en ≤60 s sin reiniciar el contenedor.
Sensores asignados
Estado en vivo de los sensores Silvano asignados
Informes de usuario
Configuración de canales por usuario y categoría de alarma (LLAMADA / SMS / CORREO).
Sensores Silvano
Dispositivos GSM pendientes de asignación
Edge Nodes
Nodo edge opcional para descargar inferencia del cloud cuando esté disponible.
Para enrolar uno: mintea un enrollment token aquí y pásalo al operario
en el sitio (escríbelo en ~/centinela/auth/enrollment-token.txt
antes del primer arranque del agent).
~/centinela/, descarga el agent, instala launchd/systemd, enrola, arranca.
Nodos registrados
| Estado | Hostname | Platform | Agent | CPU% | RAM% | Disk% | Load | Last seen | |
|---|---|---|---|---|---|---|---|---|---|
| Cargando… | |||||||||
Auto-refresh cada 30s · click en una fila para ver detalle + histórico.
Detection Mode por Cámara
Modo por defecto y en producción: cloud (la inferencia corre en el
cloud/GPU). Los modos shadow y edge solo aplican si se reactiva
un nodo edge: en shadow, cloud y edge corren a la vez y cada uno escribe
sus detections (permite comparar antes de mover una cámara a edge).
Crea siempre el workload inference_detect en el panel
Workloads ANTES de poner una cámara en shadow o edge.
El FPS y los tiempos de detección por cámara (cloud) están en
Infraestructura → Detección FPS.
| Tenant | Cámara | Modo actual | Cambiar a | Edge VOD |
|---|---|---|---|---|
| Cargando… | ||||
📜 Logs edge (sin SSH)
Stream centralizado de logs del nodo edge (agent + workers) vía log shipper, cuando hay un edge enrolado. Cada 30s el agent postea batches al cloud.
| Cuándo | Worker | Level | Mensaje |
|---|---|---|---|
| Carga nodos primero… | |||
Consola agente
Aplica cambios de configuración en staging mediante lenguaje natural.
Este contexto se envía al agente con cada nueva sesión.