Manual de Funcionamiento & Flujos del Sistema
Representación interactiva y secuencial de cómo viajan los datos entre el CRM, la OLT de fibra, los microservicios locales y el servidor de telemetría TR-069.
🔍 1. Flujo de Consulta 360° de Suscriptor
Cuando un operador o suscriptor consulta un abonado (ej: 625036) en el portal web:
Operador / Suscriptor
Ingresa Cédula, Nombre, Celular o Abonado en la barra de búsqueda.
CustomerController (PHP)
Consulta la API de Zelty CRM y extrae información comercial, planes, SmartOLT ID y facturación.
Iframe DCM (/dcm/?owner_id=...)
Carga el archivo digital y facturas filtradas para el suscriptor en 127.0.0.1:4000.
Iframe ACS (/acs/?serial=...)
Consulta el estado del módem y WiFi en tiempo real a través de TR-069 en 127.0.0.1:5000.
Unificación de Datos en Pantalla
El controlador renderiza la vista dashboard.blade.php con el menú de navegación de dos pestañas, cargando en segundo plano los iframes autenticados de forma reactiva.
📂 2. Ciclo de Vida de Indexación y Archivo (DCM)
El motor DCM mantiene sincronizadas las carpetas físicas de facturas y contratos con la base de datos de búsqueda instantánea:
Almacenamiento Físico del Servidor
Los sistemas de facturación guardan PDFs en /cableexito/documentosdigitales y /infobox/documentosdigitales.
Watchdog Observer (Python)
Captura eventos de creación y modificación en el sistema de archivos Linux sin sobrecargar la CPU.
indexer.py (Motor de Extracción)
Extrae Abonado, Tipo Documental (Factura, Contrato, Orden), Empresa, Año y Mes mediante expresiones regulares.
SQLite 3 WAL (facturas_index.db)
Ejecuta inserción indexada (Upsert) con control de mtime para búsquedas instantáneas en menos de 5ms.
📶 3. Ciclo de Vida TR-069 & Gestión WiFi (ACS)
La gestión remota de routers opera bajo un protocolo de verificación de aprovisionamiento estricto:
lookupBySerial(serial)
El iframe consulta al ProxyController en /acs/api/device/lookup hacia GenieACS (Puerto 5502).
PANTALLA 1: Telemetría Activa
Se despliega potencia óptica RX (dBm), latencia WAN, temperatura, conteo de dispositivos, formulario de cambio de clave WiFi y reinicio.
PANTALLA 2: Tarjeta Informativa
Se oculta mainDashboard y se muestra la tarjeta de módem no aprovisionado: Enlace óptico activo en SmartOLT, CWMP pendiente.
🛡️ 4. Matriz de Respuestas & Control de Errores
| Escenario | Comportamiento del Sistema | Vista Presentada al Usuario |
|---|---|---|
| Módem en Línea en TR-069 | Consulta parámetros en GenieACS con éxito (HTTP 200). | Pantalla 1 (Métricas en tiempo real + WiFi). |
| ONU no Aprovisionada / No encontrada | GenieACS responde 404. El frontend oculta mainDashboard. | Pantalla 2 (Tarjeta de Módem no Aprovisionado). |
| Timeout o Corte de Red hacia IoACS | El proxy captura la excepción y protege la vista. | Pantalla 2 (Tarjeta con estado de red). |
| Factura no Encontrada en Disco | DCM retorna lista vacía de documentos. | Mensaje descriptivo: "Sin documentos para este período". |