Nabend,
ich möchte bei mehreren Hue Lampen, je nach deren Status, dass diese auf ein Blinklicht umschalten und wieder zurückgehen oder sich anschalten und wieder ausgehen.
Grundsätzlich geht es, viele Hue Lampen vorher zu definieren (local lightID = {XX, XX}) und diese umzuschalten und nach Ereignis wieder zurück zum “Normalwert” bzw. anzuschalten und dann wieder auszuschalten. Mein Problem ist, wenn nun bei 2 Lampen die Erste an ist und Zweite aus ist, funktioniert das Ganze nicht mehr.
Ich kann natürlich für jede Hue einzeln das Ganze definieren, so dass diese Zustände sich nicht ins Gehege kommen, ist aber ganz schön umständlich.
Nachstehend mal in Lua was ich meine:
local lightID = {XX, XX}
if (tonumber(fibaro:getValue(lightID[1], "on")) == 1) --wenn Hue bereits an dann Licht umschalten
then
for i=1, #lightID do
fibaro:call(lightID[i], "changeSaturation", 255)
fibaro:call(lightID[i], "changeBrightness", 255)
fibaro:call(lightID[i], "changeHue", 65535) -- rot
end
fibaro:sleep(5*1000)
for i=1, #lightID do
fibaro:call(lightID[i], "changeSaturation", 255)
fibaro:call(lightID[i], "changeBrightness", 255)
fibaro:call(lightID[i], "turnOn")
fibaro:call(lightID[i], "changeHue", 44309) -- blau
end
fibaro:sleep(5*1000)
for i=1, #lightID do
fibaro:call(lightID[i], "changeSaturation", 212)
fibaro:call(lightID[i], "changeBrightness", 255)
fibaro:call(lightID[i], "changeHue", 26241) -- grün
fibaro:call(lightID[i], "turnOn")
end
fibaro:sleep(5*100)
for i=1, #lightID do
fibaro:call(lightID[i], "changeSaturation", 140)
fibaro:call(lightID[i], "changeBrightness", 255)
fibaro:call(lightID[i], "changeHue", 8418) -- warmweiß - Normallicht
fibaro:call(lightID[i], "turnOn")
end
else --andernfalls Licht an
for i=1, #lightID do
fibaro:call(lightID[i], "changeSaturation", 255)
fibaro:call(lightID[i], "changeBrightness", 255)
fibaro:call(lightID[i], "turnOn")
fibaro:call(lightID[i], "changeHue", 65535) -- rot
end
fibaro:sleep(5*1000)
for i=1, #lightID do
fibaro:call(lightID[i], "changeSaturation", 255)
fibaro:call(lightID[i], "changeBrightness", 255)
fibaro:call(lightID[i], "turnOn")
fibaro:call(lightID[i], "changeHue", 44309) -- blau
end
fibaro:sleep(5*1000)
for i=1, #lightID do
fibaro:call(lightID[i], "changeSaturation", 212)
fibaro:call(lightID[i], "changeBrightness", 255)
fibaro:call(lightID[i], "changeHue", 26241) -- grün
fibaro:call(lightID[i], "turnOn")
end
fibaro:sleep(5*100)
for i=1, #lightID do
fibaro:call(lightID[i], "changeSaturation", 140)
fibaro:call(lightID[i], "changeBrightness", 255)
fibaro:call(lightID[i], "changeHue", 8418) -- warmweiß - Normallicht
fibaro:call(lightID[i], "turnOn")
end
fibaro:sleep(200) --Wartezeit für Wechsel auf Normallicht
for i=1, #lightID do
fibaro:call(lightID[i], "turnOff")
end
end
Einer einen Plan, ob das umzusetzen ist ohne jede Lampe einzeln aufzunehmen und zu sagen, wenn an dann dass oder wenn aus dann das?