Bonjour,
Désolé pour la réponse tardive.
Ca ne fonctionne pas, j'ai une erreur:
Code : Tout sélectionner
2021-06-19 19:54:15.791 Status: User: Admin initiated a switch command (124/TEST1/On)
2021-06-19 19:54:15.796 (Dummy) Light/Switch (TEST1)
2021-06-19 19:54:15.922 Status: LUA: Update DUMMYTEST
2021-06-19 19:54:16.016 Status: LUA: avant decoupe 0.442 kWh
2021-06-19 19:54:16.016 Error: EventSystem: in /home/domoticz/domoticz/scripts/lua/script_device_test.lua: /home/domoticz/domoticz/scripts/lua/script_device_test.lua:31: attempt to concatenate a nil value (local 'startdaycounter1')
Voici le script (désolé c'est un peu brouillon le temps des tests):
Code : Tout sélectionner
commandArray = {}
local function split(s, delimiter)
local result = {}
for match in (s..delimiter):gmatch('(.-)'..delimiter) do
table.insert(result, match)
end
return result
end
if (devicechanged['TEST1'] == 'On')
then
print ("Update DUMMYTEST")
--local startdaycounter = otherdevices_svalues['[Conso] Machine à laver']:match("([^;]+)")
json = (loadfile "/home/domoticz/domoticz/scripts/lua/JSON.lua")()
local config = assert(io.popen('/usr/bin/curl "http://192.168.0.232:8080/json.htm?type=devices&rid=230"'))
local blocjson = config:read('*all')
config:close()
local jsonValeur = json:decode(blocjson)
startdaycounter = jsonValeur.result[1].CounterToday
local startdaycounter = tostring(startdaycounter)
print("avant decoupe " .. startdaycounter .. " ")
local startdaycounter1 = tonumber(split(startdaycounter,' '))
print("apres decoupe" .. startdaycounter1 .. " ")
end
return commandArray
@Keros: tu peux me donner le code de ta fonction split s'il te plait ?
Merci.