Widget couleur température si la chaudière est ON

Bonjour a tous,

je souhaite crée un widget pour un design de mon thermostat Netatmo.

J’en suis la
Capture5

Et la je bloque sur un truc qui parait simple.

En gros je voudrais que quand la chaudière est ON la température intérieure soit écrite en rouge et quand la chaudière est OFF la température intérieur soit écrite en bleu

Dans mon widget d’info / numérique
Expression
value(#[Célialex_Home][Netatmo Relais][Etat Chauffage]#)=0

Resultat
span style="color: bleu;font-size: 70%;">#value##unite#</Span><i class='icon jeedom-thermo-froid icon_bleu

Mais ca ne marche pas

Help me les amis :star_struck: :grin: :star_struck:

Bonjour,

Dans l’expression, il ne faut pas mettre == 0

Et dans le bout de code que vous avez mi, il ne manque pas des >

Un exemple parmis d’autres

Hey,

Merci @Fabrice Effectivement voila le code corriger mais ce ne change pas. C’est le test qui ne semble pas être juste alors que le testeur d’expression me dit « true ». Avec les deux == c’est pareil

<span style="color: bleu;font-size: 70%;">#value##unite#</Span><i class='icon jeedom-thermo-froid icon_bleu'></i>

Merci @olive mais c’est un peut plus compliqué que cela. L’idée ici d’appliquer un format à un objet A en fonction de l’état de l’objet B

Vous êtes sur qu’il faut écrire bleu et pas blue

1 « J'aime »

si pas sur #00F

1 « J'aime »

Oui il faut mettre blue je suis d’accord

Mais même avec ça, ne fonctionne pas

Petite point d’avancement sur le sujet.

Depuis deux jours je ne cesse de chercher des solutions à ma problématique.

Je ne suis pas le seul a essayé de vouloir faire cela.
sebfar / dohzmotik on egalement aborder le sujet dans : Mettre une variable en condition d’un widget v4

Pour ma part

1- J’ai essayer de crée un variable toto avec un scenario:



Quand la chaudière se déclenche toto prend bien la valeur 1 et quand elle s’éteint la variable toto prend bien la valeur 0 j’ai vérifier avec le testeur d’expression

Chaudière Off Capture8
Chaudière On Capture9

Dans le widget je test :
$toto=0
$toto=1
La température s’affiche toujours comme si toto=1 même après plusieurs minute et plusieurs rafraichissement.

2- J’ai essayer de mettre des variables:
$chaudierestate = 1
$chaudierestate != 0
chaudierestate étant la variable que j’ai trouver dans le .php du plugin et qui semble correspondre a l’état On / Off de la chaudière
Avec cela la température s’affiche pour la condition Off mais ne marche pas pour la condition On et si j’inverse les ligne de test j’ai le message d’erreur : Uncaught ReferenceError: $chaudierestate is not defined

3- J’ai essayer en mettent la value de la commande [Célialex_Home][Netatmo Relais][Etat Chauffage] que j’ai trouver dans les infos de la commande
#717#=1
#717#=0
La température ne s’affiche pas et j’ai le message d’erreure : Uncaught SyntaxError: Invalid or unexpected token
pourtant le testeur d’expression le dis true
Capture7

Je ne sais plus quoi tester.
Que peut t’on mettre dans les test des widget ?
Dans un Widget est ce que l’on peux utiliser l’état d’une commande pour modifier l’état d’une autre commande ?

Dans un widget le test sur une valeur s’écrit comme cela :

#value# == 1
ou bien
#value# == 0

il faut mettre un double égal comme en PHP

Bonjour @phil38,

Merci beaucoup pour cette précision.

Cependant.
si je met $toto == 1
Ma température ne s’affiche pas et j’ai un message d’erreur Uncaught ReferenceError: $toto is not defined
Alors que ma variable toto semble être a jour cf les screen de mon message précèdent Widget couleur température si la chaudière est ON - #8 par Alweddle

Comment tester autrement que cette variable est bien définit ?

contrairement à $toto=1

Pour rappel : J’essai de mettre en forme la couleur de ma température en fonction de « Etat chauffage » => commande de type info / binaire
Etat chauffage on =1
Etat chauffage off = 0
C’est pour cela que je n’utilise pas value et je test ma variable perso toto définit par un scenario

Mais peut être que mon test pour appeler cette variable toto ne doit pas être rédiger comme je le fait.

Tu dois nécessairement utiliser #value# == … ou bien #value# != … ou un autre opérateur. Les variables $abc ne sont pas définies dans un widget.

Hello,

Oki, cela veux donc dire que en l’état je ne pourrais pas changer la couleur de ma température en fonction de l’état d’activation de ma chaudière ?
Dans la cas présent ici value sera celle de la température.

Je suppose donc qu’il faut que je passe par un widget code ?

Cela ce complique donc pour moi car je n’ y connais rien. Maintenant si quelqu’un peut m’aider ou me donner des sources je suis largement près a investir de mon temps car le sujet me passion vraiment.

Je pense que la solution passe par le CSS et les classes paramétrables mais je ne suis pas assez calé pour çà, désolé

1 « J'aime »

Merci. Je ne lâche pas et continu de cherché car en informatique tous est possible il faut juste savoir comment demander à la machine.

Bonjour @Salvialf

Merci a toi pour le travail fournis je ne compte plus le nombre de fois ou tes réponses m’ont permis de solutionner mes problématiques.

Je me demande si le plugin Pimp my Jeedom me permettrais de faire ce je souhaite sans forcement passer par du code ?

Hello @micheld

ici le sujet dont je t’ai parlé.