📦 Docker Hub Multi-Arch, Sincronizzazione AdGuard Home & Ottimizzazioni Mesh (#12)
- 📡 Risoluzione Universale Nodi e Client Mesh (Issue #12):
- Introdotto motore di indicizzazione multi-chiave in
poller.pyeeero_client.py(idnumerico,serial,url,location/nome,ip) per garantire il matching affidabile dei client connessi su tutte le generazioni eero (eero Pro 7, Pro 6E, eero 6+, Max 7) e versioni eeroOS 7.x. - Risolto il bug per cui i dispositivi su nodi beacon potevano risultare tutti associati al Gateway in presenza di payload cloud privi del campo
location.
- Introdotto motore di indicizzazione multi-chiave in
- ✨ Switch Istantaneo Modalità Demo / Rete Live (senza perdita di Token):
- Aggiunto pulsante interattivo nella barra superiore per passare istantaneamente alla Modalità Demo a scopo di test/anteprima e ritornare alla Rete Live preservando sempre il token di sessione autenticato senza dover reinserire l'OTP.
- 🌡️ Armonizzazione Stato Termico Nodi:
- Ottimizzato il rendering dello stato termico e operativo dei nodi mesh, riflettendo accuratamente lo stato di salute reale fornito dalle API ufficiali eero (
thermal_status: Normale / Nominale).
- Ottimizzato il rendering dello stato termico e operativo dei nodi mesh, riflettendo accuratamente lo stato di salute reale fornito dalle API ufficiali eero (
- ⚡ Velocità Negoziata Ethernet Dispositivi & Backhaul Mesh:
- Rimosso il testo fisso
'GbE 1.0 Gbps'. Ora il sistema rileva e mostra dinamicamente la reale velocità di link per apparati cablati a 10 Gbps, 5.0 Gbps, 2.5 Gbps, 1.0 Gbps e 100 Mbps. - Ispezione automatica delle porte ethernet fisiche (
ports/ethernet_ports) dei nodi eero per rilevare e mostrare la velocità di backhaul cablato.
- Rimosso il testo fisso
- 👤 Sincronizzazione Profilo Famiglia / Utente Cloud eero:
- Visualizzazione e filtro in tempo reale dell'assegnazione profilo utente eero sia nella tabella principale che nel modale dettaglio client.
- 📶 Telemetria Segnale RSSI (dBm) & PHY Link Rate nel Modale:
- Integrata la visualizzazione avanzata della qualità del segnale in dBm e della velocità di modulazione PHY nel riquadro di connessione del modale.
- 🌍 Rimozione Residui di Testo e Localizzazione Completa:
- Localizzati integralmente in inglese e italiano tutti i messaggi di verifica conflitti IP statici, avvisi e notifiche Toast.
- Distribuzione Ufficiale Docker Hub Multi-Arch:
- Configurato workflow GitHub Actions per la compilazione e il push automatico su Docker Hub (
enricoflammini/eero-dashboard). - Supporto nativo alle architetture
linux/amd64(Server x86, PC, VM) elinux/arm64(Raspberry Pi 4/5, NAS Synology/QNAP/TrueNAS, Apple Silicon). - Avvio immediato a riga di comando senza compilazione locale tramite
docker runodocker compose pull.
- Configurato workflow GitHub Actions per la compilazione e il push automatico su Docker Hub (
- Integrazione Nativa AdGuard Home in-App:
- Nuova scheda visuale dedicata nel tab Automazioni & Controlli per configurare la connessione verso AdGuard Home (URL, Username, Password).
- Normalizzazione automatica degli URL locali (pulizia frammenti
#, supporto HTTP e fallback SSL/TLS per certificati self-signed). - Pulsante "Test Connessione" con riscontro immediato via Toast e verifica delle credenziali.
- Pulsante "Sincronizza Ora Tutti i Client" con matching intelligente per nome, MAC e IP (
/control/clients/adde/control/clients/update). - Toggle "Abilita sincronizzazione automatica continua" per sincronizzare silenziosamente in background all'accesso di nuovi dispositivi e su base periodica.
- 🔒 Pulsante Disconnessione con Modale di Sicurezza:
- Ripristinato il pulsante di logout nella barra superiore accanto alla guida rapida.
- Introdotto un modale di conferma Glassmorphism con avviso esplicito sulla necessità di richiedere un nuovo codice 2FA OTP al successivo accesso.
- 📊 Fix & Arricchimento Daily Digest Telegram:
- Risolto l'errore di generazione del report giornaliero delle 21:00 (e manuale da interfaccia) causato da riferimenti a tabelle storiche obsolete.
- Il report inviato su Telegram e via Webhook include ora dati reali certificati: Health Score, ISP, nodi mesh online, client attivi totali, suddivisione dettagliata per frequenza (6GHz, 5GHz, 2.4GHz, Cablati), Speed Test Gateway e Latenza Ping.
- Introdotto un toggle esplicito "Abilita invio automatico programmato (ore 21:00)" per consentire all'utente di disattivare la schedulazione del digest mantenendo disponibile l'invio istantaneo on-demand.
- 🎛️ Riorganizzazione Scheda Automazioni & Toggle Notifiche Telegram:
- Layout del tab Controlli & QR Ospiti riorganizzato a matrice 2x2: Guest Wi-Fi (alto-sx), Integrazione AdGuard Home (alto-dx), Notifiche Telegram & Webhook (basso-sx) e Report Digest Giornaliero (basso-dx).
- Introdotto un toggle esplicito "Abilita invio notifiche su Telegram" per attivare/disattivare rapidamente gli avvisi automatici senza cancellare token o chat ID salvati.
- 🛡️ Registro Persistente Dispositivi Noti (Zero Notifiche Duplicate al Riavvio):
- Creata la tabella SQLite
known_devicesper memorizzare in modo permanente gli indirizzi MAC e lo stato di notifica dei client di rete. - Al riavvio o all'aggiornamento del server/container, il poller carica l'elenco completo dal database, evitando l'invio ripetuto di notifiche Telegram per apparati già noti.
- Creata la tabella SQLite
- 📖 Rendering Ottimizzato del Manuale Utente & Changelog In-App Bilingue:
- Riscritto il parser Markdown interno (
renderSimpleMarkdown) con supporto completo a liste numerate ordinate (<ol>), sottoelenchi puntati indentati (<ul>), collegamenti ipertestuali e formattazione dei paragrafi. - Il visualizzatore del Changelog interno all'app è ora bilingue (Italiano e Inglese) e presenta un sommario essenziale dei soli titoli principali delle release, con link diretto per consultare il registro completo su GitHub.
- Riscritto il parser Markdown interno (
- ❤️ Modale About, Dedica & Informazioni Open Source:
- Aggiunto pulsante dedicato "About" nella barra superiore accanto al badge di versione.
- Include dedica alla community homelab & self-hosted (Crafted with ❤️ by Enrico Flammini), collegamenti rapidi a repository GitHub (codice e issues), licenza MIT, immagine Docker Hub e sezione Fun Notes.
- 🔀 Ordinamento Dispositivi & Barra dei Titoli Bloccata (Sticky Header):
- Introdotta la possibilità di ordinare la tabella dei dispositivi cliccando direttamente su ciascuna intestazione di colonna (Dispositivo/Host, Indirizzo IP numerico IPv4, Profilo, Nodo Mesh, Banda, Segnale RSSI e Stato).
- La barra dei titoli della tabella rimane ora bloccata in alto (
sticky) durante lo scorrimento, garantendo visibilità e orientamento costante anche con centinaia di client connessi.
- ⚙️ Normalizzazione Dinamica Dispositivi & Gestione Flessibile Nodi/Sensori:
- Risolto il bug di parsing dei dispositivi che poteva impedire la visualizzazione dei client connessi con determinati payload eero Cloud.
- Reso pienamente dinamico il rendering dei client e dei conteggi (1, 2, N client o stato vuoto dedicato) con fallback automatico tra endpoint
/devicese dettagli di rete. - I campi e i sensori hardware (es. backhaul su gateway standalone, temperature o firmware) vengono ora mostrati solo se effettivamente disponibili sulla versione hardware in uso.
- Revisionate e completate al 100% tutte le etichette, placeholder e notifiche Toast in lingua inglese e italiana.
- Esportazione DNS & Webhooks:
- Endpoint
GET /api/devices/export/hosts(standard/etc/hosts/dnsmasq) eGET /api/devices/export/adguard(JSON provisioning). - Script standalone CLI
scripts/adguard_sync.py. - Specifiche formali e schemi JSON dei payload Webhook nel
README.md.
- Endpoint