Mode synchronisation entre 2 jeedoms - pb de date d'application d'une valeur

Bonjour,

J’ai un souci sur la synchronisation entre 2 jeedoms. lorsqu’on les données sont trasnférées via mqtt, la date d’application de la données n’est pas prise en compte, la date prise en compte sur le jeedom cible est toujours la date courante :

Dans mon cas, j’injecte des données horodatée issue d’un json (elles sont produites toutes les 5 min, mais je les récupère toutes les 20 mins (pb de limitation d’API).
Les données source sont bien horodatée de la date d’horodatage dans le json, par contre, sur la cible, elle sont recue sans horodatage et donc s’incrivent en base à la date courante
→ Corolaire, comme on ne peut avoir pour une commande qu’une seule donnée pour une commande à la meme date , heure, min, seconde, elle s’ecrasent toutes pour ne conserver que la derniere recue.

Point constater si on récupère le payload mqtt envoyé par la source, aucune date/heure d’applicaiton n’est transférée :

{"value":1619,"humanName":"[Production][Données APSystems][Puissance consommee]","unite":"W","name":"Puissance consommee","type":"info","subtype":"numeric"}

question subsidiaire 1 : pourquoi transférer systématiquement le humane name, l’unité, , le name, et le type puisque ce sont des données seulement nécessaires à la synchronisation me semble t’il
question subsidiaire 2 : est-ce qu emodifier le template en suppirmant les données inutiles et en rajoutant le timestamp -quel tag correspondnant ? - pourrait regler le pb ?

edit : j’ai ma réponse. A cet instant, le champ valueDate n’est pas implementable, cf mqtt2.class.php

      if (trim(config::byKey('publish_template', 'mqtt2', '')) != '') {
         $replace = array('#value#' => $_option['value']);
         if (is_object($cmd)) {
            $replace['#id#'] = $cmd->getId();
            $replace['#humanName#'] = $cmd->getHumanName();
            $replace['#unit#'] = $cmd->getUnite();
            $replace['#name#'] = $cmd->getName();
            $replace['#type#'] = $cmd->getType();
            $replace['#subtype#'] = $cmd->getSubType();
         }
         $message = str_replace(array_keys($replace), $replace, config::byKey('publish_template', 'mqtt2', ''));
      } else {
         $message = array('value' => $_option['value']);
         if (is_object($cmd)) {
            $message['humanName'] = $cmd->getHumanName();
            $message['unite'] = $cmd->getUnite();
            $message['name'] = $cmd->getName();
            $message['type'] = $cmd->getType();
            $message['subtype'] = $cmd->getSubType();
         }
      }

il faudrait rajouter le champ gatValueDate() dans les champs utilsés dans le template

Norbert