Je tente de m’initier au Lua et j’essaie de récupérer une valeur d’un device (Compteur EDF) qui apparaît dans Utility (grâce au plugin DomoticzLinky). Avec un script bash je sais modifier un Dummy Device (Coût EDF) tous les jours en calculant les kWh * prix nrj. Ça fonctionne bien mais pour comprendre comment le faire en LUA je bloque sur la partie où je récupère la valeur du compteur EDF. En LUA je souhaite modifier mon Dummy Coût EDF :
Code : Tout sélectionner
local nrj=tonumber(otherdevices_svalues['Compteur EDF'])
commandArray = {}
if (devicechanged['Compteur EDF'] and nrj > 0) then
-- os.execute(' $CDOM/linky.sh day ')
local prix=tonumber(uservariables['kWh']) * nrj
if prix ~= tonumber(otherdevices_svalues['Coût EDF']) then
print('Mise à jour des dépenses énergétiques')
commandArray['Coût EDF']=prix
print('MAJ NRJ OK')
else
print ('EDF : rien à modifier')
end
end
return commandArrayPour info : quand je vais dans le log (événements dans domoticz) je vois que l’état du device comporte 2 infos. Comment extraire la seconde qui m’intéresse ? (otherdevices_svalues...)
Compteur EDF -1.0;32779.0
Enfin dernière info : dans le log de domoticz il y a une erreur concernant ma variable nrj : attemp to index a nil value... Ceci confirme que ma valeur n’est pas enregistrée dans la variable nrj.
Merci d’avance.