Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- --[[
- %% autostart
- %% properties
- %% weather
- %% events
- %% globals
- alarmanlage_scharf
- --]]
- local startSource = fibaro:getSourceTrigger();
- local alarmanlagestatus = tonumber(fibaro:getGlobalValue("alarmanlage_scharf"));
- local window_ids = fibaro:getDevicesId({type = "com.fibaro.windowSensor"});
- local door_ids = fibaro:getDevicesId({type = "com.fibaro.doorSensor"});
- local device_ids_zone_1 = {39,415,387};
- local device_ids_zone_2 = {39,48,51,124,127,133,136,139,419,466};
- local error_zone_1 = '';
- local error_zone_2 = '';
- -- RGBW Config wenn alles okay
- local RGBW_Brightness = 100;
- local RGBW_setColor_r = 0;
- local RGBW_setColor_g = 255;
- local RGBW_setColor_b = 0;
- local RGBW_setColor_w = 0;
- Show_Debug = function ( color, message )
- fibaro:debug(string.format('<%s style="color:%s;">%s', "span", color, message, "span"))
- end
- Show_Debug('white','Variable alarmanlage_schart wurde auf '..alarmanlagestatus..' geschaltet');
- if (alarmanlagestatus == 0 )
- then
- Show_Debug('white','Alarmanlage aktiviert starte prüfung Fenster & Türen');
- Show_Debug('white','Starte Prüfung Zone 1');
- for i, device_id in pairs( device_ids_zone_1 ) do
- if(tonumber(fibaro:getValue(device_id,'value')) == 0)
- then
- Show_Debug("green", "Fenster Sensor: "..device_id.." Name: " .. fibaro:getName(device_id).." im Raum "..fibaro:getRoomName( fibaro:getRoomID(device_id) ).." ist geschlossen")
- else
- error_zone_1 = ''..fibaro:getRoomName( fibaro:getRoomID(device_id) )..',';
- Show_Debug("red", "Fenster Sensor: "..device_id.." Name: " .. fibaro:getName(device_id).." im Raum "..fibaro:getRoomName( fibaro:getRoomID(device_id) ).." ist geöffnet!")
- end
- end
- Show_Debug('white','Starte Prüfung Zone 2');
- for i, device_id in pairs( device_ids_zone_2 ) do
- if(tonumber(fibaro:getValue(device_id,'value')) == 0)
- then
- Show_Debug("green", "Fenster Sensor: "..device_id.." Name: " .. fibaro:getName(device_id).." im Raum "..fibaro:getRoomName( fibaro:getRoomID(device_id) ).." ist geschlossen")
- else
- error_zone_2 = ''..fibaro:getRoomName( fibaro:getRoomID(device_id) )..',';
- Show_Debug("red", "Fenster Sensor: "..device_id.." Name: " .. fibaro:getName(device_id).." im Raum "..fibaro:getRoomName( fibaro:getRoomID(device_id) ).." ist geöffnet!")
- end
- end
- if(error_zone_1 ~= '' or error_zone_2 ~= '')
- then
- Show_Debug("red",'Mindests ein Fenster sind geöffnet');
- if(error_zone_1 ~= '')
- then
- Show_Debug("red",'In Zone 1 ist in folgendem Raum ein Fehler: '..error_zone_1..'');
- RGBW_Brightness = 100;
- RGBW_setColor_r = 255;
- RGBW_setColor_g = 0;
- RGBW_setColor_b = 0;
- RGBW_setColor_w = 0;
- end
- if(error_zone_2 ~= '')
- then
- if(RGBW_setColor_r == 255)
- then
- -- Wenn Zone 1 schon was hat setze Wert auf Orange !
- RGBW_Brightness = 100;
- RGBW_setColor_r = 255;
- RGBW_setColor_g = 32;
- RGBW_setColor_b = 0;
- RGBW_setColor_w = 0;
- else
- -- Wenn nur Zone 2 setze wert auf Gelb
- RGBW_Brightness = 100;
- RGBW_setColor_r = 255;
- RGBW_setColor_g = 118;
- RGBW_setColor_b = 0;
- RGBW_setColor_w = 0;
- end
- Show_Debug("red",'In Zone 2 ist in folgendem Raum ein Fehler: '..error_zone_2..'');
- end
- end
- Show_Debug('White','Setze RGBW Stripe auf folgende werte: Helligkeit: '..RGBW_Brightness..' R: '..RGBW_setColor_r..' G: '..RGBW_setColor_g..' B: '..RGBW_setColor_b..' W: '..RGBW_setColor_w..' ')
- fibaro:call(579, "setBrightness", RGBW_Brightness);
- fibaro:call(579, "setColor", RGBW_setColor_r,RGBW_setColor_g,RGBW_setColor_b,RGBW_setColor_w);
- fibaro:call(579,'turnOn');
- fibaro:sleep( 10*1000);
- Show_Debug('White','RGBW wieder ausschalten');
- fibaro:call(579,'turnOff');
- else
- Show_Debug('white','Alarmanlage deaktiviert');
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement