Licht bei ausgelöstem Bewegungssensor in der Nacht schalten

Ich nutze den Bewegungssensor „Philio PHIEPSP05-D - Außen-Bewegungsmelder“, der eine größere Reichweite hat als der „Fibaro Motion Sensor FGMS-001 Gen5“. Ich möchte jetzt ein Lua Script erstellen, bei dem der Bewegungsmelder nur zwischen 22.00 und 08.00 Uhr die Lampe an der Haustür für 90s anschaltet. Leider hat der Philio Sensor keine Lichtsensor, sondern nur den Bewegungssensor.
Mit dem folgenden Script wird die Lampe unabhängig von der Tageszeit geschaltet. Kann mir jemand bitte weiter helfen?!

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

local sourceTrigger = fibaro:getSourceTrigger();
function tempFunc()
local currentDate = os.date("*t");
local startSource = fibaro:getSourceTrigger();
if (
( (string.format("%02d", currentDate.hour) … „:“ … string.format("%02d", currentDate.min) >= „22:00“ ) and(string.format("%02d", currentDate.hour) … „:“ … string.format("%02d", currentDate.min) <= „08:00“) and tonumber(fibaro:getValue(132, „value“)) > 0 )
)
then
fibaro:call(107, „turnOn“);
setTimeout(function()
fibaro:call(107, „turnOff“);
end, 90000)
end

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

local currentDate = os.date("*t");
local startSource = fibaro:getSourceTrigger();
if (
( tonumber(fibaro:getValue(132, „value“)) > 0 )
or
startSource[„type“] == „other“
)
then
fibaro:call(107, „turnOn“);
setTimeout(function()
fibaro:call(107, „turnOff“);
end, 90000)
end
end

Vielen Dank.

hallo @ULi ,

das sollte zirka so funktionieren.
Wenn das mal klappt könnntest du es später noch erweitern, dass statt 22:00 Uhr Sonnenuntergang und statt 08 Uhr Sonnenaufgang genommen wird.

Ich hoffe ich hab mich nirgends vertippt, merkst du aber dann beim ausführen.
Zum testen einfach die Uhrzeiten anpassen, damit das Licht an geht.

Warum schalte ich im Code nur ein und nicht aus?
Das ausschalten überlasse ich dem Modul welches das Licht steuert. Dort in den Parametern kann man einstellen dass das Modul verzögert ausschchaltet.

–[[
%% autostart
%% properties
132 value
%% events
%% globals
–]]

local sourceTrigger = fibaro:getSourceTrigger()
local ostime = os.date("%H:%M", os.time())
local lichtId = tonumber(107) 
local licht_status = tonumber(fibaro:getValue(lichtId, "value"))

-- FUNCTIONS ----------------------------------------------------------------
function Debug(color, message)
  if (debug == '1') then 
    fibaro:debug(string.format('<%s style="color:%s;">%s</%s>', "span", color, message, "span"))
  end
end

-- LOGIC --------------------------------------------------------------------
if (fibaro:countScenes() > 1) then
  fibaro:abort();
end
Debug("green", "Script START by " ..sourceTrigger["type"] .. " " .. ostime )

if ( ostime > '22:00' OR ostime < '08:00' ) then
    if ( licht_status == 0 ) then  
    	Debug("white", "Aussenlicht: AN")
     	fibaro:call(lichtId, "turnOn")
    end
end