# OnEver Drive — Manual del Agente Windows (PyQt6 & System Tray) ## 1. Visión General El **Agente de Windows de OnEver Drive** es una aplicación de escritorio nativa moderna desarrollada en **PyQt6**, empaquetada como ejecutable `.exe` y diseñada para ejecutarse silenciosamente en el **Área de Notificaciones (System Tray)** de Windows con interfaz gráfica completa para: 1. **Apuntar y conectar con el servidor central de backup** (URL del servidor + Código de registro con test de latencia). 2. **Elegir carpetas de backup locales visualmente** mediante el explorador de Windows (`QFileDialog`), estableciendo filtros (`*.bak`, `*.mdf`), frecuencia y estabilidad de archivos. 3. **Monitorear transferencias por bloques (chunks de 4 MB)** en tiempo real con barras de progreso, cálculo de hash SHA-256 y notificaciones nativas de Windows. --- ## 2. Interfaz Gráfica PyQt6 ```text ┌────────────────────────────────────────────────────────────────────────┐ │ OnEver Drive — Agente de Backup Windows ● Conectado │ ├────────────────────────────────────────────────────────────────────────┤ │ [Dashboard] [Carpetas de Backup] [Servidor & Config] [Historial] │ ├────────────────────────────────────────────────────────────────────────┤ │ │ │ Transferencia en Vivo (Motor de Chunks) │ │ Subiendo database_production.bak... │ │ [████████████████████████████░░░░░░░░] 68.4% (17 / 25 Chunks) │ │ Chunks: 17/25 | Velocidad: 42.1 MB/s | SHA-256: e3b0c44298fc... │ │ │ │ Información del Dispositivo │ │ • Cliente ID: CLIENT-0001 (Servidor SQL Producción) │ │ • Servidor Proxmox: https://backup.midominio.com │ │ • Carpetas en Monitoreo: 3 carpetas locales │ │ │ │ [ ▶ Iniciar Sincronización Manual Ahora ] │ └────────────────────────────────────────────────────────────────────────┘ ``` --- ## 3. Pestañas y Funcionalidades ### 📁 Pestaña 1: Carpetas de Backup (Selector Visual) Permite gestionar las carpetas de Windows que el agente respaldará automáticamente: - **Añadir Carpeta...**: Abre el selector visual de Windows para elegir la carpeta deseada (ej. `C:\SQLBackups`, `D:\DatosEmpresa`). - **Configuración de la Carpeta**: - **Filtros de Archivo**: `*.bak,*.mdf` (o `*.*`). - **Frecuencia de Sondeo**: Intervalo en minutos (ej. cada 60 min). - **Estabilidad de Archivo (Locks)**: Ventana de seguridad en segundos (ej. 60s) para garantizar que SQL Server finalizó el volcado antes de iniciar la transferencia por bloques. - **Respaldar / Eliminar**: Botones dedicados para iniciar un respaldo inmediato de la carpeta o eliminarla del monitoreo. ### 🌐 Pestaña 2: Servidor & Configuración - **URL Servidor**: Ingrese la dirección del servidor Proxmox VE (ej. `http://192.168.1.100:8000` o `https://backup.midominio.com`). - **Probar Conexión**: Comprueba la conectividad de red con el backend y muestra la latencia en milisegundos. - **Código de Registro**: Ingrese el código de un solo uso generado en el Dashboard Web (`OED-XXXX-XXXX`). - **Registrar Dispositivo**: Vincula criptográficamente la máquina Windows generando un `Device ID` y token secreto único. - **Preferencias de Notificaciones (No Invasivas)**: - `[x] Habilitar notificaciones en el Área de Notificaciones (System Tray)` - `[x] Notificar únicamente cuando INICIA un proceso de respaldo` - `[x] Notificar únicamente cuando FINALIZA con éxito (Confirmación SHA-256)` - `[x] Notificar en caso de error o pérdida de conexión` *(Las actualizaciones de progreso intermedias se visualizan de manera silenciosa en la barra de la interfaz sin emitir globos emergentes).* ### 📊 Pestaña 3: Dashboard & Telemetría - Medidor en tiempo real del progreso de subida por bloques. - Notificaciones de confirmación de integridad SHA-256 tras cada ensamblado. ### 📜 Pestaña 4: Historial de Archivos - Registro histórico de todos los archivos respaldados localmente con su tamaño, fecha y checksum SHA-256. --- ## 4. Ejecutables Disponibles Los ejecutables listos para su distribución se ubican en: - **Standalone Portable (Un solo archivo):** [`windows-agent/dist/OnEverDriveAgent-Standalone.exe`](file:///c:/Workspaces/onever_drive/windows-agent/dist/OnEverDriveAgent-Standalone.exe) - **Carpeta de Distribución:** [`windows-agent/dist/OnEverDriveAgent/OnEverDriveAgent.exe`](file:///c:/Workspaces/onever_drive/windows-agent/dist/OnEverDriveAgent/OnEverDriveAgent.exe) - **Lanzador rápido con doble clic:** [`windows-agent/start_tray_agent.bat`](file:///c:/Workspaces/onever_drive/windows-agent/start_tray_agent.bat) --- ## 5. Comportamiento en la Bandeja del Sistema (System Tray) - Al cerrar la ventana principal (botón `X`), la aplicación se **minimiza al área de notificaciones** junto al reloj sin interrumpir las transferencias programadas. - Al hacer **doble clic** o clic derecho en el icono de OnEver Drive en el System Tray, se abre instantáneamente el panel de control.