Je cherche à savoir rédiger la syntaxe d’une commande qui me permette de mettre à jour la valeur « visible » d’un virtuel.
A force de lire et relire le forum j’ai l’impression qu’il faut que je me dirige vers « EVENT ». Oui, mais je n’arrive pas à trouver comment faire.
J’ai un scénario qui finit par enregistrer dans l’historique sur la commande d’un virtuel une valeur et une date avec ces instructions :
Est-ce que c’est dans ces instructions qu’il faut que j’ajoute un paramètre « event » ?
Ou faut-il que j’ajoute une instruction « event » ? et si oui avec quelle syntaxe ?
Bon ben non, l’instruction que tu m’as indiqué provoque l’enregistrement d’une seconde ligne dans l’historique de valeur 0, sans doute parce que le $value de la commande du virtuel vaut 0.
Je n’ai sans doute pas été clair… c’est l’inverse que je veux faire, c’est à dire mettre à jour la $value de la commande du virtuel (qui reste désespérément à 0), c’est à dire envoyer la valeur de $indexProdPvOpt dans $value de commande du virtuel.
Je cherche à forcer cette valeur car le cron du virtuel (*****) ne provoque pas sa mise à jour.
Il a mis $value surement pour aller vite mais il faut indiquer ici la valeur que tu veux envoyer à la commande virtuelle.
$histoProdPV est la commande du virtuelle à mettre à jour
$indexProdPVOpt est la valeur que tu veux envoyer dans la commande virtuelle
$histoProdPV->event($indexProdPVOpt) va permette de faire ça. Au passage l’historique sera mis à jour en prenant la date à laquelle tu as exécuté la fonction event
OK, « $histoProdPV->event($indexProdPVOpt) » va mettre à jour la valeur de l’Etat de la commande, mais je ne veux pas de nouvelle ligne dans l’historique car avec « $histoProdPV->addHistoryValue($indexProdPVOpt,$date) » je force l’enregistrement de $indexProdPVOpt à la date de « $date » et non pas à la date d’exécution du bloc code du scénario.
Est-il possible :
Soit de faire un « event » sans mise à jour de l’historique… et je garde mon « addHistoryValue »
Soit de faire une « event » avec un second argument pour forcer la date de la mise à jour de l’historique à « $date »
Je n’arrive pas à trouver de doc pour comprendre le fonctionnement et la syntaxe du « event ». Peux-tu me diriger ?
Sinon c’est : recherche/question sur Community et la dernière solution quand on commence à maîtriser un peu le sujet c’est d’aller voir les fonctions dans le code de Jeedom directement (core).
Pense à fermer le post avec la solution si ça te va