Panel mise à jour commandes info

Bonjouuuuuur,
j’ai créé mon premier panel, mais les cmds infos ne se mettent pas à jour
J’avoue ne pas comprendre le fonctionnement de jeedom.cmd…
j’utilise un template (/plugins/msunpv/core/template/dashboard/template.html) et j’initialise mes variables dans la fonction toHtml sous forme $replace[‹ #id_puis_res# ›]=…
j’ai renseigné mes variables dans le template et tout s’affiche correctement, mais pas de mises à jour de mes données automatiquement

<div class="eqLogic eqLogic-widget allowResize WoMeter" style="box-shadow: 0 8px 22px 2px rgba(0,0,0,0.4);background-color: transparent !important;;width: 100%;height: 100vh;#style#" data-eqLogic_id="#id#" data-eqLogic_uid="#uid#" data-version="#version#" data-eqType="#eqType#" data-translate-category="#translate_category#" data-category="#category#" data-tags="#tags#" >
	<center class="widget-name">
		<span class="warning" title="#alert_name#">
			<i class='#alert_icon#'></i>
		</span>
		<span class="cmd refresh pull-right cursor" data-cmd_id="#refresh_id#" style="">
			<i class="fas fa-sync"></i>
		</span>
		<span class="reportModeVisible" style="">#name_display# <span class="object_name">#object_name#</span></span>
		<a href="#eqLink#" class="reportModeHidden" style="">#name_display# <span class="object_name">#object_name#</span></a>
	</center>
	<div id="maj_fichier">#maj_fichier#</div>
	<div class="msunpv titre" style="position:relative;margin-bottom: 10px;">Entrées</div>
	<div class="msunpv" style="position:relative">
		<span class="fontDigital entree"><span class="titre_entree">Puissance réseau</span><span class="cmd" data-cmd_id="#id_puis_res#">#puissane_reseau#</span>W</span>
		<span class="fontDigital entree"><span class="titre_entree">Puissance panneaux</span><span class="cmd" data-cmd_id="#id_puis_pan#">#puissane_panneaux#</span>W</span>
.....

Une idée ?

Salut,

Si tu utilises un template et que tu utilises la fonction toHtml, tu dois appeler la fonction refreshWidget sur ton eqLogic lorsque les commandes on été mises à jour.

Salut Mips !!!
aurais tu un exemple stp
quel est le principe de focntionnement ? je dormirai moins bête :slight_smile:

c’est ok

if ($this->getLogicalId() == 'refresh') {
		  //$this->getEqLogic()->getInformations();
		  $eq = $this->getEqlogic();
		  $eq->refreshWidget();
		 return;
		}

a mettre dans class cmd execute

mais du coup il faut relancer manuellement le refresh ? aves setimetout ?

Salut,

Dans ta classe eqLogic, après que les valeurs des commandes soient mises à jour :

$this->refreshWidget();

Il reste aussi la solution du javascript en utilisant jeedom.cmd.addUpdateFunction sur chaque ID de commande à mettre à jour.

Non c’est pas dans une commande refresh que tu fais ca (enfin si tu peux) mais c’est après avoir mis à jour une commande donc si c’est dans une commande refresh c’est pcq elle va au départ chercher la nouvelle puissance, met à jour la commande info et finalement force le refresh du widget

genre tu as un cron ou un démon qui recupère une info power du coup

$eq->checkAndUpdateCmd('power', $power);
$eq->refreshWidget();

Salut @Salvialf

yessss au top !!!

PS : on t’avait présenté Youdesign en visio avec l’équipe de Youdom, il est sur le market pour info, je ne sais pas si tu l’as vu passer…

Au top les gars ! Merci pour votre réactivité :muscle::+1: