enfin la page 3 pour la suite
-------------------
-- Etage
-------------------
-- Hall de Nuit
-- Lampe SdJ
-- Extinction automatique de la lampe après 30s.
local autoOffSdJ = GEA.add ({DeviceID["LUM_HALLNUIT_SDJ"], auth_LumInterieur, pasIncendie}, 31, "", {{"turnOff", DeviceID["LUM_HALLNUIT_SDJ"]}, {"NotStarted"}})
-- Appuie sur l'interrupteur de la lampe, on stoppe l'extinction automatique.
GEA.add (DeviceID["LUM_HALLNUIT_SDJ"], -1, "", {{"StopTask", autoOffSdJ}})
-- Allumage de la lampe sur détection mouvement
GEA.add ({DeviceID["MVT_HALLNUIT_SDJ"], auth_LumInterieur, estNuit, {"Value", DeviceID["LUM_HALLNUIT_SDJ"], 0}}, -1, "", {{"turnOn", DeviceID["LUM_HALLNUIT_SDJ"]}, {"RestartTask", autoOffSdJ}})
-- Extinction de la lampe dans tous les cas après 10 min
GEA.add ({DeviceID["ALARME_ACTIVE"], DeviceID["LUM_HALLNUIT_SDJ"], pasIncendie}, 10*60, "Extinction du Hall de Nuit SdJ, car allumée depuis #duration#. (#date# à#time#)", {{"Inverse"}, {"turnOff", DeviceID["LUM_HALLNUIT_SDJ"]}, {"Email", UserID["Vincent"], "ALERTE - Lumière Hall de Nuit"}})
-- Lampe SdB
-- Extinction automatique de la lampe après 20s.
local autoOffSdB = GEA.add ({DeviceID["LUM_HALLNUIT_SDB"], auth_LumInterieur, pasIncendie}, 20, "", {{"turnOff", DeviceID["LUM_HALLNUIT_SDB"]}, {"NotStarted"}})
-- Appuie sur l'interrupteur de la lampe, on stoppe l'extinction automatique.
GEA.add (DeviceID["LUM_HALLNUIT_SDB"], -1, "", {{"StopTask", autoOffSdB}})
-- Allumage de la lampe sur détection mouvement
GEA.add ({DeviceID["MVT_HALLNUIT_SDB"], auth_LumInterieur, estNuit, {"Value", DeviceID["LUM_HALLNUIT_SDB"],0}}, -1, "", {{"turnOn", DeviceID["LUM_HALLNUIT_SDB"]}, {"RestartTask", autoOffSdB}})
-- Extinction de la lampe dans tous les cas après 10 min
GEA.add ({DeviceID["ALARME_ACTIVE"], DeviceID["LUM_HALLNUIT_SDB"], pasIncendie}, 10*60, "Extinction du Hall de Nuit SdB, car allumée depuis #duration#. (#date# à#time#)", {{"Inverse"}, {"turnOff", DeviceID["LUM_HALLNUIT_SDB"]}, {"Email", UserID["Vincent"], "ALERTE - Lumière Hall de Nuit"}})
-- SdB Etage
-- VMC Authorisé
GEA.add (true, 1, "", {{"Time", "08:00", "12:00"}, {"VirtualDevice", DeviceID["VAR_AUTH_VMCETAGE"], 3}})
-- VMC Interdit
GEA.add (true, 1, "", {{"Time", "23:30", "03:30"}, {"VirtualDevice", DeviceID["VAR_AUTH_VMCETAGE"], 4}})
-- VMC On
GEA.add ({DeviceID["ALARME_ACTIVE"], DeviceID["LUM_SDBETAGE"], auth_VMCEtage, pasIncendie, {"Value", DeviceID["VMC_ETAGE"], 0}}, 2*60, "", {{"Inverse"}, {"turnOn", DeviceID["VMC_ETAGE"]}})
-- VMC Off
GEA.add ({DeviceID["LUM_SDBETAGE"], DeviceID["VMC_ETAGE"]}, 20*60, "", {{"Inverse"}, {"turnOff", DeviceID["VMC_ETAGE"]}})
-- extinction automatique après 1 heure
GEA.add (DeviceID["LUM_SDBETAGE"], 60*60, "Extinction automatique de la lumière de la salle de bains étage car allumée depuis #duration#. (#date# à#time#)", {{"turnOff", DeviceID["LUM_SDBETAGE"]}, {"Email", UserID["Vincent"], "ALERTE - Salle de Bains Etage"}})
-- Bibliothèque
-- PS3
GEA.add ({DeviceID["PRISE_PS3"], inter_PS3}, -1, "La PS3 a été allumée, alors que en mode interdit => extinction. (#date# à#time#)", {{"turnOff", DeviceID["PRISE_PS3"]}, {"Email", UserID["Vincent"], "ALERTE - PS3"}})
GEA.add ({DeviceID["PRISE_PS3"], auth_PS3}, -1, "La PS3 a été allumée. (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - PS3"}})
GEA.add ({DeviceID["PRISE_PS3"], auth_PS3}, -1, "La PS3 a été éteinte. (#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "INFO - PS3"}})
GEA.add ({inter_PS3, DeviceID["PRISE_PS3"]}, -1 , "PS3 en mode interdit => extinction. (#date# à#time#)", {{"turnOff", DeviceID["PRISE_PS3"]}, {"Email", UserID["Vincent"], "ALERTE - PS3"}})
-- PS3 not used
GEA.add ({{"Sensor-", DeviceID["PRISE_PS3"], 40}, DeviceID["PRISE_PS3"]}, 15*60, "La PS3 a été éteinte, car consommation = #value#W < 40W depuis #duration#. (#date# à#time#)", {{"turnOff", DeviceID["PRISE_PS3"]}, {"Email", UserID["Vincent"], "ALERTE - PS3"}})
-------------------
-- Sous-sol
-------------------
-- Chaufferie
--[[
-- Notifications : Panneaux de Chauffage, circulateurs, chaudière
GEA.add ({DeviceID["THERM_BUREAU"], {"Value+", DeviceID["TMP_BUREAU"], 0}}, 1, "Panneau Bureau ON. \nTempérature : #value[2]#°C. \n(#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["THERM_BUREAU"], {"Value+", DeviceID["TMP_BUREAU"], 0}}, 1, "Panneau Bureau OFF. \nTempérature : #value[2]#°C. \n(#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["THERM_CHENFANTS"], {"Value+", DeviceID["TMP_MAXIMILIEN"], 0}}, 1, "Panneau Ch Enfants ON. \nTempérature : #value[2]#°C. \n(#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["THERM_CHENFANTS"], {"Value+", DeviceID["TMP_MAXIMILIEN"], 0}}, 1, "Panneau Ch Enfant OFF. \nTempérature : #value[2]#°C. \n(#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["THERM_SDBETAGE"], {"Value+", DeviceID["TMP_SDBETAGE"], 0}}, 1, "Panneau SdB Etage ON. \nTempérature : #value[2]#°C. \n(#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["THERM_SDBETAGE"], {"Value+", DeviceID["TMP_SDBETAGE"], 0}}, 1, "Panneau SdB Etage OFF. \nTempérature : #value[2]#°C. \n(#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["CIRCULATEUR_REZ"], {"Value+", DeviceID["TMP_SDBREZ"], 0}, {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Panneau SdB Rez ON / Circulateur Rez ON. \nTempérature SdB Rez : #value[2]#°C. \nTempérature Ballon Tisun : #value[3]#°C. \n(#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["CIRCULATEUR_REZ"], {"Value+", DeviceID["TMP_SDBREZ"], 0}, {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Panneau SdB Rez OFF / Circulateur Rez OFF. \nTempérature SdB Rez : #value[2]#°C. \nTempérature Ballon Tisun : #value[3]#°C. \n(#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["CIRCULATEUR_ETAGE"], {"Value+", DeviceID["TMP_SDJ"], 0}, {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Circulateur Etage ON. \nTempérature SdJ : #value[2]#°C. \nTempérature Ballon Tisun : #value[3]#°C. \n(#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["CIRCULATEUR_ETAGE"], {"Value+", DeviceID["TMP_SDJ"], 0}, {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Circulateur Etage OFF. \nTempérature SdJ : #value[2]#°C. \nTempérature Ballon Tisun : #value[3]#°C. \n(#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["CHAUDIERE_OUTPUT"], {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Chaudière ON. \nTempérature Ballon Tisun : #value[2]#°C. \n(#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Chauffage"}})
GEA.add ({DeviceID["CHAUDIERE_OUTPUT"], {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Chaudière OFF. \nTempérature Ballon Tisun : #value[2]#°C. \n(#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "INFO - Chauffage"}})
--]]
-- Circulateur Etage ON
GEA.add ({DeviceID["CIRCULATEUR_ETAGE"], DeviceID["THERM_BUREAU"]}, 1, "", {{"Inverse"}, {"turnOn", DeviceID["CIRCULATEUR_ETAGE"]}})
GEA.add ({DeviceID["CIRCULATEUR_ETAGE"], DeviceID["THERM_CHENFANTS"]}, 1, "", {{"Inverse"}, {"turnOn", DeviceID["CIRCULATEUR_ETAGE"]}})
GEA.add ({DeviceID["CIRCULATEUR_ETAGE"], DeviceID["THERM_SDBETAGE"]}, 1, "", {{"Inverse"}, {"turnOn", DeviceID["CIRCULATEUR_ETAGE"]}})
GEA.add ({DeviceID["CIRCULATEUR_ETAGE"], DeviceID["THERM_SDJ"]}, 1, "", {{"Inverse"}, {"turnOn", DeviceID["CIRCULATEUR_ETAGE"]}})
GEA.add ({DeviceID["CIRCULATEUR_ETAGE"], DeviceID["THERM_BIBLIOTHEQUE"]}, 1, "", {{"Inverse"}, {"turnOn", DeviceID["CIRCULATEUR_ETAGE"]}})
-- Circulateur Etage OFF
GEA.add ({{"Value", DeviceID["THERM_BUREAU"], 0}, {"Value", DeviceID["THERM_CHENFANTS"], 0}, {"Value", DeviceID["THERM_SDBETAGE"], 0}, {"Value", DeviceID["THERM_SDJ"], 0}, {"Value", DeviceID["THERM_BIBLIOTHEQUE"], 0}, DeviceID["CIRCULATEUR_ETAGE"]}, 1, "", {{"turnOff", DeviceID["CIRCULATEUR_ETAGE"]}})
-- Chaudière ON
GEA.add ({DeviceID["CHAUDIERE_OUTPUT"], DeviceID["CHAUDIERE_CMD"], estECS, {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Chaudière AUTORISEE car ECS. \nTempérature ballon Tisun : #value[4]#°C. \n(#date# à#time#)", {{"Inverse"}, {"turnOn", DeviceID["CHAUDIERE_OUTPUT"]}})
GEA.add ({DeviceID["CHAUDIERE_OUTPUT"], DeviceID["CHAUDIERE_CMD"], DeviceID["CIRCULATEUR_REZ"], {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Chaudière AUTORISEE car Circulateur Rez. \nTempérature ballon Tisun : #value[4]#°C. \n(#date# à#time#)", {{"Inverse"}, {"turnOn", DeviceID["CHAUDIERE_OUTPUT"]}})
GEA.add ({DeviceID["CHAUDIERE_OUTPUT"], DeviceID["CHAUDIERE_CMD"], DeviceID["CIRCULATEUR_ETAGE"], {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Chaudière AUTORISEE car Circulateur Etage. \nTempérature ballon Tisun : #value[4]#°C. \n(#date# à#time#)", {{"Inverse"}, {"turnOn", DeviceID["CHAUDIERE_OUTPUT"]}})
-- Chaudière OFF
GEA.add ({pasECS, {"Value", DeviceID["CIRCULATEUR_REZ"], 0}, {"Value", DeviceID["CIRCULATEUR_ETAGE"], 0}, DeviceID["CHAUDIERE_OUTPUT"], {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Chaudière INTERDITE (car pas de demande dans la maison). \nTempérature ballon Tisun : #value[5]#°C. \n(#date# à#time#)", {{"turnOff", DeviceID["CHAUDIERE_OUTPUT"]}})
GEA.add ({DeviceID["CHAUDIERE_CMD"], {"Value+", DeviceID["TMP_TISUN"], 0}}, 1, "Chaudière INTERDITE (car pas de demande par Solaire). \nTempérature ballon Tisun : #value[2]#°C. \n(#date# à#time#)", {{"Inverse"}, {"turnOff", DeviceID["CHAUDIERE_OUTPUT"]}})
-- Panneaux Solaires Tisun
-- si température inchangée, notification
GEA.add ({{"Function", function() return checktempT() end}, {"Value+", DeviceID["TMP_TISUN"], 0}}, 4*60, "Pas de modification de la température ballon Tisun (#value[2]#°C) depuis #duration#. (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - TMP_TISUN"}, {"Repeat"}})
-- Cave àvin
-- Porte Ouverte
GEA.add({{"Dead", DeviceID["PORTE_CAVEAVIN"]}, DeviceID["PORTE_CAVEAVIN"]}, 5*60, "La porte de la cave àvin est ouverte depuis #duration#. (#date# à#time#)", {{"Inverse"}, {"Portable", MobileID["V_Nexus5"]}})
GEA.add({{"Dead", DeviceID["PORTE_CAVEAVIN"]}, DeviceID["PORTE_CAVEAVIN"]}, 5*60, "La porte de la cave àvin est ouverte depuis #duration#. (#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "ALERTE - Porte cave àvin ouverte"}, {"Repeat"}})
-- Température Cave àvin
GEA.add ({"Value+", DeviceID["TMP_CAVEAVIN"], 15}, 3*60*60, "La température de la cave àvin est de #value# °C depuis #duration#. (#date# à#time#)", {{"VirtualDevice", DeviceID["TECHNICAL"], 5}, {"Function", function() AlarmeCaveAVin = "Alarm" end}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALERTE - température cave àvin"}})
GEA.add ({"Value+", DeviceID["TMP_CAVEAVIN"], 15}, 24*60*60, "La température de la cave àvin est de #value# °C depuis #duration#. (#date# à#time#)", {{"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALERTE - température cave àvin"}, {"Repeat"}})
GEA.add ({{"Value-", DeviceID["TMP_CAVEAVIN"], 14}, {"Function", function() if AlarmeCaveAVin == "Alarm" then return true end end}}, 10*60, "La température de la cave àvin est revenue à#value# °C depuis #duration#. (#date# à#time#)", {{"VirtualDevice", DeviceID["TECHNICAL"], 4}, {"Function", function() AlarmeCaveAVin = "Safe" end}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALERTE - température cave àvin"}})
-- Pompe eau de pluie
GEA.add ({{"Sensor+", DeviceID["PRISE_PMPEAUPLUIE"], 100}, pasRemplPiscine, {"Value-", DeviceID["NIVEAU_EAU_PLUIE"], 99999}}, 10*60, "Vérifier la pompe eau de pluie. \nElle est allumée (#value#W) en continu depuis #duration#. \nArrêt de la pompe. \n=> Passage des toilettes et machine àlaver sur eau de ville.\nLe niveau de la citerne d eau de pluie est de #value[3]#L.\n(#date# à#time#)",{{"turnOff", DeviceID["PRISE_PMPEAUPLUIE"]}, {"Email", UserID["Vincent"], "ALERTE - Pompe eau de pluie"}})
GEA.add ({DeviceID["PRISE_PMPEAUPLUIE"], {"Value+", DeviceID["NIVEAU_EAU_PLUIE"], 2000}}, 10*60, "Vérifier la pompe eau de pluie. \nElle est éteinte et le niveau de la citerne d eau de pluie est de #value[2]#L. \n=> Redémarrez manuellement la pompe et passez les toilettes et la machine àlaver sur eau de pluie.\n(#date# à#time#)",{{"Inverse"}, {"Email", UserID["Vincent"], "ALERTE - Pompe eau de pluie"}})
-------------------
-- Extérieur
-------------------
-- Avant
-- éclairage AVANT si ouverture barrière
GEA.add ({DeviceID["BARRIERE_CLOSED"], estNuit, {"value", DeviceID["LUM_AVANT"], 0}}, -1, "TurnOn Lumière avant (ouverture de la barrière). (#date# à#time#)", {{"turnOn", DeviceID["LUM_AVANT"]}})
-- éclairage si détection de mouvement la nuit
GEA.add ({DeviceID["MVT_OUEST_AVANT"], estNuit, {"value", DeviceID["LUM_AVANT"], 0}}, -1, "TurnOn Lumière avant (détecteur Ouest). (#date# à#time#)", {{"turnOn", DeviceID["LUM_AVANT"]}})
GEA.add ({DeviceID["MVT_EST_AVANT"], estNuit, {"value", DeviceID["LUM_AVANT"], 0}}, -1, "TurnOn Lumière avant (détecteur Est). (#date# à#time#)", {{"turnOn", DeviceID["LUM_AVANT"]}})
-- éclairage si détection de mouvement en vacances
for _,v in ipairs(groupeLampesExt) do
GEA.add ({DeviceID["MVT_OUEST_AVANT"], estVacances, {"value", v, 0}}, -1, "On allume toutes les lampes extérieures. (#date# à#time#)", {{"turnOn", v}})
end
for _,v in ipairs(groupeLampesExt) do
GEA.add ({DeviceID["MVT_EST_AVANT"], estVacances, {"value", v, 0}}, -1, "On allume toutes les lampes extérieures. (#date# à#time#)", {{"turnOn", v}})
end
-- Extinction si plus de mouvement la nuit
GEA.add ({DeviceID["LUM_AVANT"], {"value", DeviceID["MVT_EST_AVANT"], 0}, {"value", DeviceID["MVT_OUEST_AVANT"], 0}, pasIncendie}, 61, "TurnOff Lumière avant si plus de mouvement. (#date# à#time#)", {{"turnOff", DeviceID["LUM_AVANT"]}})
-- Extinction de la lampe dans tous les cas après 10 min
GEA.add ({pasIncendie, DeviceID["LUM_AVANT"]}, 10*60, "TurnOff Lumière avant, car allumé depuis #duration#. (#date# à#time#)", {{"turnOff", DeviceID["LUM_AVANT"]}, {"Email", UserID["Vincent"], "ALERTE - Lumière Extérieure Avant"}})
-- Boite aux lettres
GEA.add (DeviceID["BOITELETTRES_FACTEUR"], 1, "Le facteur est passé. (#date# à#time#)", {{"VirtualDevice", DeviceID["COURRIER"], 3}, {"Email", UserID["Vincent"], "INFO - Courrier"}})
---GEA.add (DeviceID["BOITELETTRES_FACTEUR"], 1, "", {{"Time", "08:00", "22:00"}, {"VirtualDevice", DeviceID["SONOS_MP3"], 5}})
GEA.add ({DeviceID["ALARME_ACTIVE"], {"Global", "Courrier", "Oui"}}, 31, "Il y a du courrier dans la boite aux lettres. (#date# à#time#)",{{"Inverse"}, {"Time", "08:00", "20:00"}, {"VirtualDevice", DeviceID["SONOS_MP3"], 6}})
GEA.add ({DeviceID["BOITELETTRES_PORTE"], {"Global", "Courrier", "Oui"}}, 1, "Le courrier a été relevé. (#date# à#time#)", {{"VirtualDevice", DeviceID["COURRIER"], 4}, {"Email", UserID["Vincent"], "INFO - Courrier"}})
GEA.add ({DeviceID["BOITELETTRES_PORTE"], {"Global", "Courrier", "Oui"}}, 1, "Le courrier a été relevé. (#date# à#time#)", {{"Inverse"}, {"VirtualDevice", DeviceID["COURRIER"], 4}, {"Email", UserID["Vincent"], "INFO - Courrier"}})
-- Portillon
GEA.add (DeviceID["CONTACT_GACHE"], -1, "", {{"Inverse"}, {"turnOn", DeviceID["BOUTON_GACHE"]}})
-- Icône status barrière
-- garder le code du VD (bouton Refresh #4) pour pouvoir remplacer GEA et mettre àjour au redémarrage de la box
GEA.add ({DeviceID["BARRIERE_CLOSED"], {"value", DeviceID["BARRIERE_OPENED"], 0}}, -1, "Barrière fermée", {{"Inverse"}, {"VirtualDevice", DeviceID["STAT_BARRIERE"], 3}})
GEA.add ({DeviceID["BARRIERE_CLOSED"], {"value", DeviceID["BARRIERE_OPENED"], 0}}, -1, "Barrière en ouverture", {{"VirtualDevice", DeviceID["STAT_BARRIERE"], 2}})
GEA.add ({DeviceID["BARRIERE_OPENED"], DeviceID["BARRIERE_CLOSED"]}, -1, "Barrière ouverte", {{"VirtualDevice", DeviceID["STAT_BARRIERE"], 1}})
GEA.add ({DeviceID["BARRIERE_OPENED"], DeviceID["BARRIERE_CLOSED"]}, -1, "Barrière en fermeture", {{"Inverse"}, {"VirtualDevice", DeviceID["STAT_BARRIERE"], 2}})
-- Jardin
-- éclairage si détection de mouvement en vacances
for _,v in ipairs(groupeLampesExt) do
GEA.add ({DeviceID["MVT_OUEST_JARDIN"], estVacances, {"value", v, 0}}, -1, "On allume toutes les lampes extérieures. (#date# à#time#)", {{"turnOn", v}})
end
for _,v in ipairs(groupeLampesExt) do
GEA.add ({DeviceID["MVT_EST_JARDIN"], estVacances, {"value", v, 0}}, -1, "On allume toutes les lampes extérieures. (#date# à#time#)", {{"turnOn", v}})
end
-- Extérieur
-- Extinction si plus de mouvement en vacances
for _,v in ipairs(groupeLampesExt) do
GEA.add ({estVacances, v, {"value", DeviceID["MVT_EST_JARDIN"], 0}, {"value", DeviceID["MVT_OUEST_JARDIN"], 0}, {"value", DeviceID["MVT_EST_AVANT"], 0}, {"value", DeviceID["MVT_OUEST_AVANT"], 0}, pasIncendie}, 61, "On éteint toutes les lampes extérieures. (#date# à#time#)", {{"turnOff", v}})
end
-- Extinction dans tous les cas après 10 min et en vacances
for _,v in ipairs(groupeLampesExt) do
GEA.add ({estVacances, v, pasIncendie}, 10*60, "On éteint toutes les lampes extérieures. (#date# à#time#)", {{"turnOff", v}})
end
-- Piscine
-- Gestion Offset temérature
GEA.add (DeviceID["PISCPMP"], -1, "Piscine ON. (#date# à#time#)", {{"VirtualDevice", DeviceID["TECHNICAL"], 7}, {"Email", UserID["Vincent"], "INFO - Piscine"}})
GEA.add ({DeviceID["PISCPMP"], {"Value-", DeviceID["TMP_PISCINE"], 200}}, 30*60, "Piscine ON depuis #duration#. La température de la piscine est de #value[2]#°C. (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Piscine"}})
GEA.add ({DeviceID["PISCPMP"], {"Value-", DeviceID["TMP_PISCINE"], 200}}, -1, "Piscine OFF. La température de la piscine est de #value[2]#°C. (#date# à#time#)", {{"Inverse"}, {"Global", "Piscine_temp", "#value[2]#"}, {"VirtualDevice", DeviceID["TECHNICAL"], 7}, {"Email", UserID["Vincent"], "INFO - Piscine"}})
-- Info pompe ON si pas beau
GEA.add ({{"Value-", DeviceID["TMP_EXTERIEURE"], 20}, DeviceID["PISCPMP"], {"Value-", DeviceID["TMP_PISCINE"], 50}}, 2*60*60, "Il fait #value[1]# °C dehors et la piscine est à#value[3]# °C et ON depuis #duration#. (#date# à#time#)", {{"Time", "10:00", "20:00"}, {"Email", UserID["Vincent"], "INFO - Piscine"}})
-- Remplissave piscine
GEA.add (estRemplPiscine, 1, "La piscine est en mode remplissage. (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Piscine"}})
GEA.add (estRemplPiscine, 30*60, "La piscine est en mode remplissage depuis #duration#. \nPassage en mode non remplissage. \nAller couper le tuyaux de remplissage de la piscine. (#date# à#time#)", {{"VirtualDevice", DeviceID["VAR_REMPL_PISCINE"], 4}, {"Email", UserID["Vincent"], "INFO - Piscine"}})
--- messge si arrêt de la pompe quand variable àoui, et afficher niveau
-- remplissage le 22/7/2016 - 2-3*10 min + 30 min - niveau cuve : 7273l à5859L = 1414L
-------------------
-- Alarme
-------------------
-- test si un ouvrant est ouvert
GEA.add (true, 1, "", {{"Function", function() Ouvrants = "Non" end}, {"Repeat"}})
for _,v in ipairs(groupeOuvrants) do
GEA.add (v, 1, "", {{"Function", function() Ouvrants = "Oui" end}, {"Repeat"}})
end
-- Alarme de nuit
-- test si toutes les lampes intérieures sont éteintes
GEA.add (true, 1, "", {{"Function", function() LampesTmp = "Non" end}, {"Repeat"}})
for _,v in ipairs(groupeLampesInt) do
GEA.add (v, 1, "", {{"Function", function() LampesTmp = "Oui" end}, {"Repeat"}})
end
GEA.add ({{"Function", function() if LampesTmp == "Non" then return true end end}, {"Function", function() if Lampes == "Oui" then return true end end}}, 1, "", {{"Function", function() Lampes = "Non" end}})
GEA.add ({{"Function", function() if LampesTmp == "Oui" then return true end end}, {"Function", function() if Lampes == "Non" then return true end end}}, 1, "", {{"Function", function() Lampes = "Oui" end}})
-- si toutes les lampes éteintes et entre 22:00 et 06:00 depuis 3 min => Alarme_Nuit = Oui
GEA.add ({DeviceID["ALARME_ACTIVE"], {"Function", function() if Lampes == "Non" then return true end end}, {"Function", function() if AlarmeNuit == "Non" then return true end end}}, 3*60, "Alarme nuit activée depuis #duration#. (#date# à#time#)", {{"Inverse"}, {"Time", "22:00", "06:00"}, {"Function", function() AlarmeNuit = "Oui" end}, {"Email", UserID["Vincent"], "INFO - Alarme de Nuit"}})
-- si une lampe allumée => Alarme_Nuit = Non
GEA.add ({DeviceID["ALARME_ACTIVE"], {"Function", function() if Lampes == "Oui" then return true end end}, {"Function", function() if AlarmeNuit == "Oui" then return true end end}}, 1*60, "Alarme nuit désactivée. (#date# à#time#)", {{"Inverse"}, {"Function", function() AlarmeNuit = "Non" end}, {"Email", UserID["Vincent"], "INFO - Alarme de Nuit"}})
-- à08:00 => Alarme_Nuit = Non
GEA.add ({DeviceID["ALARME_ACTIVE"], {"Function", function() if AlarmeNuit == "Oui" then return true end end}}, 1, "Alarme nuit désactivée. (#date# à#time#)", {{"Inverse"}, {"Time", "08:00", "09:30"}, {"Function", function() AlarmeNuit = "Non" end}, {"Email", UserID["Vincent"], "INFO - Alarme de Nuit"}})
-- Porte Extérieure ouverte => message sonos toutes les 30s
---GEA.add ({{"Function", function() if AlarmeNuit == "Oui" then return true end end}, {"Function", function() if Ouvrants == "Oui" then return true end end}}, 30, "Une des portes extérieures est ouverte. (#date# à#time#)", {{"VirtualDevice", DeviceID["SONOS_MP3"], 2}, {"Email", UserID["Vincent"], "ALERTE - porte extérieure ouverte"}, {"Repeat"}})
-- Garage Annabelle
-- GA_OPEN => fermer
local auto_GA_Close = GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GA_OPEN"]}, 90, "Garage Annabelle ouvert et alarme branchée. \nFermeture automatique. \n(#date# à#time#)", {{"turnOn", DeviceID["BOUTON_GA"]}, {"Email", UserID["Vincent"], "ALARME - Garage ouvert => fermeture automatique"}})
-- GA_OPEN => pas réussi àla fermer
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GA_OPEN"]}, 135, "Garage Annabelle ouvert et alarme branchée. \nLa fermeture automatique n a PAS fonctionné. Aller voir sur place. \n(#date# à#time#)", {{"VirtualDevice", DeviceID["SONOS_MP3"], 2}, {"Email", UserID["Vincent"], "ALARME - Garage ouvert et en erreur"}})
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GA_OPEN"]}, 5*60, "", {{"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"Repeat"}})
-- GA_Mvt => porte garage mal fermée
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GA_MVT"]}, 45, "Garage Annabelle mal fermé et alarme branchée. \nAller voir sur place. \n(#date# à#time#)", {{"VirtualDevice", DeviceID["SONOS_MP3"], 2}, {"Email", UserID["Vincent"], "ALARME - Garage mal fermé et en erreur"}})
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GA_MVT"]}, 5*60, "", {{"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"Repeat"}})
-- Garage Vincent
-- GV_OPEN => fermer
local auto_GV_Close = GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GV_OPEN"]}, 45, "Garage Vincent ouvert et alarme branchée. \nFermeture automatique. \n(#date# à#time#)", {{"turnOn", DeviceID["BOUTON_GV"]}, {"Email", UserID["Vincent"], "ALARME - Garage ouvert -> fermeture automatique"}})
-- GV_OPEN => pas réussi àla fermer
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GV_OPEN"]}, 90, "Garage Vincent ouvert et alarme branchée. \nLa fermeture automatique n a PAS fonctionné. Aller voir sur place. \n(#date# à#time#)", {{"VirtualDevice", DeviceID["SONOS_MP3"], 2}, {"Email", UserID["Vincent"], "ALARME - Garage ouvert et en erreur"}})
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GV_OPEN"]}, 5*60, "", {{"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"Repeat"}})
-- GV_Mvt => porte garage mal fermée
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GV_MVT"]}, 45, "Garage Vincent mal fermé et alarme branchée. \nAller voir sur place. \n(#date# à#time#)", {{"VirtualDevice", DeviceID["SONOS_MP3"], 2}, {"Email", UserID["Vincent"], "ALARME - Garage mal fermé et en erreur"}})
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["GV_MVT"]}, 5*60, "", {{"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"Repeat"}})
-- Check porte fenêtre salon
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["PORTE_COULISS"]}, -1, "La porte fenêtre du salon est ouverte et alarme branchée. (#date# à#time#)", {{"VirtualDevice", DeviceID["SONOS_MP3"], 2}, {"VirtualDevice", DeviceID["IPCAM_LIVING"], 7}, {"Email", UserID["Vincent"], "ALARME - Porte fenêtre coulissante ouverte"}})
GEA.add({DeviceID["ALARME_ACTIVE"], DeviceID["PORTE_COULISS"]}, 5*60, "", {{"picture", DeviceID["IPCAM_LIVING"], UserID["Vincent"]}, {"Repeat"}})
-- Activation alarme
-- éteindre toutes les lampes
for _,v in ipairs(groupeLampesInt) do
GEA.add ({DeviceID["ALARME_ACTIVE"], v}, 1, "", {{"turnOff", v}})
end
-- éteindre les SONOS
-- arrêt des sonos à30 sec d'intervalle, car les VD utilisent tous la même VG
GEA.add (DeviceID["ALARME_ACTIVE"], 30, "", {{"VirtualDevice", DeviceID["SONOS_MAXIMILIEN"], 9}})
GEA.add (DeviceID["ALARME_ACTIVE"], 60, "", {{"VirtualDevice", DeviceID["SONOS_PARENTS"], 9}})
GEA.add (DeviceID["ALARME_ACTIVE"], 3*60, "", {{"VirtualDevice", DeviceID["SONOS_CUISINE"], 9}})
-- présence simulator ON
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "Alarme activée. (#date# à#time#)", {{"VirtualDevice", DeviceID["PRESENCE_SIMULATOR"], 2}, {"Email", UserID["Vincent"], "INFO - Alarme"}})
-- auth_LumInterieur = Non
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "", {{"VirtualDevice", DeviceID["VAR_AUTH_LUMINTERIEUR"], 4}})
-- réactivation tâche fermeture auto porte garage Annabelle
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "", {{"RestartTask", auto_GA_Close}})
-- réactivation tâche fermeture auto porte garage Vincent
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "", {{"RestartTask", auto_GV_Close}})
-- Désactivation alarme
-- présence simulator OFF
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "Alarme déactivée. (#date# à#time#)", {{"Inverse"}, {"VirtualDevice", DeviceID["PRESENCE_SIMULATOR"], 3}, {"Email", UserID["Vincent"], "INFO - Alarme"}})
-- auth_LumInterieur = Oui
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "", {{"Inverse"}, {"VirtualDevice", DeviceID["VAR_AUTH_LUMINTERIEUR"], 3}})
-- arrêt tâche fermeture auto porte garage Annabelle
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "", {{"Inverse"}, {"StopTask", auto_GA_Close}})
-- arrêt tâche fermeture auto porte garage Vincent
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "", {{"Inverse"}, {"StopTask", auto_GV_Close}})
-- remettre caméra living sur salle àmanger
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "", {{"Inverse"}, {"VirtualDevice", DeviceID["IPCAM_LIVING"], 6}})
-- Intrusion
-- notification
GEA.add (DeviceID["ALARME_INTRUSION"], -1, "ALERTE - Intrusion. (#date# à#time#)", {{"Email", UserID["Vincent"], "ALARME - Alarme intrusion"}})
-- message sonos immédiat
GEA.add (DeviceID["ALARME_INTRUSION"], -1, "", {{"VirtualDevice", DeviceID["SONOS_MP3"], 1}})
-- message sonos toutes les 30s
GEA.add (DeviceID["ALARME_INTRUSION"], 30, "", {{"VirtualDevice", DeviceID["SONOS_MP3"], 1}, {"Repeat"}})
-- le clignottement des lampes intérieures et extérieures est géré par une scène indépendante
-- Envoi photos
GEA.add (DeviceID["ALARME_INTRUSION"], -1, "Photos de toutes les caméras (car intrusion). (#date# à#time#)", {{"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_JARDIN"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_LIVING"], UserID["Vincent"]}})
GEA.add (DeviceID["ALARME_INTRUSION"], 30, "Photos de toutes les caméras (car intrusion). (#date# à#time#)", {{"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_JARDIN"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_LIVING"], UserID["Vincent"]}, {"Repeat"}})
-------------------
-- Incendie
-------------------
-- test si aucun détecteur incendie activé
GEA.add (true, 1, "", {{"Function", function() IncendieTmp = "Non" end}, {"Repeat"}})
for _,v in ipairs(groupeIncendie) do
GEA.add (v, 1, "", {{"Function", function() IncendieTmp = "Oui" end}, {"Repeat"}})
end
GEA.add ({"Function", function() if IncendieTmp == "Non" then return true end end}, 1, "", {{"Global", "Incendie", "0"}})
GEA.add (pasIncendie, 1, "", {{"VirtualDevice", DeviceID["VAR_INCENDIE"], 4}})
GEA.add ({"Global!", "Incendie", "0"}, -1, "", {{"VirtualDevice", DeviceID["VAR_INCENDIE"], 3}})
-- envoi alarme incendie
GEA.add (DeviceID["FUME_BIBLIOTHEQUE"], -1, "Incendie [FUME_BIBLIOTHEQUE]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_BUREAU"], -1, "Incendie [FUME_BUREAU]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_MAXIMILIEN"], -1, "Incendie [FUME_MAXIMILIEN]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_PAULINE"], -1, "Incendie [FUME_PAULINE]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_HALLNUIT_SDB"], -1, "Incendie [FUME_HALLNUIT_SDB]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_HALLNUIT_SDJ"], -1, "Incendie [FUME_HALLNUIT_SDJ]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_SDJ"], -1, "Incendie [FUME_SDJ]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_SDBETAGE"], -1, "Incendie [FUME_SDBETAGE]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_GARAGE"], -1, "Incendie [FUME_GARAGE]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_HALLENTRE_C"], -1, "Incendie [FUME_HALLENTRE_C]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
GEA.add (DeviceID["FUME_HALLENTRE_S"], -1, "Incendie [FUME_HALLENTRE_S]. (#date# à#time#)", {{"Global", "Incendie", "inc%"}, {"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
-- envoi alarme nombre de détecteurs activés
GEA.add ({"Global+", "Incendie", 0}, -1, "Incendie #value# détecteurs. (#date# à#time#)", {{"Portable", MobileID["V_Nexus5"]}, {"Email", UserID["Vincent"], "ALARME - Alarme Incendie"}})
-- on allume toutes les lumières si incendie
for _,v in ipairs(groupeLampesInt) do
GEA.add ({"Global+", "Incendie", 0}, -1, "On allume toutes les lampes intérieures. (#date# à#time#)", {{"turnOn", v}})
end
for _,v in ipairs(groupeLampesExt) do
GEA.add ({"Global+", "Incendie", 0}, -1, "On allume toutes les lampes extérieures. (#date# à#time#)", {{"turnOn", v}})
end
-- ouverture portail
-- GEA.add ({{"Global+", "Incendie", 0}, {"Value", DeviceID["BARRIERE_CLOSED"], 0}}, -1, "On ouvre le portail s'il est fermé. (#date# à#time#)", {{"turnOn", DeviceID["BOUTON_BARRIERE"]}})
-- envoi photos de toutes les caméras
GEA.add ({"Global+", "Incendie", 0}, -1, "Photos de toutes les caméras (car incendie). (#date# à#time#)", {{"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_JARDIN"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_LIVING"], UserID["Vincent"]}})
GEA.add ({"Global+", "Incendie", 0}, 30, "Photos de toutes les caméras (car incendie). (#date# à#time#)", {{"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_JARDIN"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_LIVING"], UserID["Vincent"]}, {"Repeat"}})
-------------------
-- Cameras
-------------------
-- Activation au passage àla nuit (les caméras sont toujours activées, mais on ne sait jamais)
GEA.add (estNuit, 1, "Activation de toutes les caméras (car estNuit). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_ALL"], 3}})
-- Activation lors de activation de l'alarme (les caméras sont toujours activées, mais on ne sait jamais)
GEA.add (DeviceID["ALARME_ACTIVE"], -1, "Activation de toutes les caméras (car activation alarme). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_ALL"], 3}})
-- Enregistrement si intrusion
GEA.add (DeviceID["ALARME_INTRUSION"], -1, "Enregistrement de toutes les caméras (car intrusion). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_ALL"], 1}, {"Email", UserID["Vincent"], "INFO - Cameras"}})
-- Enregistrement si mvt extérieur et alarme activée
GEA.add ({DeviceID["MVT_EST_AVANT"], {"Global!", "SurvStation_Avant_Status", "Recording"}, DeviceID["ALARME_ACTIVE"]}, -1, "Enregistrement de caméra avant (car MVT_EST_AVANT). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_AVANT"], 1}})
GEA.add ({DeviceID["MVT_OUEST_AVANT"], {"Global!", "SurvStation_Avant_Status", "Recording"}, DeviceID["ALARME_ACTIVE"]}, -1, "Enregistrement de caméra avant (car MVT_OUEST_AVANT). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_AVANT"], 1}})
GEA.add ({DeviceID["MVT_EST_JARDIN"], {"Global!", "SurvStation_Jardin_Status", "Recording"}, DeviceID["ALARME_ACTIVE"]}, -1, "Enregistrement de caméra jardin (car MVT_EST_JARDIN). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_JARDIN"], 1}})
GEA.add ({DeviceID["MVT_OUEST_JARDIN"], {"Global!", "SurvStation_Jardin_Status", "Recording"}, DeviceID["ALARME_ACTIVE"]}, -1, "Enregistrement de caméra jardin (car MVT_OUEST_JARDIN). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_JARDIN"], 1}})
-- Enregistrement si mvt extérieur et alarme de nuit
GEA.add ({DeviceID["MVT_EST_AVANT"], {"Global!", "SurvStation_Avant_Status", "Recording"}, {"Function", function() if AlarmeNuit == "Oui" then return true end end}}, -1, "Enregistrement de caméra avant (car MVT_EST_AVANT). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_AVANT"], 1}})
GEA.add ({DeviceID["MVT_OUEST_AVANT"], {"Global!", "SurvStation_Avant_Status", "Recording"}, {"Function", function() if AlarmeNuit == "Oui" then return true end end}}, -1, "Enregistrement de caméra avant (car MVT_OUEST_AVANT). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_AVANT"], 1}})
GEA.add ({DeviceID["MVT_EST_JARDIN"], {"Global!", "SurvStation_Jardin_Status", "Recording"}, {"Function", function() if AlarmeNuit == "Oui" then return true end end}}, -1, "Enregistrement de caméra jardin (car MVT_EST_JARDIN). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_JARDIN"], 1}})
GEA.add ({DeviceID["MVT_OUEST_JARDIN"], {"Global!", "SurvStation_Jardin_Status", "Recording"}, {"Function", function() if AlarmeNuit == "Oui" then return true end end}}, -1, "Enregistrement de caméra jardin (car MVT_OUEST_JARDIN). (#date# à#time#)", {{"VirtualDevice", DeviceID["SURVSTATION_JARDIN"], 1}})
-- Arrêt enregistrement après intrusion / mouvement extérieur
GEA.add ({DeviceID["ALARME_INTRUSION"], {"Value", DeviceID["MVT_EST_AVANT"], 0}, {"Value", DeviceID["MVT_OUEST_AVANT"], 0}, {"Global", "SurvStation_Avant_Status", "Recording"}}, 31, "Arrêt enregistrement de caméra avant. (#date# à#time#)", {{"Inverse"}, {"VirtualDevice", DeviceID["SURVSTATION_AVANT"], 2}})
GEA.add ({DeviceID["ALARME_INTRUSION"], {"Value", DeviceID["MVT_EST_JARDIN"], 0}, {"Value", DeviceID["MVT_OUEST_JARDIN"], 0}, {"Global", "SurvStation_Jardin_Status", "Recording"}}, 31, "Arrêt enregistrement de caméra jardin. (#date# à#time#)", {{"Inverse"}, {"VirtualDevice", DeviceID["SURVSTATION_JARDIN"], 2}})
GEA.add ({DeviceID["ALARME_INTRUSION"], {"Value", DeviceID["MVT_EST_AVANT"], 0}, {"Value", DeviceID["MVT_OUEST_AVANT"], 0}, {"Value", DeviceID["MVT_EST_JARDIN"], 0}, {"Value", DeviceID["MVT_OUEST_JARDIN"], 0}, {"Global", "SurvStation_Salon_Status", "Recording"}}, 31, "Arrêt enregistrement de toutes les caméras. (#date# à#time#)", {{"Inverse"}, {"VirtualDevice", DeviceID["SURVSTATION_ALL"], 2}})
-- envoi photos de toutes les caméras durant les vacances
GEA.add (estVacances, 24*60*60, "Photos de toutes les caméras (car vacances). (#date# à#time#)", {{"Time", "10:00", "10:30"}, {"picture", DeviceID["IPCAM_AVANT"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_JARDIN"], UserID["Vincent"]}, {"picture", DeviceID["IPCAM_LIVING"], UserID["Vincent"]}, {"Repeat"}})
-- Détecteurs extérieurs
-- GEA.add (DeviceID["MVT_EST_AVANT"], -1, "Détection mouvement (MVT_EST_AVANT). (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Détecteurs [MVT_EST_AVANT]"}})
-- GEA.add (DeviceID["MVT_OUEST_AVANT"], -1, "Détection mouvement (MVT_OUEST_AVANT). (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Détecteurs [MVT_OUEST_AVANT]"}})
-- GEA.add (DeviceID["MVT_EST_JARDIN"], -1, "Détection mouvement (MVT_EST_JARDIN). (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Détecteurs [MVT_EST_JARDIN]"}})
-- GEA.add (DeviceID["MVT_OUEST_JARDIN"], -1, "Détection mouvement (MVT_OUEST_JARDIN). (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - Détecteurs [MVT_OUEST_JARDIN]"}})
-------------------
-- Divers
-------------------
-- Techniques
-- Redémarrage HC2 ou Save GEA
GEA.add({"Function", function() return restart(100) end}, 1, "Restart de la HC2 depuis #value# sec. (#date# à#time#)", {{"Email", UserID["Vincent"], "INFO - HC2"}})
GEA.add({"Function", function() return restart(100) end}, 1, "Save GEA. (#date# à#time#)", {{"Inverse"}, {"Email", UserID["Vincent"], "INFO - HC2"}})
-- DayPart
GEA.add (true, 1, "DayPart = Jour. (#date# à#time#)", {{"Time", "Sunrise", "Sunrise + 200"}, {"VirtualDevice", DeviceID["VAR_DAYPART"], 3}})
GEA.add (true, 1, "DayPart = Nuit. (#date# à#time#)", {{"Time", "Sunset", "Sunset + 300"}, {"VirtualDevice", DeviceID["VAR_DAYPART"], 4}})
-- Batteries
GEA.add ({"Batteries", 20}, 1, "", {{"Time", "18:00", "18:30"}, {"Email", UserID["Vincent"], "ALERTE - Batteries faibles : A commander"}})
GEA.add ({"Batteries", 20}, 24*60*60, "", {{"Time", "18:00", "18:30"}, {"Email", UserID["Vincent"], "ALERTE - Batteries faibles : A commander"}, {"Repeat"}})
GEA.add ({"Batteries", 5}, 1, "", {{"Time", "18:00", "18:30"}, {"Email", UserID["Vincent"], "ALERTE - Batteries faibles : A remplacer"}})
GEA.add ({"Batteries", 5}, 24*60*60, "", {{"Time", "18:00", "18:30"}, {"Email", UserID["Vincent"], "ALERTE - Batteries faibles : A remplacer"}, {"Repeat"}})
-- Température extérieure
GEA.add (true, 10*60, "Mise àjour de la température extérieure moyenne. (#date# à#time#)", {{"VirtualDevice", DeviceID["TECHNICAL"], 11}, {"Repeat"}})
-- éclairage Noël
-- Salon
GEA.add (estNoel, 1, "Sapin ON", {{"Time", "06:00", "06:00"}, {"turnOn", DeviceID["PRISE_PETITSALON"]}, {"Email", UserID["Vincent"], "INFO - Eclairage Noël"}})
GEA.add (estNoel, 1, "Sapin OFF", {{"Time", "Sunrise", "Sunrise"}, {"turnOff", DeviceID["PRISE_PETITSALON"]}, {"Email", UserID["Vincent"], "INFO - Eclairage Noël"}})
GEA.add (estNoel, 1, "Sapin ON", {{"Time", "Sunset", "Sunset"}, {"turnOn", DeviceID["PRISE_PETITSALON"]}, {"Email", UserID["Vincent"], "INFO - Eclairage Noël"}})
GEA.add ({estNoel, {"Global", "Alarme_Nuit", "Oui"}}, 15*60, "Sapin OFF", {{"turnOff", DeviceID["PRISE_PETITSALON"]}, {"Email", UserID["Vincent"], "INFO - Eclairage Noël"}})
-- Extérieur
GEA.add (estNoel, 1, "", {{"Time", "06:00", "06:00"}, {"turnOn", DeviceID["PRISE_AVANT"]}})
GEA.add (estNoel, 1, "", {{"Time", "Sunrise", "Sunrise"}, {"turnOff", DeviceID["PRISE_AVANT"]}})
GEA.add (estNoel, 1, "", {{"Time", "Sunset", "Sunset"}, {"turnOn", DeviceID["PRISE_AVANT"]}})
GEA.add (estNoel, 1, "", {{"Time", "01:00", "01:00"}, {"turnOff", DeviceID["PRISE_AVANT"]}})
-- Surveillance de la RAM
GEA.add({"Global-", "RamFree", 35}, 1, "RAM inférieure à35% (#value#%) - Reboot prévu cette nuit à2h00. (#date# à#time#)", {{"Time", "18:00", "18:01"}, {"Email", UserID["Vincent"], "ALERTE - RAM"}})
GEA.add({"Global-", "RamFree", 35}, 1, "Reboot HC2 car RAM inférieure à35% (#value#%). (#date# à#time#)", {{"Time", "02:00", "02:01"}, {"Email", UserID["Vincent"], "ALERTE - RAM"}, {"Function", function() fibaro:sleep(1000) end}, {"VirtualDevice", DeviceID["HC2_DIAGNOSTICS"], 15}, {"Function", function() fibaro:sleep(1000) end}, {"VirtualDevice", DeviceID["HC2_DIAGNOSTICS"], 16}})
GEA.add({"Global-", "RamFree", 10}, 1, "Reboot immédiat de la HC2 car RAM inférieure à10% (#value#%). (#date# à#time#)", {{"Email", UserID["Vincent"], "ALERTE - RAM"}, {"Function", function() fibaro:sleep(1000) end}, {"VirtualDevice", DeviceID["HC2_DIAGNOSTICS"], 15}, {"Function", function() fibaro:sleep(1000) end}, {"VirtualDevice", DeviceID["HC2_DIAGNOSTICS"], 16}})
-- Télécommande rose - Cuisine
-- click simple sur O plein -> lampe jardin
GEA.add ({{"SceneActivation", DeviceID["TELEC_CUISINE"], 10}, {"Value", DeviceID["LUM_JARDIN"], 0}}, -1, "", {{"turnOn", DeviceID["LUM_JARDIN"]}})
GEA.add ({{"SceneActivation", DeviceID["TELEC_CUISINE"], 10}, DeviceID["LUM_JARDIN"]}, -1, "", {{"turnOff", DeviceID["LUM_JARDIN"]}})
-- double click sur O plein -> lampe terrasse sud
GEA.add ({{"SceneActivation", DeviceID["TELEC_CUISINE"], 13}, {"Value", DeviceID["LUM_TERRSUD"], 0}}, -1, "", {{"turnOn", DeviceID["LUM_TERRSUD"]}})
GEA.add ({{"SceneActivation", DeviceID["TELEC_CUISINE"], 13}, DeviceID["LUM_TERRSUD"]}, -1, "", {{"turnOff", DeviceID["LUM_TERRSUD"]}})
-- click long sur O plein -> lampes extérieures jardin
GEA.add ({{"SceneActivation", DeviceID["TELEC_CUISINE"], 12}, {"Value", DeviceID["LUM_TERROUEST"], 0}}, -1, "", {{"turnOn", DeviceID["LUM_JARDIN"]}, {"turnOn", DeviceID["LUM_TERREST"]}, {"turnOn", DeviceID["LUM_TERRPAR"]}, {"turnOn", DeviceID["LUM_TERRSUD"]}, {"turnOn", DeviceID["LUM_TERROUEST"]}})
GEA.add ({{"SceneActivation", DeviceID["TELEC_CUISINE"], 12}, DeviceID["LUM_TERROUEST"]}, -1, "", {{"turnOff", DeviceID["LUM_JARDIN"]}, {"turnOff", DeviceID["LUM_TERREST"]}, {"turnOff", DeviceID["LUM_TERRPAR"]}, {"turnOff", DeviceID["LUM_TERRSUD"]}, {"turnOff", DeviceID["LUM_TERROUEST"]}})
-- click simple sur O vide -> annonce température piscine
GEA.add ({"SceneActivation", DeviceID["TELEC_CUISINE"], 30}, -1, "", {{"VirtualDevice", DeviceID["SONOS_MP3"], 7}})
-- Télécommande beue - ChParents
-- click simple sur O plein -> lampes extérieures
for _,v in ipairs(groupeLampesExt) do
GEA.add ({{"SceneActivation", DeviceID["TELEC_CHPARENTS"], 10}, {"Value", v, 0}}, -1, "", {{"turnOn", v}})
end
for _,v in ipairs(groupeLampesExt) do
GEA.add ({{"SceneActivation", DeviceID["TELEC_CHPARENTS"], 10}, v}, -1, "", {{"turnOff", v}})
end
-- double click sur O plein -> lampes intérieures
for _,v in ipairs(groupeLampesInt) do
GEA.add ({{"SceneActivation", DeviceID["TELEC_CHPARENTS"], 13}, {"Value", v, 0}}, -1, "", {{"turnOn", v}})
end
for _,v in ipairs(groupeLampesInt) do
GEA.add ({{"SceneActivation", DeviceID["TELEC_CHPARENTS"], 13}, v}, -1, "", {{"turnOff", v}})
end