format.string en lua
Publié : 04 avr. 2022, 12:38
bonjour,
j'essaye de créer des dummy device pour afficher les données qui me parlent sur le plan/
pour ma production solaire j'ai un idx (20) qui me donne toutes les infos que je souhaitent dans le json
avec "http://192.168.1.XX:8080/json.htm?type=devices&rid=20"
je mets les valeurs qui m'intéressent dans des variables:
je souhaite avoir "CounterTody" qui en Kwh dans le json et "Usage" valeur en W qui correspond a la production instantannée.
j'ai 2 devices idx 595 et idx 596
et un script qui ne fonctionne qu'a moitié.
pas d'erreur dans le log
resultat:
ce que je souhaite c'est avoir une valeur en KWh pour la prod du jour et une valeur en W pour la prod instantannée
je galère..pouvez vous m'aider...
Merci
knasson
j'essaye de créer des dummy device pour afficher les données qui me parlent sur le plan/
pour ma production solaire j'ai un idx (20) qui me donne toutes les infos que je souhaitent dans le json
avec "http://192.168.1.XX:8080/json.htm?type=devices&rid=20"
je mets les valeurs qui m'intéressent dans des variables:
je souhaite avoir "CounterTody" qui en Kwh dans le json et "Usage" valeur en W qui correspond a la production instantannée.
j'ai 2 devices idx 595 et idx 596
et un script qui ne fonctionne qu'a moitié.
Code : Tout sélectionner
json = (loadfile "/home/kan/domoticz/scripts/lua/JSON.lua")() -- For Linux
commandArray = {}
local config=assert(io.popen("curl -s 'http://192.168.1.38:8080/json.htm?type=devices&rid=20'"))
local blocjson = config:read('*all')
config:close()
--print (blocjson)
local jsonValeur = json:decode(blocjson)
local function update(idx, value)
local cmd = string.format("%d|0|%q", idx, value)
table.insert (commandArray, { ['UpdateDevice'] = cmd } )
print( string.format("%d|0|%q", idx, value))
end
Pjour = jsonValeur.result[1].CounterToday
PNow = jsonValeur.result[1].Usage
print ("ProdJour"..Pjour)
print ("ProdNow"..PNow)
value = Pjour
update ( 596,value)
value = Pnow
update ( 595,value)
return commandArray
resultat:
ce que je souhaite c'est avoir une valeur en KWh pour la prod du jour et une valeur en W pour la prod instantannée
je galère..pouvez vous m'aider...
Merci
knasson