PWA offline-first
Comment l’évaluation numérique fonctionne sans réseau et comment elle se synchronise au retour de la connexion.
De quoi s’agit-il ?
L’évaluation numérique est une PWA (Progressive Web App) offline-first. Concrètement :
- Elle s’ouvre comme une page web normale (ce n’est pas une application à installer depuis une boutique d’applications).
- Une fois ouverte, elle fonctionne même si vous perdez la connexion.
- Au retour de la connexion, elle synchronise automatiquement les données avec le serveur.
Pourquoi c’est important
L’atelier du chocolatier n’a pas toujours une bonne connexion : chambres froides aux murs épais, sous-sols, cuisines professionnelles au Wi-Fi limité. Un outil qui plante à la moindre coupure de réseau est inutilisable en pratique.
Comment ça marche
Première ouverture (avec réseau)
- Le panéliste ouvre le lien unique. La PWA se télécharge et reste en cache dans son navigateur.
- Les données de base de la dégustation (échantillons, protocole, descripteurs) sont également téléchargées.
- À partir de là, le panéliste peut travailler même si la connexion est coupée. Une fois la dégustation enregistrée sur le téléphone, l’écran d’accueil l’indique avec le message Vous pouvez déguster hors connexion.
Pendant l’évaluation (avec ou sans réseau)
- Chaque échantillon est enregistré lorsque vous touchez Enregistrer et revenir à la sélection. S’il y a du réseau, il est envoyé au serveur sur-le-champ.
- S’il n’y a pas de réseau, l’échantillon reste enregistré sur l’appareil (IndexedDB) et part tout seul dès le retour de la connexion ; tant qu’il reste des enregistrements en attente, l’application réessaie toutes les 30 secondes.
- Si le panéliste ouvre la fiche hors connexion et que le téléphone a une copie de la dégustation, il voit le message « Hors connexion : vous dégustez avec la copie enregistrée sur ce téléphone. Vos notes seront envoyées automatiquement dès le retour du réseau. »
Après l’envoi
- Le panéliste envoie l’évaluation avec Confirmer et envoyer : pour le profil descriptif et les épreuves notées échantillon par échantillon, ce bouton se trouve sur l’écran de vérification (auquel on accède avec Vérifier et envoyer) ; dans les épreuves triangulaire, de comparaison par paires, duo-trio et de classement, il se trouve sur la fiche elle-même et l’envoi se confirme ensuite avec Envoyer définitivement. S’il n’y a pas de réseau à ce moment-là, l’écran final affiche En attente d’envoi : l’évaluation est enregistrée sur le téléphone.
- Dès que l’appareil retrouve du réseau, l’évaluation est transférée au serveur et apparaît comme terminée dans le détail de la dégustation de l’animateur.
Indicateur d’état
Sous l’en-tête, le panéliste voit une petite pastille qui indique l’état de l’enregistrement et de la synchronisation. Lorsque tout est à jour et que la connexion est disponible, la pastille disparaît. Les états possibles sont :
- Enregistrement… : la modification est en cours d’enregistrement sur l’appareil.
- Synchronisation… / Synchronisation de N éléments en attente… : les modifications sont en cours d’envoi au serveur.
- Hors connexion : pas de réseau et rien en attente d’envoi.
- Hors connexion · N enregistrés en local : pas de réseau, avec des modifications enregistrées sur l’appareil en attente de transfert.
- Erreur de synchronisation : le transfert a échoué ; réessayez lorsque vous aurez un réseau stable.
Il n’existe pas d’état intitulé « Enregistré » : lorsque la connexion est disponible et que rien n’est en attente, la pastille disparaît tout simplement.
Que se passe-t-il si je ferme le navigateur ?
- Les données sont enregistrées en local. En rouvrant le lien sur le même appareil et dans le même navigateur, vous retrouvez l’évaluation en cours.
- Si vous changez d’appareil avant la synchronisation, les données du premier appareil y resteront jusqu’à ce que vous le rouvriez. Si vous ouvrez le lien hors connexion sur un appareil qui n’en a pas de copie, vous verrez « Hors connexion, et ce téléphone n’a pas de copie de cette dégustation… ». Pour éviter toute perte de données : terminez l’évaluation sur l’appareil sur lequel vous l’avez commencée et assurez-vous d’avoir du réseau à la fin pour synchroniser.
Limites, en toute transparence
- La première ouverture nécessite une connexion pour télécharger la PWA et les données de la dégustation.
- La synchronisation avec le serveur nécessite une connexion (l’application ne fait pas de télépathie).
- Si vous fermez le navigateur, vous perdez la session et le cookie, mais les données restent dans IndexedDB jusqu’à ce que vous rouvriez le même lien.
Consentement aux données
Ce que voit le panéliste en ouvrant le lien lorsque l’étape de consentement est activée : politique de confidentialité et case à cocher obligatoire avant de commencer.
Guide de l’évaluateur
Comment un panéliste répond à une dégustation depuis son téléphone : ouvrir le lien, sélectionner l’échantillon par code ou QR code, remplir la fiche et l’envoyer.