Szene mit Tastdruck überschreiben

Hallo, ich habe bei mir das Problem das meine Szenen mit meiner Frau manchmal nicht ganz einig sind.
Jetzt möchte sie die Rolladen runter machen, die programmierte Szene sagt aber es ist noch nicht zeit.
Wenn sie also den Rolladen Taster betätigt und die Rolladen runter macht gehen sie nach kurzer Zeit wieder hoch.
Kann man hier was einbauen das sie z.B. nur bei Sturm wieder hoch gehen oder so??
Vielen Dank mal wieder im Vorraus für eure Hilfe

Gruß MIcha

Warum denkt den jeder dass wir hier Glaskugeln benutzen um Probleme zu erkennen und zu lösen.?
Hättest Du den Code hier angehängt, hätte Dir wahrscheinlich schon jemand geholfen.
Und bitte in Code Tags einbetten.

–[[
%% autostart
%% properties
373 value
%% weather
%% events
%% globals
–]]

local sourceTrigger = fibaro:getSourceTrigger();
function tempFunc()
local currentDate = os.date("t");
local startSource = fibaro:getSourceTrigger();
if (
( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and os.date("%H:%M", os.time()-30
60) == fibaro:getValue(1, “sunsetHour”)) and tonumber(fibaro:getValue(373, “value”)) < 25 )
)
then
fibaro:call(290, “close”);
fibaro:call(293, “close”);
fibaro:call(296, “close”);
fibaro:call(299, “close”);
fibaro:call(363, “setValue”, “30”);
fibaro:call(355, “close”);
fibaro:call(377, “close”);
fibaro:call(380, “close”);
end

setTimeout(tempFunc, 60*1000)
end
if (sourceTrigger[“type”] == “autostart”) then
tempFunc()
else

local currentDate = os.date("*t");
local startSource = fibaro:getSourceTrigger();
if (
( (currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and tonumber(fibaro:getValue(373, “value”)) < 25 )
or
startSource[“type”] == “other”
)
then
fibaro:call(290, “close”);
fibaro:call(293, “close”);
fibaro:call(296, “close”);
fibaro:call(299, “close”);
fibaro:call(363, “setValue”, “30”);
fibaro:call(355, “close”);
fibaro:call(377, “close”);
fibaro:call(380, “close”);
end

end

Das ist meine Szene um die Rolläden zu schließen aber dies lässt sich zwar mit dem Tastedruck kurz überschreiben aber sobald die Szenen wieder geprüft wird werden die Rollos wieder geöffnet.

Wenn etwas die Rollläden wieder öffnet, dann bestimmt nicht diese Szene. Hier werden die Rollläden nur geschlossen.
Außerdem ist die if Bedingung in der Function ein bisschen wackelig. Ich vermute das 373 ein Lichtsensor oder Temperatursensor ist?
Die Bedingung ist nur erfüllt wenn die Zeit gleich dem Sonnenuntergang ist und gleichzeitig der Wert von 373 kleiner als 25 ist. Das muss ja nicht immer sein.

Guten Morgen,
Stimmt du hast recht, da dies ja nur die Szene ist die die Rolläden zu macht für das öffnen hab eich eine extra Szene.
Die Szene ist so gedacht das wenn die mindestens 30 Minuten nach Sonnenaufgang und Luxsensor größer 1000 Lux dann rolladen öffnen bzw. beim Schließen mindestens 30 Minuten nach Sonnenuntergang und Lux Sensor kleiner 25 Lux dann schließen. So war der Gedanke :frowning:

HIer die Szene die mir immer rein funkt wenn ich Tagsüber beschatten möchten und von Hand die Rolladen zu mache.

–[[
%% autostart
%% properties
373 value
%% weather
%% events
%% globals
–]]

local sourceTrigger = fibaro:getSourceTrigger();
function tempFunc()
local currentDate = os.date("*t");
local startSource = fibaro:getSourceTrigger();
if (
( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and string.format("%02d", currentDate.hour) … “:” … string.format("%02d", currentDate.min) == fibaro:getValue(1, “sunriseHour”)) and tonumber(fibaro:getValue(373, “value”)) > 60 )
)
then
fibaro:call(290, “open”);
fibaro:call(293, “open”);
fibaro:call(296, “open”);
fibaro:call(299, “open”);
fibaro:call(355, “open”);
end

setTimeout(tempFunc, 60*1000)
end
if (sourceTrigger[“type”] == “autostart”) then
tempFunc()
else

local currentDate = os.date("*t");
local startSource = fibaro:getSourceTrigger();
if (
( (currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and tonumber(fibaro:getValue(373, “value”)) > 60 )
or
startSource[“type”] == “other”
)
then
fibaro:call(290, “open”);
fibaro:call(293, “open”);
fibaro:call(296, “open”);
fibaro:call(299, “open”);
fibaro:call(355, “open”);
end

end

Gruß MIcha

Hi,
das Problem ist der Luxsensor, der jedes mal wenn eine Veränderung des Luxwert ensteht die Szene triggert und dann gehen die Rollläden auf. Am besten entfernen oder auf eine fertige Szene hier aus dem Forum umsteigen.

Da stimme ich Jeep voll und ganz zu.