Nouveautés
Chaque modification publiée apparaît ici automatiquement : cette page est reconstruite à chaque mise en ligne. La version de l'application est 0.1.N, où N augmente à chaque publication.
2026-11-01
- Aide intégrée à jour en direct : FAQ et wiki complet dans l'application, relus sur le site quand il y a Internet
- Site réécrit (RÉSOTIK, 100 % compatible Smartrek, nos capteurs bientôt), wiki et FAQ automatiques, aide hors ligne dans l'application
- Une seule application RÉSOTIK (bêta 0.1.N) : version automatique, mise à jour intégrée, liaison au portail par QR
- Resotik Base : fournisseur affiché « Smartrek » seulement
- Resotik Base : réglage radio de la passerelle (canal 1 à 16, sauts, rythme économique à installation) avec garde-fous
- Resotik Base : ajout d'un capteur par code QR (type et adresse reconnus) et position GPS avec avertissement si faible
- Resotik Base 0.1.0 : nouvelle application de base (lecture seule), interface façon tableau de bord, APK unique 32/64 bits
- Décodage des mesures des capteurs Smartrek (paquet 0x26, champs par type) tiré du code de l'application d'origine
- Notes sur la liaison tablette-passerelle (Bluetooth série, trames, registres) pour la future application Resotik Base
- Fins de ligne LF forcées pour les scripts .sh
- Application Android Resotik Monitoring (APK unique 32 et 64 bits) et portail installable
2026-10-28
- Site: admin-only editing via portal super-admin + portal favicon
- Site: default to the light theme (visitor can still switch)
- Fold the site into the main stack so one ./deploy.sh deploys everything
- Add the marketing site (resotik.ca) as a deployable static container on port 8969
- Pricing: per-sensor-per-season tiers (ranges) with mid-season top-up
- Billing by sensor count: free trial, plan gating, and admin plan selector
- Rapports d'érablière par journée, semaine, mois, saison ou période libre (écran, PDF, Excel) ; couleurs de santé sur le vide, les bassins, la batterie et le signal ; correctif du tableau jour par jour
- Correctif : en affichage compact des différentiels, les bulles de valeur (ex. -27.27 inHg) débordaient de leurs cadres ; tuiles un peu plus larges et taille de la bulle adaptée à la largeur de la tuile
2026-10-27
- Statistiques par saison en graphiques à barres, liste « À corriger » et préparation de la saison 2027 ; nouveau favicon et titre du site
- Correctif : un bassin non étalonné (niveau vide à 0, sans plage) provoquait une division par zéro qui faisait échouer tout le cycle du worker (plus d'historique ni d'alarmes évaluées) et pouvait s'afficher plein à 100 % ou NaN % ; plus de pourcentage tant que la plage est nulle, côté serveur et affichage. Le worker isole désormais les erreurs : un capteur ou une alarme défaillante n'arrête plus l'historique ni les autres alarmes ; tests
- Rebrand to Resotik Monitoring, new basin widths, and split UI/API domains
- Replace brand logo with Resotik Monitoring
- Export daily/seasonal stats; click-to-activate maps; move sensor GPS card to bottom
- Per-basin gallonage on cards + richer statistics (daily, seasonal, recommendations)
- Full client profile at sign-up + editable, address autocomplete, sensor GPS synced to tablet
- Show renamed sensors/ports/channels instantly instead of 'En traitement'
- Let clients set each sensor's GPS position by hand or on a map
- Differentials: search, colour-band filter, sort modes and permanent manual order
- Add Analyses section to statistics (problem lines, freeze/warm, best hours, cumulative gallons)
- Collect érablière profile at sign-up and make it editable in settings
- Météo : la ville se configure dans Mon compte, plus dans les statistiques
- Alarmes groupées par type en sections
- Différentiels : vues multiples, couleur bien visible, alarme auto + cascade
2026-10-26
- Photo de la passerelle + presets de bassins H2O (rayons du diagramme)
- Diagnostic SMS : état de l'appareil SMS Gateway (en ligne / hors ligne)
- Garde-fou anti-emballement d'alarme : plafond de rappels par jour
- Gallonnage géométrique des bassins (cylindre / tronc de cône)
- Multi-sites : statistiques filtrables par site (table)
- Multi-sites : sélecteur de site clair et visible en haut du tableau de bord
- Noms de port/capteur : indicateur « En traitement » jusqu'à confirmation
- Refonte visuelle des différentiels (cartes responsives)
- Super-compte : vue multi-érablières + stats de n'importe quel site
- Déplace le test SMS/courriel (Notifications) vers la page Mon compte
- Sauvegarde portail : bouton de téléchargement + sauvegarde planifiée
- Stats : météo extérieure par ville dans le comparateur (Open-Meteo)
- Stats : séries horaires + Comparateur configurable multi-métriques
- Stats : section Tendances (courbes quotidiennes)
- Stats : colonnes numériques alignées + bon Type de capteur
- Vide coloré par palier aussi en Affiche et Carte
- Vide coloré par palier dans les vues Liste et Compact (comme la Grille)
- Stats : backfill unique des agrégats depuis les lectures déjà stockées
- Section Statistiques : agrégats serveur (1 an), page, coulées, volumes, exports
- Niveau de bassin : « pouces » au lieu de « in » + choix pouces/centimètres
- Retrait du sous-titre « Canal » de la passerelle
- Bas des bulles aligné : le pied (batterie/signal/température) collé en bas
- Tuiles du haut : moyennes (niveau par type, batterie, signal)
- Barres de vide colorées selon le niveau (po Hg), paliers acéricoles
- Photo du relais (contrôle à distance) ajoutée
- Photos d'appareils dans le détail du capteur, selon le type
- Noms de types de capteurs en français (et EN) selon la catégorie
- Niveau de bassin : le % se calcule sur le niveau vide (EMPTYLVL) et non sur data_2
- Alarme de niveau de bassin : seuil en pourcentage (bassin étalonné) ou en pouces (valeur de la carte), suit le sens de la mesure réglé dans le portail, bouton + Alarme dans le détail du capteur de niveau, unité conservée au journal ; une lecture absente ne rétablit plus une alarme à tort ; tests
- Tri par type de capteur ; noms de ports plus gros avec plus d'espace avant l'étiquette Port ; distance sous le capteur masquée quand elle serait négative (bassin non étalonné)
- Correctif : les dates lues par Eve sont avec fuseau horaire (tz_aware) ; le journal des alarmes affichait « Invalid Date » et l'état du service SMS/courriel plantait côté serveur (d'où « non configuré » à tort) ; tests rendus fidèles à la production. Noms des ports des capteurs de vide ; niveau de bassin en pouces avec distance sous le capteur, réglage du sens de la mesure et étalonnage expérimental (niveau vide, plage) envoyé à la base station
- Rappels d'alarme (SMS et courriel renvoyés à intervalle tant que le problème dure, nombre maximum réglable, durée écoulée dans le message) et sourdine d'une alarme en cours (1 h à 3 jours, rappel unique à la fin, journal marqué en sourdine) ; renommage expérimental dans l'application via la base station (case à cocher, confirmation, état en attente puis appliqué) ; thème clair plus foncé avec sections encadrées ; tests
- Noms des sorties d'un relais : CH1 et CH2 peuvent être nommés (Pompe à vide…), le nom remplace CH1/CH2 sur les cartes, listes, affiche, carte et graphiques ; enregistré dans le portail seulement, sans effacer le nom ni la note du capteur
- Vues des capteurs : Grille, Liste (colonnes triables), Compact, Affiche (très gros chiffres, plein écran) et Carte (Leaflet, positions GPS, chargée à la demande) ; regroupement par passerelle, type, état ou aucun avec sections repliables ; tri par nom, état, batterie, signal ou dernier rapport ; choix retenu par navigateur ; mobile : liste en lignes à deux niveaux
2026-10-25
- Signal : échelle réelle de la base station (RSSI de 0 à 130, -666 = aucune valeur) ; niveau du bassin calculé à partir du niveau relatif et de la plage d'étalonnage, avec message clair quand la plage n'est pas définie ; données brutes du capteur affichées pour le diagnostic
2026-10-24
- Numéros de téléphone : le « + » n'est plus nécessaire (514 555 1234, (514) 555-1234, 1-514-555-1234 deviennent +15145551234, indicatif DEFAULT_COUNTRY_CODE), aperçu du numéro réellement utilisé sous le champ, numéro invalide nommé au lieu d'être deviné, les numéros déjà enregistrés sans « + » fonctionnent aussi ; tests
- Test de charge : générateur de rapports XML réalistes, simulation de passerelles et de personnes qui regardent le portail, mesures (latences, volume, retard du worker), mesure locale du coût de lecture du XML, auto-test, commande purge-loadtest limitée aux comptes lt-…, guide d'utilisation
- Passerelle : en-tête clair (capteurs / en ligne / hors ligne / à surveiller, dernier rapport du canal), plus de batterie ni de signal vides, plus d'onglets Mesures et Historique ; relais sans batterie vide ; tensions arrondies à 2 décimales ; le portail nomme la variable .env manquante quand le SMS ou le courriel n'est pas configuré, et ignore les espaces et guillemets laissés dans .env ; test du journal rendu déterministe
- Nouveau thème « salle de contrôle » (sombre par défaut, clair disponible, logo H2O conservé) : tableau de bord avec indicateurs, filtres et recherche, cartes par type de capteur (vide par port, niveau du bassin, relais, répéteur) avec batterie en % et signal toujours visibles, panneau de détail (à droite ou feuille du bas sur mobile), barre d'onglets en bas sur téléphone, badge d'alarmes ; dernier contact de la passerelle calculé sur le canal et ping de la base station toutes les 10 s ; noms et notes de capteurs modifiables (portail seulement) ; bloc Notifications avec état du service SMS/courriel et test d'envoi par alarme ; tests
- Alarmes : bouton Envoyer un test (file lue par le worker, qui détient les identifiants SMS et SMTP) et journal des alarmes avec l'état de livraison de chaque message ; doc du guide mise à jour (relais, historique, équipe, limites) ; tests
2026-10-22
- Comptes et rôles : accès d'équipe (lecture seule ou modification) partageant les capteurs, alarmes et historiques du compte propriétaire, page Mon compte (équipe, changement de mot de passe), boutons de modification masqués en lecture seule ; la liste publique des comptes de l'API REST est supprimée ; tests
- Historique des relevés : le worker enregistre chaque rapport de capteur (rétention 90 jours, configurable), route /history avec réduction à 400 points, graphiques de 6 h à 90 jours (y compris l'état ON/OFF des relais) ; onglet Contrôle à distance réservé aux relais ; tests
- Alarmes et différentiels modifiables : bouton ✎ qui rouvre le formulaire pré-rempli (cible, condition, seuil, nom, destinataires) et enregistre sans changer l'état activé de l'alarme
- Contrôle des relais (Remote controls Relay) : interrupteurs CH1 et CH2 avec état rapporté par le capteur, commande mise en file dans RemoteCtrl pour la base station (XPCH1/XPCH2), état « en attente » jusqu'à confirmation, pastilles CH1/CH2 sur les cartes ; tests du protocole et de l'API
- feat: thème clair complet + bascule clair/sombre
- feat: SMS via SMS Gateway for Android (sms-gate.app), gratuit via téléphone
- feat: alarmes par seuil avec notifications SMS (Twilio) + courriel (SMTP)
- feat: regroupement par canal + seuils de différentiel côté serveur
- feat: capteurs regroupés par passerelle + couleurs d'écart configurables
- feat: batterie (tension VOLTAGE), signal RSSI, filtrage des ports inactifs
- feat: ports actifs, affichage CANAUX, et section Différentiels configurable
- feat: portail bilingue FR/EN avec bascule de langue
- feat: le portail lit et décode le XML nwkSensors (collection Data)
- refactor: URL de téléchargement courtes — /dl/64.apk et /dl/32.apk
- fix: 403 sur les téléchargements APK — forcer la lisibilité des fichiers servis
- feat: téléchargement des APK (32/64 bits) depuis le portail
- feat: QR de configuration de l'app sur la fiche de connexion
- feat: inscription client en libre-service + fiche de connexion de l'app
- proxy: expose l'API sous /eve pour un seul sous-domaine (portail + base station)
- config: ports hôte pilotables via .env (WEB_PORT/API_PORT/BIND_IP)
- docs: déployer dans ~/smartrekh2o (convention des autres projets du NAS)
- Portail capteurs H2O Innovation — backend Eve + frontend React + Docker
Dernière mise à jour du site : 2026-11-01. Voir les nouveautés. Une question restée sans réponse ? FAQ.
Portail client