Modifier le nom d'une info de retour commande

Bonjour à tous,

Suite à la migration OpenZwave ==> ZWaveJS, je rencontre un petit problème avec me scénarios.

Je précise que tout passe par des virtuels (et j’espère que ca va me sauver…)

CONTEXTE
J’utilise une paquet de thermostat AEOTEC ZWA021 (17 unités) qui fonctionnent à piles et qui donc peuvent se montrer récalcitrants lors d’envoi de commande (même s’il sont des moduels FLIRs).

J’avais donc programmé dans mes scénarios la possibilité de vérifier le bon changement d’état (mode de chauffe et température de réglage du thermostat).
Cela me permettait de relancer les commandes plusieurs fois ci nécessaire pour forcer la modification, ou générer un message d’erreur (souvent car les piles sont HS)

Pour illustrer, voilà le genre de commande de contrôle qui génère un message d’erreur (avec utilisation d’un virtuel donc) :

Sous OpenZwave
Les modules AEOTEC possédaient les commandes suivantes (je ne mets pas tout, seules les 4 qui m’importent, càd les 4 mode de chauffe la la commande/info de retour « Mode Actuel »)

Sous ZWaveJS
Les mêmes modules ont les commandes suivantes :

Du coup, les valeur des états, qui étaient « Off », « Eco », « Chauffage », « Boost » sont devenues respectivement « 0 », « 11 », « 1 », « 15 »…

Dans mon virtuel
On voit que la fonction « Remplacer » de Jeedom a très bien fait sont travail !!!

Je retrouve donc les commandes/infos équivalentes :


Le hic, c’est que la valeur de l’info « Mode Actuel » est directement copiée de l’équipement.
Là où j’avais avant un « Chauffage », je retrouve maintenant un « 1 »…
image

En dernier recours, je pourrai modifier tous les scénarios, mais :

  • Ca va me prendre un temps fou (sans compter les erreur possibles)
  • Si je dois changer de vannes dans le futur (j’ai testé une vanne EUROTRONIC, identique à celle de AEOTEC, SAUF le mode « Boost » qui s’appelle « Pleine Chauffe » chez EUROTRONIC…), je vais rencontrer le même problème encore et encore…

Je souhaite donc trouver une solution pérenne avant tout.

MES ESSAIS

J’ai donc essayé des choses, mais pas concluantes pour le moment…

  1. Sur base du virtuel de base



    j’ai crée un virtuel de développement (copie du virtuel de départ), et j’ai tenté ceci :


    Lors du lancement d’une commande, la valeur de « Mode Actuel » change bien pour celle voulue… mais ne se maintient pas et est « écrasée » par celle que renvoie l’équipement…
    Etat maintenu quelques secondes :
    image
    Puis, retour à l’état suivant :
    image

  2. J’ai bien testé le fait de supprimer le #[Bureau][RADTH Bureau][Mode Thermostat]# de la commande/info « Mode actuel »


    image
    Mais ça ne correspond pas à la réalité : l’état du virtuel change mais celui du thermostat peut ne pas avoir été pris en compte.
    Or, c’est justement ce que je veux vérifier…

  3. J’ai tenté de renommer les « paramètres » de l’équipement, mais là, plus aucune commande ne passe (sauf « Eteindre », pour lequel « Off » doit en effet être interprété comme « 0 »…

Y aurait-il un moyen de forcer le nom d’une info (par exemple, au travers d’une liste « 0 = Off ; 1 = Chauffage », etc…) ?

Bonjour,

Cela doit être faisable par l’intermédiaire d’un scénario associé à une variable + virtuel
Si #état thermostat# == 1 alors Variable(EtatThermostat) = « Chauffage »
Si #état thermostat# == 0 alors Variable(EtatThermostat) = « Off »



image

Merci pour ton retour.

J’y ai pensé, mais ça fait pas mal de programmation : 17 variables, et 17 scénarios dans mon cas
Sans parler de la page « Variables », difficilement exploitable avant la version 4.5

En outre ça va quand même m’obliger à modifier tous mes scénarios:weary: :weary: :weary:

Mais je note que ma piste était, si pas très élégante, au moins viable :wink:

J’attend de voir si j’ai d’autre retours :slight_smile:

Malheureusement, on a rien sans rien.
Et vive la fonction « Dupliquer » :wink:

Hello,

Tu pourrais remplacer ta commande virtuelle Mode Actuel" par #[Bureau][RADTH Bureau][Mode Thermostat]#==0?"Off":#[Bureau][RADTH Bureau][Mode Thermostat]#==1?"Chauffage":#[Bureau][RADTH Bureau][Mode Thermostat]#==11?"Eco":#[Bureau][RADTH Bureau][Mode Thermostat]#==15?"Boost":"---"

2 « J'aime »

Bonjour Bison,

1000 fois merci ! :pray: :pray: :pray:

LA solution. :grin:
Ok, pas mal de changement à faire, mais exactement le genre de résultat attendu.

Et plein d’adaptation possibles !
Pour mon information (et celle d’autres noob comme moi), on peut trouve ce type de commande dans la documentation ?

Non ce n’est pas en lien direct avec Jeedom, c’est du PHP et l’utilisation de l’opérateur ternaire

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.