Création d'un Timer par bloc code PHP

Bonjour

J’ai trouvé sur le forum un code de Timer générique que j’ai adapté pour mes besoins .Malheureusement les données ne remontent pas dans mon plugin virtuel .Les informations sont bien présentent dans ce bloc code (passage de 0 à 1 et 1 à 0 pendant 5 secondes ) mais c’est tout .Pas de changement d’état sur ma commande info, pourtant je vois bien un changement de couleur passé sur cette commande info?

Quelqu’un pourrait 'il me conseiller sauf erreur de ma part sur les les 2 dernieres lignes qui pose problème à priori ?
D’avance merci


$cmd_Tempo='#[Etage][Etat_Velux][TempoVelux]#';//info plugin virtuel  nombre maxi à decrementer en secondes 
$cmd_Flag='#[Etage][Etat_Velux][Flag1]#';//info plugin virtuel  1 (fin  timer)/ 0  (début  timer)
$Tempo=cmd::byString($cmd_Tempo)->execCmd(); // recuperation data  du plugin virtuel.
$var_Timer='Timer';//declaration variable dans script
$var_Flag='Pointeur';//declaration variable dans script
$scenario->setData($var_Flag,1);
$scenario->setData($var_Timer,$Tempo);
$scenario->setLog('le nombre de  Timer est'. $scenario->getData($var_Timer));
do{$scenario->setData($var_Timer, $scenario->getData($var_Timer) - 1);sleep(1);}// On boucle autant de fois que nécessaire jusqu'à atteindre 0
while($scenario->getData($var_Timer) > 0); 
cmd::byString($cmd_Flag)->event($var_Flag);//envoi 1 dans le plugin virtuel
//$scenario->setLog('le nombre Flag est'. $scenario->getData($var_Flag));
var_dump(time_sleep_until(microtime(true)+5));//stop script pendant 5s
//$scenario->setLog('le nombre Flag est'. $scenario->getData($var_Flag));
$scenario->setData($var_Flag,0);//Pointeur à 0
cmd::byString($cmd_Flag)->execCmd($var_Flag);//envoi 0 dans pluin virtuel
//$scenario->setLog('le nombre Flag est'. $scenario->getData($var_Flag));


Autant pour moi j’ai fait une erreur sur ma derniere ligne …
il faut lire:

cmd::byString($cmd_Flag)->event($var_Flag) et non cmd::byString($cmd_Flag)->execCmd($var_Flag);
...

event // execCmd

Merci de votre retour

1 « J'aime »