Ctrl+K

Sin resultados para «{{ q }}».

Vista
{{ banner.text }}

Dashboard NOC

Centro de operaciones y monitoreo de red

Sistema operativo Actualizado {{ updatedAt }}

Resumen operacional

Mismo vocabulario visual que el Mapa — {{ totalNodes }} nodo(s) en total. Click en un estado para ver el detalle de nodos.

Detalle de nodos — {{ selStatusLabel }}

{{ detailCount }} nodo(s) encontrado(s)

NodoClienteZonaEstado
{{ n.code }} · {{ n.name }}{{ n.client }}{{ n.zone }}{{ n.label }}

Atención requerida

Calidad de red

Ventana últimas 24 h

{{ q.k }}{{ q.v }}

Incidentes

{{ q.k }}{{ q.v }}

Más antiguo activo

{{ oldest.line }}

{{ oldest.meta }}

Ver incidentes →

Mantenimientos

Activos1
Programados2
Ver ventanas de mantenimiento →

Comunicaciones

Borradores1
Pendientes de aprobación2
Ver comunicaciones →

Administrativo

Desactivados administrativamente{{ deactivated }}

Actividad reciente

  • {{ a.time }} — {{ a.entity }}: {{ a.action }}

Accesos rápidos

Mapa de la red

Visibilidad geográfica del estado operacional de los nodos

{{ totalNodes }} nodo(s)
{{ l.label }}

© OpenStreetMap contributors — uso solo para demostración/desarrollo, no apto para producción sin proveedor propio

Incidentes

Detectar → validar → contactar → clasificar → atender → resolver → documentar

IDNodo / ClienteZonaEstadoCausaPrioridadInicioTiempo de caídaOperador
{{ i.id }}
{{ i.nodeCode }} · {{ i.nodeName }}
{{ i.client }}
{{ i.zone }} {{ i.stLabel }} {{ i.causeLabel }} {{ i.prioLabel }} {{ i.start }} {{ i.dur }} {{ i.opLabel }}

No hay incidentes con este filtro.

Tiempo de caída calculado en backend: incident_recovered_at (o ahora) − incident_started_at. Nunca estimado.

← Incidentes
Distribución

{{ ci.id }} · {{ ci.nodeCode }} {{ ci.nodeName }}

{{ ci.stLabel }}

{{ ci.client }} · {{ ci.zone }} · Prioridad {{ ci.prioLabel }} · Severidad {{ ci.sevLabel }}

Tiempo de caída
{{ ci.dur }}
desde {{ ci.start }}
{{ st.mark }}
{{ st.label }}
Cada transición queda en incident_events y audit_logs

Tiempo y asignación

incident_started_at{{ ci.start }}
incident_recovered_at{{ ci.rec }}
downtime_duration{{ ci.dur }}
Estado del nodo{{ ci.nodeStatus }}
Operador{{ ci.opLabel }}
Técnico{{ ci.techLabel }}
Canal del cliente{{ ci.channel }}

Eventos

{{ e.time }} {{ e.text }}{{ e.who }}

Conversación con el cliente

{{ ci.channel }} · envío simulado

Aún no hay contacto con el cliente.

{{ m.text }}
{{ m.who }} · {{ m.time }}
{{ m.text }}
{{ m.who }} · {{ m.time }}
{{ m.text }}
Hermes · sugerencia · {{ m.time }}
{{ m.text }}

Bitácora del incidente

Eventos del sistema + conversación, en orden cronológico
{{ f.time }}{{ f.text }} — {{ f.who }}
{{ f.who }} · {{ f.time }}
{{ f.text }}
{{ f.who }} · {{ f.time }}
{{ f.text }}
Hermes · sugerencia · {{ f.time }}
{{ f.text }}
{{ f.text }}

Causa

Hermes sugiere · el operador decide {{ sugg.cause }}{{ sugg.text }}

Validación con INTER

Registro manual — el mecanismo/API autorizado de INTER aún no está confirmado (Fase 11).

Observaciones

{{ o.text }}
{{ o.who }} · {{ o.time }}

Gestión de Incidencias y Tickets

Atención técnica de lo reportado por cliente u operador — un ticket puede vincularse a un incidente

{{ c.label }}{{ c.count }}

Calidad de Red

Latencia, pérdida y disponibilidad frente al baseline de cada nodo — últimas 24 h

{{ k.v }}
{{ k.k }}

Latencia por nodo

NodoÚltimas 24 hLatenciaPérdidaUptime
{{ q.code }}
{{ q.name }}
{{ q.lat }} {{ q.loss }} {{ q.up }}

Anomalías abiertas

{{ a.node }}hace {{ a.since }} {{ a.text }} {{ a.inc }}

Fuente: QualityAnomaly / NodeQualityBaseline (Fase 8J). Solo lectura.

Consumo de Ancho de Banda

Tráfico por circuito contratado a INTER, frente a la capacidad del plan

Fuente: portal INTER · integración pendiente de mecanismo autorizado

AGROP CLARAGUA · 30 Mb

AGROP CLARAGUA – Acarigua · 200.8.184.74 · Circuito INTER ID 132

{{ bw.peakOut }} Mb/s
Pico OUT
{{ bw.peakIn }} Mb/s
Pico IN
{{ bw.avgOut }} Mb/s
Promedio OUT · {{ bw.useAvg }} del plan
{{ bw.usePeak }}
Uso pico del plan (30 Mb)
{{ bw.over80 }}
Tiempo sobre 80% del plan
{{ t.label }}
Plan contratado · 30 Mb/s 80%
{{ bw.hl.time }}OUT {{ bw.hl.out }} Mb/s · {{ bw.hl.pct }} del planIN {{ bw.hl.inn }} Mb/s
{{ t.label }}
IN (máx. {{ bw.peakIn }} Mb/s) OUT (máx. {{ bw.peakOut }} Mb/s)

Serie de 1 hora transcrita de tu captura del portal INTER (06:48–07:37). El portal rotula «MB/s», pero con un plan de 30 Mb se interpreta como megabits por segundo.

Intervalo con datos de prueba generados — el portal solo se transcribió para 1 hora.

Reportes

Todas las cifras se calculan en backend a partir de timestamps registrados

BytePlus, C.A. · NOC-MONITOR

Reporte ejecutivo diario

{{ repDate }}
{{ exec.avail }}
Disponibilidad de la red ahora
{{ exec.inc }}
Incidentes · {{ exec.active }} activos, {{ exec.resolved }} resueltos
{{ exec.down }}
Downtime acumulado
{{ exec.clients }}
Clientes afectados ahora
Resumen narrativo · redactado por Hermes sobre cifras del backend

La jornada cierra con {{ exec.active }} incidentes abiertos. Las dos caídas totales activas (Maracay - Centro y Caracas - Petare) concentran el impacto; en Maracay el cliente confirmó un corte eléctrico. La degradación de Valencia - San Diego sigue escalada a INTER por corte de fibra, sin tiempo estimado. No se registraron caídas atribuibles a configuración propia.

Downtime por causa

{{ c.label }} ({{ c.n }}){{ c.dur }}

Nodos con mayor downtime

{{ t.code }} {{ t.name }}
{{ t.client }} · {{ t.cause }}
{{ t.inc }}{{ t.dur }}

Generado {{ exec.generated }} · Periodo: {{ repPeriod }} · Datos de prueba

Por {{ dimHead }} · {{ repPeriod }}

{{ dimHead }}{{ h }}
{{ d.k }}{{ d.n }}{{ d.act }}{{ d.dur }}{{ d.avail }}

Centro de Conversaciones

Conversaciones con clientes vinculadas a incidentes · WhatsApp bloqueado (proveedor sin seleccionar), envíos simulados

{{ cv.client }}{{ cv.nodeCode }} · {{ cv.id }}Abrir incidente →
{{ m.text }}
{{ m.who }} · {{ m.time }}
{{ m.text }}
{{ m.who }} · {{ m.time }}
{{ m.text }}
Hermes · solo visible para el NOC · {{ m.text }}
Contexto
Estado{{ cv.stLabel }}
Caída{{ cv.dur }}
Causa{{ cv.causeLabel }}
Zona{{ cv.zone }}
Resumen de Hermes

{{ cvSummary }}

Respuesta sugerida

Hermes prepara, el operador revisa y envía. Nunca envía por sí mismo.

Asistente IA · Hermes

Cuenta de servicio de solo lectura: dashboard:read · nodes:read · incidents:read · tickets:read · network_quality:read

H
{{ m.text }}
{{ m.text }}
Hermes está consultando el backend…

Roles y Permisos

Matriz RBAC basada en seed.ts · los cambios requieren roles:assign_permissions y quedan en auditoría

{{ roleName }}

{{ roleCode }}

Superadministrador tiene el catálogo completo y no es editable desde la interfaz.

Cuenta de servicio. Por CLAUDE.md §18 no debe recibir permisos administrativos ni de escritura.

{{ g.name }}{{ g.granted }} / {{ g.total }}

Auditoría

Registro append-only de audit_logs · solo lectura (audit:read)

FechaActorAcciónEntidadIP
before
{{ a.before }}
after
{{ a.after }}

Configuración

Integraciones, catálogos y preferencias operativas · los secretos viven en variables de entorno, nunca aquí

Uptime Kuma

{{ kuma.stLabel }}

Así funciona hoy el backend (Fase 5): inicia sesión en tu servidor con usuario y contraseña por Socket.IO, recibe la lista de monitores y escucha cada heartbeat en tiempo real para el Incident Engine. Las credenciales se escriben solo en el .env del servidor de NOC-MONITOR, nunca en esta pantalla en producción.

La API key da acceso de solo lectura a /metrics (estado y latencia por monitor). Se puede usar junto al Socket.IO: la key para polling cada 25 s y Socket.IO para eventos. En producción vive en UPTIME_KUMA_API_KEY; aquí solo se usa en memoria y nunca se guarda.

Uptime Kuma → Ajustes → API Keys → Generar
Configuración del backend (apps/api/.env — nunca en Git)
{{ kumaEnv }}

{{ kuma.error }}

Ejecuta en la máquina donde corre Uptime Kuma y pega el resultado: {{ kuma.curl }}
{{ kuma.total }} monitores {{ kuma.up }} UP {{ kuma.down }} DOWN {{ kuma.pending }} PENDING {{ kuma.maint }} MAINT. Leído {{ kuma.fetched }} · {{ kuma.source }}
Usar mis monitores como nodos del mapaLee el nombre del monitor (CÓDIGO / CLIENTE / AG. / DIRECCIÓN / CIUDAD / Abonado) y lo ubica por ciudad en Mapa, Muro NOC, Dashboard y Calidad de Red.

Todos los monitores están DOWN. Si este Uptime Kuma corre en tu PC (Docker local), seguramente no alcanza la red de los equipos (10.29.x.x): los pings fallan desde tu máquina, no necesariamente en campo. Para ver el estado real, apunta el proxy al Kuma del servidor: $env:KUMA_URL="http://192.168.90.153:3001"; node kuma-metrics-proxy.js

{{ kuma.noGeo }} monitor(es) sin ciudad reconocida — se agrupan en el centro del mapa. En producción las coordenadas vienen de Ubicaciones.

Vinculación Monitor ↔ Nodo{{ kuma.linked }} vinculados · {{ kuma.unlinked }} sin nodo
MonitorEstadoLatenciaNodo NOC-MONITOR
{{ m.name }}
{{ m.type }} · {{ m.host }} {{ m.cert }}
{{ m.stLabel }} {{ m.rt }}

Los nodos vinculados toman su estado y latencia reales de Kuma en Dashboard, Mapa, Muro NOC y Calidad de Red. /metrics no expone pérdida ni uptime: se muestran como «—». En producción esta vinculación es la tabla Node↔Monitor de Fase 6.

Integraciones

{{ i.name }}{{ i.desc }}{{ i.st }}
Escuchar eventos de Uptime Kuma (UPTIME_KUMA_ENABLED)

Causas de incidente

{{ c.name }} {{ c.code }}

Operación

Intervalo de actualización (polling)
Muro NOC: rotar foco al incidente más crítico
Hermes: sugerir causa a partir de la conversación
Mensaje automático al cliente al detectar caída (requiere WhatsApp)
Notificar escalaciones por Telegram (requiere n8n)

{{ nd.code }} · {{ nd.name }}

{{ nd.stLabel }}
{{ nd.client }} · {{ nd.zone }} · {{ nd.coords }} · Monitor: {{ nd.mon }}
{{ nd.lat }}Latencia actual
{{ nd.loss }}Pérdida de paquetes
{{ nd.up }}Disponibilidad 24 h
{{ nd.inc30 }}Incidentes en 30 días

Disponibilidad · últimas 24 h

Franjas de 30 min · verde con servicio, ámbar degradado, rojo sin servicio
hace 24 hhace 12 hahora

Latencia · últimas 24 h

Promedio {{ nd.latAvg }} · máximo {{ nd.latMax }}
hace 24 hhace 12 hahora

Circuitos

ProveedorIDPlanIP
{{ c.prov }}
{{ c.role }}
{{ c.id }}{{ c.plan }}{{ c.ip }}

Historial de incidentes

IncidenteInicioCausaDuración
{{ x.id }} {{ x.st }}{{ x.start }}{{ x.cause }}{{ x.dur }}

Franjas de disponibilidad, serie de latencia, circuitos e incidentes cerrados de meses anteriores son datos de prueba. En producción salen de heartbeats de Uptime Kuma, de la tabla Node↔Circuit y del historial de incidentes.

Nodos

Catálogo de sedes: cliente, ubicación, circuito y monitor de Uptime Kuma · {{ nodesN }} nodos

Ahora el mapa usa los monitores de Uptime Kuma directamente como nodos. Para que use este catálogo, con clientes y coordenadas correctas, vincula los monitores aquí y cambia a modo catálogo.
CódigoNombreClienteZonaCoordenadasMonitor KumaEstado
{{ n.code }}{{ n.name }}{{ n.client }}{{ n.zone }}{{ n.coords }}{{ n.mon }}{{ n.stLabel }}

Ningún nodo coincide con la búsqueda o el filtro.

Monitores de Uptime Kuma · vinculación en lote

{{ kb.summary }}
No hay monitores cargados. Conecta Uptime Kuma o pega la salida de /metrics para vincular tus 360+ monitores con los nodos.
MonitorCódigo detectadoCiudadEstadoNodo vinculado
{{ m.ck }}{{ m.name }}{{ m.code }}{{ m.city }}{{ m.stLabel }}{{ m.linked }}

No quedan monitores con este filtro.

«Vincular por código» busca un nodo cuyo código aparezca en el nombre del monitor. «Crear nodos» toma código, cliente y ciudad del nombre (CÓDIGO / CLIENTE / AG. / DIRECCIÓN / CIUDAD) y ubica el nodo en la ciudad; los que no tienen ciudad reconocida quedan sin coordenadas para corregirlos a mano.

Clientes

Contactos operativos, SLA y acceso al portal · {{ clientsN }} clientes

ClienteSedesAfectadas ahoraContacto NOCSLAPortal
{{ c.name }}{{ c.nodes }}{{ c.affected }}{{ c.contact }}
{{ c.phone }}
{{ c.sla }}{{ c.portalLabel }}
Vista previa del portalAsí lo ve el cliente en portal.byteplus.com. No muestra operadores, causas internas ni otros clientes.
BytePlus · Portal de clientes

{{ portal.client }}

{{ portal.contact }} · {{ portal.period }}
{{ portal.banner }}
{{ portal.nSedes }}Sedes contratadas
{{ portal.avail }}Disponibilidad del mes
{{ portal.sla }}SLA contratado
{{ portal.tkOpen }}Solicitudes abiertas

Mis sedes

SedeCiudadEstadoLatencia
{{ d.code }} {{ d.name }}{{ d.zone }}{{ d.label }}{{ d.lat }}

Este cliente aún no tiene sedes asignadas en el catálogo de nodos.

Incidentes

Sin incidentes registrados en el período.

{{ i.sede }} · {{ i.st }}{{ i.dur }}{{ i.id }} · desde {{ i.start }} · {{ i.cause }}

Consumo de ancho de banda · {{ portal.bwSede }}

Plan 30 Mb/s · pico {{ bw.peakOut }} Mb/s ({{ bw.usePeak }})

Serie de ejemplo (captura del portal INTER). Cada cliente verá sus circuitos cuando INTER habilite el acceso autorizado.

Mis solicitudes

{{ t.num }} {{ t.failure }}{{ t.sede }} · {{ t.age }}{{ t.st }}

Sin solicitudes.

Reportar una falla
Crea un ticket con origen «Portal cliente» que aparece en Gestión de Tickets.

Generado {{ portal.generated }} · NOC-MONITOR · BytePlus, C.A. · Datos de prueba

Traspaso de turno

{{ ho.shift }} · el receptor confirma desde su app o desde aquí

{{ ho.opened }}Abiertos en el turno
{{ ho.closed }}Resueltos en el turno
{{ ho.open }}Quedan abiertos
{{ ho.unas }}Sin asignar
{{ ho.tk }}Tickets pendientes

Quedan abiertos

Nada pendiente. Toda la red responde.

{{ i.id }} {{ i.nodeCode }}
{{ i.client }} · {{ i.causeLabel }}
{{ i.stLabel }}
{{ i.opLabel }}
{{ i.durShort }}
Resumen redactado por Hermes

{{ ho.summary }}

Entregar el turno

Entregar a
Antes de entregar

Historial de traspasos

FechaEntregaRecibeAbiertosNotasEstado
{{ x.time }}{{ x.from }}{{ x.to }}{{ x.open }}{{ x.note }}{{ x.status }}

Notificaciones

Qué recibe cada usuario y por qué canal · cada usuario también lo ajusta desde la app móvil

UsuarioGuardia{{ c }}Silencio
{{ u.name }}
{{ u.role }}
{{ u.shift }}

Reglas globales

Las caídas siempre suenanIgnoran el silencio del usuario y el modo No molestar del teléfono
Avisar al supervisor si nadie toma un incidente enEscalación automática por falta de asignación
Enviar el reporte ejecutivo diario por correo a gerencia (07:00)Requiere SMTP, que está pendiente de integrar
Solo notificar en horario de guardiaFuera de su turno el usuario ve las alertas en la app, sin push

{{ existingLabel }}

Pantalla existente en el código actual — no se recreó en este prototipo.
Este prototipo cubre Dashboard, Mapa y los módulos nuevos.
NOC-MONITOR Muro de operaciones En vivo {{ wallTag.text }}
Disponibilidad
{{ avail }}
{{ dateLong }}
{{ clockFull }}
{{ l.label }}
{{ c.count }}{{ c.short }}
{{ selNodeV.code }}
{{ selNodeV.name }} · {{ selNodeV.client }} {{ selNodeV.label }}
Latencia{{ selNodeV.lat }}Pérdida{{ selNodeV.loss }}Uptime{{ selNodeV.up }}

{{ dlgTitle }}

{{ toast }}