Non mise à jour de l'affichage d'un virtuel

Bonjour
Il y a du avoir une régression sur Jeedom ou Virtuel sur la mise à jour automatique de l’affichage d’une valeur ou d’une commande avec valeur.
Exemple du virtuel

Affichage :
image

Si je fais une mise à jour de la valeur par un scenario comme :

Le virtuel ne met pas à jour la valeur qui devrait passer à 42.

Avez vous une solution pour rémédier à cela ?
Merci et bon confinement !

Olivier

Salut,

A ma connaissance ça n’a jamais fonctionné de cette manière alors parler de régression dès les premiers mots…

donc soit tu envoies une nouvelle valeur (+1) à la commande Action/Curseur qui sera répercutée sur la commande info, soit tu utilises la fonction event pour changer la valeur de la commande info:

Evènement (event) : Permet de pousser une valeur dans une commande de type information de manière arbitraire
https://jeedom.github.io/core/fr_FR/scenario#tocAnchor-1-13

2 « J'aime »

Qu’est-ce qui te fait dire qu’il y a régression ?

Bonjour

Je me trompe peut être, mais ce genre de comportement a toujours été. J’ai commencé en v3 et j’ai toujours eu ce genre de chose.
Dans mes scénarios, je rajoute une action d’actualisation du virtuel, ou alors tu mets un cron sur le virtuel.

Bonjour

Cela est effectivement lié à la mise à jour Jeedom mais une très ancienne 3.3.x où les Widget ne sont plus compatibles. Je n’avais pas fait attention et c’est après la dernière mise à jour que je l’ai remarqué d’où la notion de régression.
J’ai identifié que cela venait d’un Widget car en ne l’appliquant plus, la mise à jour se faisait bien dans l’affichage du virtuel.

En espérant que cela aide d’autres personnes, voici ce que j’ai fait (et pas besoin de faire une actualisation forcée ou un refresh via Cron du virtuel)

Bonne journée
Olivier

Modification de l’affichage de la valeur
span style=« font-size: 4em; font-weight: bold; » id=« valeur#id# »>
par
span style=« font-size: 24px; font-weight: bold; » class=« state »>

puis ajouté ce bout de code (j’affiche avec 1 chiffre après la virgule) :
jeedom.cmd.update[’#id#’] = function(_options){
$(’.cmd[data-cmd_id=#id#]’).attr(‹ title ›,‹ Valeur du ‹ +_options.valueDate+ ›, collectée le ‹ +_options.collectDate);
var valeur = parseFloat(_options.display_value).toFixed(1);
$( ›.cmd[data-cmd_id=#id#] .state ›).empty().text(valeur);

}
jeedom.cmd.update’#id#’;

Ton code est illisible tu a une balise </> utilise la et copie ton code dedans c’est fait pour ça …