App Mobile (PWA)
Progressive Web App con cache IndexedDB, azioni in sospeso, indicatore di connessione e pulsante di azione flottante.
Cos'e la PWA
Rela AI e disponibile come Progressive Web App (PWA), che permette di installare l'applicazione su dispositivi mobili senza passare da un app store. La PWA offre un'esperienza nativa con supporto offline parziale.
Installare la PWA
| Piattaforma | Istruzioni |
|---|---|
| Android | Apri Chrome > Menu > "Aggiungi alla schermata Home" |
| iOS | Apri Safari > Condividi > "Aggiungi alla schermata Home" |
| Desktop | Chrome mostra un'icona di installazione nella barra degli indirizzi |
Cache con IndexedDB
La PWA utilizza IndexedDB per archiviare i dati localmente e consentire query veloci anche con connessione lenta:
| Dati nella cache | Dim. appross. | Aggiornamento |
|---|---|---|
| Asset | Lista completa del tenant | Ogni 15 min |
| Attivita assegnate | Attivita dell'utente corrente | Ogni 5 min |
| Piani attivi | Piani di manutenzione abilitati | Ogni 30 min |
| Checklist | Checklist delle attivita aperte | Ogni 5 min |
| Profilo e config | Dati utente e preferenze | Al login |
La cache viene invalidata automaticamente quando il server segnala modifiche tramite
l'header X-Data-Version. Lo spazio di archiviazione totale e limitato a 50 MB.
Strategia di cache
1. Richiesta al server (network-first)
2. Se fallisce → servire da IndexedDB (fallback)
3. Se non c'e cache → mostrare schermata offlineAzioni in sospeso
Quando il dispositivo e offline, le azioni dell'utente vengono salvate in una coda di azioni in sospeso e sincronizzate automaticamente al ripristino della connessione.
| Azione supportata offline | Priorita di sync |
|---|---|
| Completare attivita | Alta |
| Spuntare item della checklist | Alta |
| Aggiungere commento | Media |
| Caricare foto (fino a 5 MB) | Bassa |
| Creare attivita rapida | Media |
La coda delle azioni in sospeso viene mostrata in Menu > In sospeso con lo stato di ogni azione:
- In coda — In attesa della connessione
- Sincronizzazione — Invio al server
- Errore — Sincronizzazione fallita (nuovo tentativo automatico)
Indicatore di connessione
La barra superiore mostra lo stato della connessione in tempo reale:
| Stato | Indicatore | Comportamento |
|---|---|---|
| Online | Barra verde (nascosta dopo 3s) | Operazione normale |
| Offline | Barra rossa permanente | Modalita offline attiva |
| Riconnessione | Barra gialla pulsante | Tentativo di riconnessione |
| Sincronizzazione | Barra blu con progresso | Invio azioni in sospeso |
Il sistema rileva la connettivita usando navigator.onLine combinato con un
ping periodico all'endpoint /api/v1/health ogni 30 secondi.
Pulsante di azione flottante (FAB)
Il FAB (Floating Action Button) appare nell'angolo in basso a destra e fornisce accesso rapido alle azioni piu frequenti:
| Azione | Icona | Descrizione |
|---|---|---|
| Nuova attivita | + | Crea un'attivita rapida |
| Scansiona QR | Fotocamera | Scansiona il codice QR di un asset |
| Report rapido | Documento | Registra un'incidenza |
| Foto | Fotocamera | Scatta una foto e associala a un'attivita |
Il FAB si espande al tocco mostrando le sotto-azioni. Si contrae automaticamente scorrendo verso il basso per non ostruire la lettura.
Notifiche push
La PWA supporta le notifiche push tramite il Service Worker:
- Attivita assegnate all'utente
- Allarmi critici degli asset monitorati
- Promemoria per i piani di manutenzione imminenti
L'utente puo configurare quali notifiche ricevere da Profilo > Notifiche.
Registro di Audit
Log immutabile delle azioni per conformità normativa e tracciabilità.
Panificio italiano — flotta di camere di lievitazione (Modbus TCP + VPN)
Un panificio industriale italiano collega 3 camere di lievitazione Carel pCO5+ a Rela AI con un solo tunnel VPN. Setup completo, mappatura Modbus reale, alert WhatsApp in pochi minuti.