Mode hors ligne
Ce que le mode hors ligne permet, ce qu'il garde en local et ce qui reste en ligne.
Mode hors ligne
Syrcow inclut un mode hors ligne qui vise les opérations réellement utiles en déplacement. Il ne remplace pas le serveur: il permet de continuer à travailler quand le réseau n'est pas fiable.
Schéma du flux de synchronisation
Appareil hors ligne Serveur
┌─────────────────┐ ┌──────────────┐
│ Saisie terrain │ │ │
│ ↓ │ ┌─────┐ │ API REST │
│ File locale │──→│ Sync│──→│ POST /tx │
│ (pending) │ └─────┘ │ │
│ ↓ │ │ Base de │
│ Cache lisible │ ┌─────┐ │ données │
│ (lecture seule) │←──│ Sync│←──│ │
│ │ └─────┘ └──────────────┘
└─────────────────┘
↕ réseau 31 jours max ↕ validation
La file locale conserve les actions jusqu'à 31 jours. Passé ce délai, les actions expirées sont purgées sans être envoyées.
Ce qui est stocké localement
- un cache de ressources applicatives
- une file locale d'actions dans le navigateur
- des actions avec durée de rétention de 31 jours
À quoi ça sert
- garder l'application utilisable même sans réseau;
- éviter de perdre une saisie faite sur le terrain;
- rejouer les actions quand la connexion revient;
- afficher un état compréhensible pour savoir ce qui est déjà parti ou non.
Opérations autorisées
- Vente externe (
outer_sale) - Vente client (
client_sale) - Entrée fournisseur (
approvisioning)
Ces opérations sont choisies parce qu'elles peuvent être préparées localement sans casser la logique globale du stock. L'utilisateur prépare donc l'opération, puis l'application l'envoie au serveur dès que la connexion revient.
Ce qui reste en ligne
- création d'utilisateur ou d'organisation
- opérations à forte criticité
- suppression de transactions synchronisées
- validation sensible d'actions administratives
Ce que voit l'utilisateur
Quand le mode hors ligne est actif, l'interface doit indiquer clairement:
- ce qui a été enregistré localement;
- ce qui attend encore l'envoi;
- ce qui a échoué;
- ce qui a déjà été confirmé par le serveur.
Synchronisation
Quand la connexion revient:
- la file locale est purgée des actions expirées (31 jours)
- les actions
pendingoufailedsont rejouées - les erreurs de serveur sont conservées pour diagnostic
Comment s'en servir correctement
- terminer la saisie même sans réseau;
- ne pas fermer l'application tant que l'action n'a pas été enregistrée localement;
- attendre le retour de l'état synchronisé;
- corriger les erreurs signalées avant de passer à l'étape suivante.
Message à retenir
Le mode hors ligne n'est pas un mode "tout est permis". Il sert à continuer l'activité sans perdre la traçabilité.
À lire ensuite
- Agents hors ligne — règles de synchro détaillées
- Gestion des transactions — types autorisés hors ligne
- Dépannage — résoudre un blocage de synchronisation