# Estado del Proyecto - TotalConnect 2.0 **Última actualización:** 2026-08-02 **Versión actual:** v06.08.02 --- ## 📌 Resumen del Estado Actual El proyecto **TotalConnect 2.0** es un panel web centralizado de alto rendimiento para el monitoreo de alarmas Honeywell / Resideo Total Connect 2.0. ### 🛠️ Características Principales e Infraestructura 1. **Motor Híbrido Dinámico de Monitoreo (`index.py`)**: - **Grupo 0**: Prioridad absoluta para sucursales con alarmas activas, eventos SOAP pendientes y sucursales desarmadas bajo el modo *"Desarmadas revisión constante"*. - **Control de Protección por Límite**: Si el número de sucursales desarmadas supera la variable `max_disarmed_count` configurada en `credentials.json`, la función se deshabilita automáticamente para evitar cuellos de botella y *rate-limiting*. - **Esquema 2:1 (SOAP + REST)**: 2 consultas ligeras vía SOAP por 1 consulta completa por REST para evitar el *rate-limiting* de Honeywell (máximo 35 consultas REST por ciclo). - **Resiliencia de Sesión**: Purgado automático de tokens SOAP obsoletos y auto-recuperación ante errores de red (`ConnectionResetError`). 2. **Dashboard Web e Interfaz en Tiempo Real**: - **Switch "Desarmadas revisión constante"**: Control checkbox interactivo en la cabecera del dashboard con sincronización en vivo. - **Tooltips Flotantes Explicativos**: Ventanas emergentes al pasar el cursor (`mouseover`) sobre los controles de la cabecera (*Cuentas*, *Desarmadas revisión constante* y *Polling: Activo*), detallando sus funciones y parámetros técnicos. - **Formato Compacto de Fecha/Hora**: Fecha de última actualización optimizada con días/meses abreviados a 3 letras, sin año y hora en formato de 24 horas (ej. `dom, 2 ago - 02:36:18`). - **Badge de Escaneo en Vivo**: Muestra en tiempo real la sucursal actual en proceso de carga/sondeo (`Cargando sucursal: 6001`). - **Visor de Bitácora Interactiva**: Modal visual en vivo para consultar las últimas 150 líneas del archivo de log (`activity.log`). - **Hard Reset**: Mecanismo de purga de caché y reinicio por clic prolongado (3s) en el botón de actualización. - **Kill-Switch / Polling Toggle**: Control de inicio/pausa de sondeo en segundo plano con *Circuit Breaker* ante errores `401`/`429`. 3. **Portabilidad y Parámetros**: - Persistencia de `monitor_disarmed_enabled` y `max_disarmed_count` en `credentials.json`. - Eliminación de rutas absolutas en duro (`Z:\`, `E:\`), operando de manera 100% relativa a la ruta de ejecución actual. - Binario autónomo `totalconnect.exe` para Windows y soporte para servicio Systemd en Linux. --- ## 🏷️ Historial de Tags / Versiones * **`v06.08.02`**: Implementado switch "Desarmadas revisión constante" en UI con tooltip explicativo, persistencia en `credentials.json`, endpoint `/toggle-disarmed-monitor` y autodesactivación por límite `max_disarmed_count`. * **`v06.08.01`**: Prioridad en Grupo 0 para alarmas y eventos SOAP, indicador de escaneo en vivo en UI, eliminación de rutas absolutas en duro. --- ## 📋 Tareas Pendientes / Próximos Pasos - [ ] Monitorear estabilidad del motor híbrido y la función de desarmadas en producción tras despliegue de `v06.08.02`. - [ ] Validar rendimiento en entornos con elevado número de cuentas Total Connect.