Bonjour à tous !
Je suis confronté à problème complètement délirent.
J'ai un bout de code qui veut pas fonctionner dans une scène alors qu'il fonctionne très bien dans une autre !!!
voila le bout de code qui fonctionne très bien : (il met à jour le wakeUpTime d'un module)
local device = api.get("/devices")
for i,v in ipairs(device) do
if device[i].id == 48 then
local Value=api.get("/devices/"..device[i].id)
Value.properties.wakeUpTime = 18000
api.put("/devices/"..device[i].id, Value)
end
end
et voila celui qui ne fonctionne pas : (dans une autre scène, plus complexe, que j'ai simplifié pour le sujet...)
local device = api.get("/devices") --liste tous les devices
local typeDevice = {
{type = "com.fibaro.remoteController", zwaveCompany = "ID-RF", up = 0, maxTime = 0},
{type = "com.fibaro.doorSensor", zwaveCompany = "Fibargroup", up = 1, maxTime = 64800},
--je raccourcie la liste...
}
--pour tous les device
for i,v in ipairs(device) do
-- filtre que les device à pile et visible
if device[i].properties.wakeUpTime and device[i].visible == true then
--pour tous les éléments de typeDevice
for j,v in ipairs(typeDevice) do
--si le type et zwaveCompany sont identiques
if device[i].type == typeDevice[j].type
and device[i].properties.zwaveCompany == typeDevice[j].zwaveCompany then
local Value=api.get("/devices/"..device[i].id)
Value.wakeUpTime = typeDevice[j].maxTime
api.put("/devices/"..device[i].id, Value) ------> BLOQUE ICI !!!!
il me dit :
[DEBUG] 11:08:41: [1;31m2017-09-24 11:08:41.463993 [ fatal] Runtime error: [string " return function(composite, ret, encode, sta..."]:4: attempt to call global 'type' (a string value)
J'ai tout essayé et rien y fait...
merci pour vos conseils !!!!