A l'aide de ce forum je terminé un code de gestion des timers (planning) et contrôle des températures par script LUA.
Un périphérique virtuel de type sélecteur me permet de choisir directement des valeurs et de-validation/validation des planning des vannes.
Code : Tout sélectionner
local mon_ip = "127.0.0.1:8080"
commandArray = {}
-- Mode Auto
if (devicechanged['Mode chauffage'] == 'Auto') then
local timer_id = {"11","16","17","10","12","13","14","15","8","9"}
for i,v in ipairs (timer_id) do
cmd_timer = "curl " .. '"' .. mon_ip .. "/json.htm?type=command¶m=enablesetpointtimer&idx=" .. v ..'"'
print ("Commande envoyée : " .. cmd_timer)
ret = os.execute (cmd_timer)
end
local timer_temp_id = {37,19,40,18,74,25,43,19}
for i = 1, #timer_temp_id, 2 do
cmd_timer = "curl " .. '"' .. mon_ip .. "/json.htm?type=command¶m=setsetpoint&idx="..timer_temp_id[i].."&setpoint="..timer_temp_id[i+1] ..'"'
print ("Commande envoyée : " .. cmd_timer)
ret = os.execute (cmd_timer)
end
-- Mode Absent (14°C)
elseif (devicechanged['Mode chauffage'] == 'Absent') then
local timer_id = {"11","16","17","10","12","13","14","15","8","9"}
for i,v in ipairs (timer_id) do
cmd_timer = "curl " .. '"' .. mon_ip .. "/json.htm?type=command¶m=disablesetpointtimer&idx=" .. v ..'"'
print ("Commande envoyée : " .. cmd_timer)
ret = os.execute (cmd_timer)
end
local timer_temp_id = {37,14,40,14,74,14,43,14}
for i = 1, #timer_temp_id, 2 do
cmd_timer = "curl " .. '"' .. mon_ip .. "/json.htm?type=command¶m=setsetpoint&idx="..timer_temp_id[i].."&setpoint="..timer_temp_id[i+1] ..'"'
print ("Commande envoyée : " .. cmd_timer)
ret = os.execute (cmd_timer)
end
-- Mode Ete (Vannes ouverte 28°C)
elseif (devicechanged['Mode chauffage'] == 'Ete') then
local timer_id = {"11","16","17","10","12","13","14","15","8","9"}
for i,v in ipairs (timer_id) do
cmd_timer = "curl " .. '"' .. mon_ip .. "/json.htm?type=command¶m=disablesetpointtimer&idx=" .. v ..'"'
print ("Commande envoyée : " .. cmd_timer)
ret = os.execute (cmd_timer)
end
local timer_temp_id = {37,28,40,28,74,28,43,28}
for i = 1, #timer_temp_id, 2 do
cmd_timer = "curl " .. '"' .. mon_ip .. "/json.htm?type=command¶m=setsetpoint&idx="..timer_temp_id[i].."&setpoint="..timer_temp_id[i+1] ..'"'
print ("Commande envoyée : " .. cmd_timer)
ret = os.execute (cmd_timer)
end
end
return commandArrayReste plus qu'a créer un Périphérique virtuel de type SELECTEUR et son nom sera le même que dans ce code (Exemple : Mode chauffage)