Beta 4.511
Posted: 13 Oct 2018, 11:59
Någon som vågat sig på den nya betan?
Jag har inte tryckt på knappen än........
Jag har inte tryckt på knappen än........
Code: Select all
--[[
%% autostart
%% properties
202 value
228 value
292 value
%% globals
--]]
local Hallen = {DoorLock = 373}
local Alicia = {Window = 36}
local Oliver = {Dimmer = 375}
local Elliot = {Dimmer = 274, Elliot_Skrivbord = 300}
local BedRoom = {Sonny_Laddare = 37, Erika_Laddare = 288}
local Farstukvist = {Tak = 276}
local Wc = {Tak = 330}
local Laundry_Room = {Tak = 51}
local Kitchen = {KaffeBryggare = 272, Window = 250, Sink = 322}
local LivingRoom = {Hemma_Bio = 42, Tv = 43, Wii = 44, Bakom_Tv = 45, Bakom_Soffa = 269}
local Garaget = {Pelargon_Bel = 324}
local SENSORS = {Wc = 202, Laundry_Room = 228, Tryckknapp = 292}
local VD = {AllmanBelysning = 240, BarnensBelysning = 193, Garaget_Stolpe = 76,
ThingSpeak = 235, Julgran = 304, TemperaturNu =317, DingDong = 452,
YesterdayKwh = 335, TempVrum = 64, RhVrum = 71, TempOliver = 63,
TempElliot = 62, TemphumAlicia = 296, Lux = 318, TempNorr = 59,
TempHumKrypgrund = 305, TempHumGaraget = 381, TTS = 307,
TemphumMasterBedRoom = 456, TempSoder = 67}
-- ==========================================================
-- GEA : Gestionnaire d'Evénements Automatique
-- v 6.05
-- Créé par Steven en collaboration avec Pepite et Tibahut
-- Remerciement à :
-- tous les utilisateurs/testers/apporteurs d'idées du
-- forum Domotique-fibaro.fr
-- Aux betas testeurs : ADN182, Puni, Basklj, Sonnyboy, Gandalf,
-- drboss, kioneoranga, MAM78, ...
-- ==========================================================
-- v.6.07
-- mod : correction slider {"Slider", <id_mv>, <Label>, <valeur>}
-- mod : Ajout de GEA.getMessageDecorator(msg) pour permettre
-- à l'utilisateur d'ajouter facilement ces propres
-- gsub()
-- mod : add GEA.trad.locale
-- mod : correction usage de la variable globale
-- mod : Multiple {"Portable", <id portable>}
-- add : {"Polling", <id module>}
-- mod : {Popup, ..., sceneID} ajout du numéro de scénario
-- ==========================================================
-- TODO : Popup with scenario
function config()
-- --------------------------------------------------------
-- CONFIGURATON GENERALE
-- --------------------------------------------------------
GEA.checkEvery = 30
GEA.portables = {394}
GEA.globalvariables = "GEA_Tasks"
GEA.batteriesWithRoom = true
GEA.language = "en"
-- GEA.control = true -- controle des lignes au démarrage
-- GEA.debug = true -- afichage de toutes les traces dans la console
-- --------------------------------------------------------
-- "PLUGINS" GEA
-- @Steven décline toute responsabilité d'INSTABILITE de GEA
-- en cas d'utilisation de ces plugins, SUPPORT non ASSURE
-- --------------------------------------------------------
-- Exemple d'option propres à l'utilisateur.
-- Je souhaite être averti s'il y a une détection (ID 112) pendant que
-- je suis en vacances (Variable Globale "Presence" == Vacances)
-- GEA.options.detection = {name="Detection",
-- getValue = function(id_detecteur)
-- return fibaro:getGlobalValue("Presence") == "Vacances" and fibaro:getValue(id_detecteur, "value") ~= "0"
-- end,
-- }
--GEA.add( {"Detection", 112}, -1, "Un mouvement a été détecté pendant mes vacances, le #date# à #time#")
-- --------------------------------------------------------
-- FIN CONFIGURATION GENERALE
-- --------------------------------------------------------
GEA.options.popup = {name="Popup",
optimize = true,
action=function(typepopup,titlepopup,msgpopup,sceneID)
local scene = sceneID or 0 if typepopup=="Info" then content = tools.tostring(GEA.trad.popupinfo) end if typepopup=="Success" then content = tools.tostring(GEA.trad.popupsuccess) end if typepopup=="Warning" then content = tools.tostring(GEA.trad.popupwarning) end if typepopup=="Critical" then content = tools.tostring(GEA.trad.popupcritical) end
local boutons = {{caption=GEA.trad.quit,sceneId=0}}
if (scene ~= 0) then
table.insert(boutons, 1, {caption=GEA.trad.execute, sceneID=scene})
end
HomeCenter.PopupService.publish({title="GEA - "..titlepopup,subtitle = os.date(GEA.trad.date_format .. " - " .. GEA.trad.hour_format),contentTitle = tools.tostring(content),contentBody=GEA.getMessage(msgpopup),img="..img/topDashboard/info.png",type=tools.tostring(typepopup),buttons=boutons})
end
}
end
function setEvents()
-- --------------------------------------------------------
-- LE CODE UTILISATEUR DOIT ALLER ICI
-- --------------------------------------------------------
GEA.add({"Info+", "serverStatus", os.time()-120}, 0, "Box redémarée à #time# le #date#")
GEA.add(true, 0, "GEA Startar #date# à #time#")
GEA.add({"Info", "updateStableAvailable", true }, 24*60*60, "Une nouvelle version est disponible")
GEA.add({"Info", "updateBetaAvailable", true }, 24*60*60, "Une nouvelle version BETA est disponible")
--Barnens belysning
--Starta lamporna när globala variablen är 1.5 eller mindre och klockan är mellan 13:00-18:50 släck vid 19 tiden.
GEA.add({"Global-", "Sun", "200"}, 30, "", {{"Time", "13:00", "18:50"}, {"VirtualDevice", VD["BarnensBelysning"], "1"}})--Tryck på knapp 1 på VD 193
GEA.add(true, 30, "", {{"Time", "19:30", "19:31"}, {"VirtualDevice", VD["BarnensBelysning"], "2"}})--Tryck på knapp 2 på VD 193
GEA.add(true, 30, "", {{"Time", "06:45", "06:46"}, {"turnOff", Elliot["Dimmer"]}})
--Allmänbelysning
GEA.add({"Global-", "Sun", "200"}, 30, "Tänder Belysningen #time#", {{"Time", "13:00", "21:35"}, {"Scenario", 242}})-- 100 på sommaren 200 300 vintern
--GEA.add({"Global-", "Sun", "1.3"}, 30, "", {{"Time", "13:00", "20:00"}, {"Days", "Weekend"}, {"Scenario", 242}})
--UteBelysningen 18 lux slocknade belysningen på vägen
GEA.add({"Global-", "Sun", "18"}, 30, "", {{"turnOn", Farstukvist["Tak"]}, {"VirtualDevice", VD["Garaget_Stolpe"], "1"}})
GEA.add({"Global+", "Sun", "19"}, 30, "", {{"turnOff", Farstukvist["Tak"]}, {"VirtualDevice", VD["Garaget_Stolpe"], "2"}})
-- Tänder Wc vid rörelse och Släcker
GEA.add(SENSORS["Wc"], -1, "", {{"Time", "05:01", "22:30"}, {"Value", Wc["Tak"], 99}})
GEA.add(SENSORS["Wc"], -1, "", {{"Time", "22:31", "05:00"}, {"Value", Wc["Tak"], 30}})
GEA.add(SENSORS["Wc"], 3*60, "", {{"Inverse"}, {"turnOff", Wc["Tak"]}})
-- Tänder Tvättstugan vid rörelse och Släcker
GEA.add(SENSORS["Laundry_Room"], -1, "", {{"Time", "00:00", "23:59"},{"turnOn", Laundry_Room["Tak"]}})
GEA.add(SENSORS["Laundry_Room"], 4*60, "", {{"Inverse"}, {"turnOff", Laundry_Room["Tak"]}})
--Vardagsrummet
--Standby killer Off
GEA.add(true, 30, "", {{"Time", "06:30", "06:31"}, {"turnOn", LivingRoom["Hemma_Bio"]}, {"turnOn", LivingRoom["Tv"]}, {"turnOn", LivingRoom["Wii"]}})
--Standby killer On
GEA.add(true, 30, "", {{"Time", "01:30", "01:31"}, {"turnOff", LivingRoom["Hemma_Bio"]}, {"turnOff", LivingRoom["Tv"]}, {"turnOff", LivingRoom["Wii"]}})
--Köket
GEA.add({"Sensor+", Kitchen["KaffeBryggare"], 50}, 40*60, "Stänger av Kaffebryggaren #time#", {{"turnOff", Kitchen["kaffeBryggare"]}})
--Sovrummet
--Starta laddare
GEA.add(true, 30, "", {{"Time", "02:00", "02:01"}, {"turnOn", BedRoom["Sonny_Laddare"]}, {"turnOn", BedRoom["Erika_Laddare"]}})
--Laddare av
GEA.add(true, 30, "", {{"Time", "06:00", "06:01"}, {"turnOff", BedRoom["Sonny_Laddare"]}, {"turnOff", BedRoom["Erika_Laddare"]}})
--Morgonbelysning om sol är mindre än 200 på sommaren och 300 på vintern
GEA.add({"Global-", "Sun", "200"}, 30, "", {{"Time", "05:30", "12:50"}, {"Days", "Weekday"}, {"turnOn", LivingRoom["Bakom_Soffa"]}, {"turnOn", LivingRoom["Bakom_Tv"]}, {"turnOn", Kitchen["Window"]}, {"VirtualDevice", VD["Julgran"], "1"}})
GEA.add({"Global-", "Sun", "200"}, 30, "", {{"Time", "07:30", "12:50"}, {"Days", "Weekend"}, {"turnOn", LivingRoom["Bakom_Soffa"]}, {"turnOn", LivingRoom["Bakom_Tv"]}, {"turnOn", Kitchen["Window"]}, {"VirtualDevice", VD["Julgran"], "2"}})
GEA.add({"Global+", "Sun", "201"}, 30, "", {{"Time", "05:46", "12:52"}, {"turnOff", LivingRoom["Bakom_Soffa"]}, {"turnOff", LivingRoom["Bakom_Tv"]}, {"turnOff", Kitchen["Window"]}, {"VirtualDevice", VD["Julgran"], "2"}})
--Garaget Belysning pelargoner på & av
GEA.add(true, 30, "", {{"Time", "07:00", "07:01"}, {"turnOn", Garaget["Pelargon_Bel"]}})
GEA.add(true, 30, "", {{"Time", "19:28", "19:29"}, {"turnOff", Garaget["Pelargon_Bel"]}})
--Google Calender
GEA.add(true, 30*60, "", {{"Repeat"},{"Scenario", 292}})
--ThingSpeak
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["ThingSpeak"], "1"}})
--Temperatur.nu
GEA.add(true, 3*60, "", {{"Repeat"},{"VirtualDevice", VD["TemperaturNu"], "1"}})
--Temperatur Vardagsrum
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TempVrum"], "2"}})
--Rh Vardagsrum
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["RhVrum"], "2"}})
--Temperatur Oliver
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TempOliver"], "2"}})
--Temperatur Elliot
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TempElliot"], "2"}})
--Temperatur Norr
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TempNorr"], "2"}})
--Temperatur Söder
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TempSoder"], "2"}})
--Temperatur Alicia
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TemphumAlicia"], "4"}})
--Temperatur MasterBedroom
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TemphumMasterBedRoom"], "4"}})
--Temperatur RH Krypgrund
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TempHumKrypgrund"], "3"}})
--Temperatur RH Garaget
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["TempHumGaraget"], "3"}})
--Lux
GEA.add(true, 5*60, "", {{"Repeat"},{"VirtualDevice", VD["Lux"], "2"}})
--YesterdayKwh
GEA.add(true, 3*60, "", {{"Repeat"},{"VirtualDevice", VD["YesterdayKwh"], "1"}})
-- YesterdayKwh PopUp
GEA.add(true, 30, "", {{"Time", "08:16", "08:17"}, {"Scenario", 293}})
--Ringklocka
GEA.add(SENSORS["Tryckknapp"], -1, "Det ringer på dörren",{{"VirtualDevice", VD["DingDong"], "1"}})
--Ytterdörr
GEA.add(true, 30, "Ytterdörren är nu låst", {{"Time", "21:30", "21:31"}, {"DoorLock",Hallen["DoorLock"],"secure"}})
--AllThingsTalk
GEA.add(true, 3*60, "", {{"Repeat"},{"Scenario", 306}})
-- Earth Hour - Datum fram till 2020.
-- Notis via push och via Sonos om att Earth Hour börjar om 30 min.
GEA.add ({{"Dates", "24/03/2018"}, {"Dates", "30/03/2019"}, {"Dates", "28/03/2020"}, {"Time", "20:00"}}, 30, "Earth Hour börjar om 30 minuter. Förbered levande ljus ifall ni vill se något i mörkret :)", {"VirtualDevice", VD["TTS"], "3"})
-- Påbörjar Earth Hour. Släcker alla lampor, pushar ut notis på mobiler och Sonos.
GEA.add ({{"Dates", "24/03/2018"}, {"Dates", "30/03/2019"}, {"Dates", "28/03/2020"}, {"Time", "20:30"}}, 30, "Earth Hour påbörjad. Avslutas 21:30.", {{"VirtualDevice", VD["AllmanBelysning"], "2"}, {"VirtualDevice", VD["TTS"], "4"}, {"turnOff", Farstukvist["Tak"]}, {"VirtualDevice", VD["Garaget_Stolpe"], "2"}})
-- Earth Hour slut och belysningen tänds
GEA.add ({{"Dates", "24/03/2018"}, {"Dates", "30/03/2019"}, {"Dates", "28/03/2020"}, {"Time", "21:30"}}, 30, "Earth Hour avslutad. Lamporna tänds.", {{"VirtualDevice", VD["AllmanBelysning"], "1"}, {"turnOn", Farstukvist["Tak"]}, {"VirtualDevice", VD["Garaget_Stolpe"], "1"}})
Code: Select all
-- Tänder Wc vid rörelse och Släcker
GEA.add({SENSORS["Wc"],{"Time", "05:01", "22:30"}}, -1, "", {"Value", Wc["Tak"], 99})
GEA.add({SENSORS["Wc"],{"Time", "22:31", "05:00"}}, -1, "", {"Value", Wc["Tak"], 30})
GEA.add(SENSORS["Wc"], 3*60, "", {{"Inverse"}, {"turnOff", Wc["Tak"]}})
Code: Select all
tools.info(string.format(GEA.trad.gea_global_create, GEA.pluginsvariables), "yellow") -- nouvelle ligne
Code: Select all
if (tools.isNil(fibaro:getGlobalValue(GEA.pluginsvariables))) then api.post("/globalVariables", {name=GEA.pluginsvariables, isEnum=0}) end