Aller au contenu

JeeNavimow — version bêta

Cette page décrit la version bêta (instable) du plugin JeeNavimow : nouveautés en test et feuille de route. Pour la documentation stable, voir index.md.

⚠️ La bêta peut contenir des fonctions inachevées. Sauvegardez votre Jeedom avant de l'installer.

Beta-nouveautes

En test (bêta courante)

  • Temps réel MQTT opérationnel : connexion WSS au broker dynamique (mqttHost/mqttUrl renvoyés par l'API, ex. mqtt-fra.navimow.com) via le SDK mower_sdk, avec abonnement aux topics /downlink/vehicle/<id>/realtimeDate/{state,event,attributes}. Corrige l'usage de l'ancien hostname mqtt.navimow.com (non résolvable).
  • Mise à jour de l'auth MQTT sans coupure à chaque rotation horaire du token OAuth.
  • Repli REST (30 s) conservé si MQTT indisponible.
  • En cours d'affinage : mapping fin de la position / progression / surface selon les charges utiles MQTT réelles, et remontée des événements en événements Jeedom.

Roadmap

Fonctionnalités envisagées, par ordre de priorité. Les éléments dépendent de ce que l'API/MQTT Navimow expose réellement.

v0.2 — Temps réel complet

  • Parsing complet des messages MQTT Navimow (Thing status / properties / events) via mower_sdk.
  • Remontée de la progression de tonte, de la surface tondue et de la position relative (X/Y) en direct.
  • État « en charge » fiable.
  • Événements Jeedom déclenchés sur changement d'état (retour base, erreur, tonte terminée).

v0.3 — Contrôle avancé (selon API)

  • Planification des tontes (programmer début/fin).
  • Sélection des zones de travail / cartes.
  • Délai pluie (rain delay) et reprise auto.
  • Hauteur de coupe, verrouillage enfant, mode bordure.
  • Suivi du résultat des commandes (responseCommands) pour confirmer l'exécution.

v0.4 — Visualisation & historique

  • Widget carte : tracé de la position relative et de la zone tondue.
  • Statistiques : temps de tonte, surface cumulée, historique batterie.
  • Notifications d'erreur enrichies (code → message lisible).

v0.5 — Couverture & i18n

  • Support multi-comptes Navimow.
  • Sélection de la région cloud (Europe / US / Asie).
  • Extension des traductions et de la documentation.

Changelog bêta

0.2.8

  • Dépendances : si aucun Python ≥ 3.11 n'est présent, le plugin tente d'abord apt-get install python3.11, puis compile Python 3.11 depuis les sources (make altinstall dans /usr/local, sans toucher au python3 du système) — Debian 11 (Bullseye) s'installe désormais sans intervention manuelle.
  • Intégrité de l'archive Python vérifiée (MD5 publié par python.org), parallélisme de compilation borné par la RAM disponible, et verrou empêchant deux installations simultanées.
  • ⏱️ Sur Debian 11 (Bullseye), la première installation des dépendances dure 20 min à 1 h (compilation de Python 3.11) contre moins d'une minute sur Debian 12 ; le Python compilé est ensuite réutilisé.

0.2.7

  • Widget : correction du lien sur le nom de la tondeuse (ajout du paramètre m=) — il ouvre désormais bien la page de configuration de l'équipement.

0.2.6

  • Dépendances : détection automatique d'un Python ≥ 3.11 installé en parallèle (ex. python3.11 sur Debian 11 où python3 = 3.9), au lieu d'échouer ; message d'erreur enrichi (Debian 11 / Debian 12).

0.2.5

  • Plugin : catégorie déplacée vers Nature.

0.2.4

  • Widget : bouton Reprendre en vert-tilleul (#9ACD32), distinct de Démarrer et de Base.

0.2.3

  • Widget : suit désormais le thème de Jeedom (mode sombre / clair) au lieu du thème du navigateur/OS.

0.2.2

  • Widget : logo du plugin dans l'en-tête (à la place de l'icône robot) et nom de la tondeuse cliquable ouvrant la configuration de l'équipement.
  • Widget : bouton de don (café) avec info-bulle opaque au premier plan ; retrait du bouton « Sync » redondant.
  • Widget : icône maison bleue pour le bouton Base et correction des icônes manquantes (compatibilité Font Awesome 5).
  • Widget : « Base » accessible en pause, jauge de batterie centrée.

0.2.1

  • Nouvelle icône de tondeuse dans le widget (image dédiée), animée pendant la tonte.

0.2.0

  • MQTT temps réel via le broker dynamique mqttHost/mqttUrl de l'API (au lieu du hostname mqtt.navimow.com non résolvable) — connexion WSS + abonnement aux topics realtime confirmés.
  • Widget dashboard auto-rafraîchi : l'affichage (statut, batterie, progression, badges, synchro) se met à jour tout seul toutes les 15 s, sans recharger la page (lecture des commandes info via jeedom.cmd.execute). Les valeurs côté serveur étaient déjà fraîches (démon MQTT + REST 30 s) ; c'est l'affichage qui ne se rafraîchissait pas.
  • Rafraîchissement automatique du token OAuth (~1 h) : refresh proactif + sur code 4005 (CODE_OAUTH_INFO_ILLEGAL), et mise à jour de l'auth MQTT sans couper la connexion.
  • Démarrage du démon robuste : bind du port avec retry, PID écrit après le bind réussi, nettoyage des instances orphelines (corrige « le démon ne démarre pas »).
  • Port du démon par défaut 55149 (évite le conflit avec jeewhatsapp).

0.1.0

  • Mise en place de l'architecture (OAuth, démon MQTT + REST, widget, i18n).
  • Correctifs : encodage OAuth x-www-form-urlencoded, en-tête requestId obligatoire, parsing data.payload.devices, batterie via capacityRemaining.
  • Ajout du bouton Rafraîchir les tondeuses.
  • Affichage de l'ID de commande sur une seule ligne.