Modification de la "Formule de calcul" d'une commande via scénario

Est ce que tu le réinitialise manuellement ou via un scénario ?

Si jamais tu le fais à la main et que tu souhaites le faire via un scénario voici le code complet. Il faudra juste modifier l’adresse ip de ton eco compteur et le nom de tes commandes de l’éco compteur.

// Mise à jour de la formule de calcul de la commande [csv - energie_circuit1]
$index1 = cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit1]#')->execCmd();
$scenario->setLog('Valeur [csv - energie_circuit1] avant reset : '.$index1);
cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit1]#')->setConfiguration('calculValueOffset', "#value#+$index1")->save();

// Mise à jour de la formule de calcul de la commande [csv - energie_circuit2
$index2 = cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit2]#')->execCmd();
$scenario->setLog('Valeur [csv - energie_circuit2] avant reset : '.$index2);
cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit2]#')->setConfiguration('calculValueOffset', "#value#+$index2")->save();

// Mise à jour de la formule de calcul de la commande [csv - energie_circuit3]
$index3 = cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit3]#')->execCmd();
$scenario->setLog('Valeur [csv - energie_circuit3] avant reset : '.$index3);
cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit3]#')->setConfiguration('calculValueOffset', "#value#+$index3")->save();

// Mise à jour de la formule de calcul de la commande [csv - energie_circuit4]
$index4 = cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit4]#')->execCmd();
$scenario->setLog('Valeur [csv - energie_circuit4] avant reset : '.$index4);
cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit4]#')->setConfiguration('calculValueOffset', "#value#+$index4")->save();

// Mise à jour de la formule de calcul de la commande [csv - energie_circuit5]
$index5 = cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit5]#')->execCmd();
$scenario->setLog('Valeur [csv - energie_circuit5] avant reset : '.$index5);
cmd::byString('#[Maison][Eco-Compteur][csv - energie_circuit5]#')->setConfiguration('calculValueOffset', "#value#+$index5")->save();

// Requêtes pour réinitialiser les compteurs "csv - energie_circuit" 1 à 5 de l'ecocompteur
$req1  = 'curl "http://192.168.1.9/wp.cgi?wp=536+2+12724+-1+-1+4+0.0"';
$req2  = 'curl "http://192.168.1.9/wp.cgi?wp=536+4+12724+-1+-1+4+0.0"';
$req3  = 'curl "http://192.168.1.9/wp.cgi?wp=536+6+12724+-1+-1+4+0.0"';
$req4  = 'curl "http://192.168.1.9/wp.cgi?wp=536+8+12724+-1+-1+4+0.0"';
$req5  = 'curl "http://192.168.1.9/wp.cgi?wp=536+10+12724+-1+-1+4+0.0"';

/$scenario->setLog('DEBUG REQUETE : '.$req1);
$output1 = shell_exec($req1);
$scenario->setLog('DEBUG RETOUR : '.$output1);

$scenario->setLog('DEBUG REQUETE : '.$req2);
$output2 = shell_exec($req2);
$scenario->setLog('DEBUG RETOUR : '.$output2);

$scenario->setLog('DEBUG REQUETE : '.$req3);
$output3 = shell_exec($req3);
$scenario->setLog('DEBUG RETOUR : '.$output3);

$scenario->setLog('DEBUG REQUETE : '.$req4);
$output4 = shell_exec($req4);
$scenario->setLog('DEBUG RETOUR : '.$output4);

$scenario->setLog('DEBUG REQUETE : '.$req5);
$output5 = shell_exec($req5);
$scenario->setLog('DEBUG RETOUR : '.$output5);

Je précise que je ne m’y connais pas en php donc il y a peut être plus simple ou plus propre mais en tout cas cela fonctionne :slight_smile:

3 « J'aime »