Configuración Avanzada y Mantenimiento

Este módulo concentra las herramientas de gestión interna de la base de datos, licencias y la automatización de tareas.


⚠️ Zona de Riesgo: Algunas opciones en este panel modifican la estructura interna del sistema. Se recomienda que solo el personal de Soporte Técnico o un Administrador experimentado manipulen los botones de "Forzar DB" y "Crear RFID".

1. Herramientas de Sistema y Respaldo

Botones de acción rápida para el mantenimiento de la aplicación.

Activación
Panel de Gestión de Usuarios

Muestra el estado actual de tu licencia. Al hacer clic, verás la "Huella del equipo" y la fecha de validación.

Copia y Restauración
Panel de Gestión de Usuarios

Copia: Genera un archivo .sql con toda la información de tus clientes y pagos. Es vital realizar esto periódicamente para que soporte técnico pueda ayudarte en caso de fallo del PC.

Nota sobre Soporte Técnico: Los botones "Forzar DB" y "Crear RFID" están reservados para reparaciones profundas y solo deben usarse bajo instrucción directa del proveedor del software.

2. Credenciales de Base de Datos

Panel de Gestión de Usuarios

Configuración de la conexión con MySQL. Generalmente, estos datos no deben cambiarse a menos que se migre el servidor.


3. Configuración de Cortes Automáticos

Panel de Configuración de Cortes
Permiso Requerido: Cualquier cambio en los días u horas de corte debe realizarse ejecutando el sistema como Administrador. De lo contrario, Windows bloqueará la actualización del archivo de configuración.

Requisito Vital: Equipo Encendido

El "Robot de Suspensión" reside dentro de este programa en su computadora, NO en el router ni en la nube.


Para que el corte se ejecute, es OBLIGATORIO que:
1. Esta computadora esté ENCENDIDA.
2. El sistema iWISP esté ABIERTO.
3. Exista conexión de red activa con el equipo MikroTik.

Ejemplo: Si programa el corte a las 23:40 pero apaga la computadora a las 22:00, el corte no sucederá.

A continuación, explicamos la lógica interna del sistema y cómo configurarlo correctamente para automatizar su cobranza.

Lógica Interna: ¿Cómo decide el sistema a quién cortar?

El código interno (Java) sigue un proceso estricto de validación para evitar errores. Este es el flujo exacto que ocurre en segundo plano:

  • 1. Activación del Cronómetro: El sistema lee el archivo de configuración interno. Si activo = true, el sistema "despierta" cada minuto para consultar la hora.
  • 2. Validación de Fecha y Hora: El código compara la fecha actual con los "Días a correr" configurados (ej. 15 y 30).
    Lógica del código: Si (Hoy == dia1 OR Hoy == dia2) Y (HoraActual == HoraConfigurada ± 2 min) -> Proceder.
  • 3. Consulta de Morosos (SQL): Si la fecha coincide, el sistema conecta con la Base de Datos y busca clientes que cumplan dos condiciones:
    • Que su fecha de proximo_pago sea anterior a hoy.
    • O que el cálculo de meses adeudados sea mayor o igual a 1.
  • 4. Ejecución en MikroTik: Por cada moroso encontrado, el sistema envía una orden directa al router para agregarlo a la Address-List "corte".

Requisitos en MikroTik (Firewall)

Para que el bloqueo sea efectivo, el router debe estar preparado para recibir las órdenes del sistema. El software inserta a los clientes en una lista, pero usted debe tener las reglas que bloqueen esa lista.

Configuración de Prioridades: Las reglas de bloqueo (DROP) deben estar en las posiciones 2 y 3 de su Firewall Filter Rules.

¿Por qué en estas posiciones?

[0] accept chain=input protocol=icmp
[1] accept chain=forward connection-state=established,related
[2] drop chain=forward src-address-list=corte  <-- REGLA CRÍTICA (Prioridad Alta)
[3] drop chain=forward dst-address-list=corte
... resto de sus reglas ...

Guía de Parámetros de Configuración

Campo Descripción y Recomendación
Hora de inicio Hora formato 24h (HH:mm).
Recomendación: Programe una hora en la que se asegure que la PC estará encendida (ej. 10:00 AM) o déjela en la noche (ej. 23:40) solo si tiene un servidor dedicado 24/7.
Día a correr #1 Día calendario del primer corte mensual.
Ejemplo: 15.
Día a correr #2 Día calendario del segundo corte mensual.
Ejemplo: 30 (El sistema entiende Febrero como día 28/29 automáticamente).
¿Ejecutar Cortes? Interruptor maestro de seguridad:
True: El robot actuará automáticamente.
False: El robot ignorará las fechas y horas (modo manual).
Para aplicar cambios: Verifique estar en modo Administrador, modifique los valores y haga clic en CONFIGURAR.