Aller au contenu
Steven

Gea : Gestionnaire D'événements Automatique

Recommended Posts

GEA.add(118, 1*60, "", {{"turnOff"}, {"jour_nuit", "Jour"}})

je suis largué, trop de boulot, je peux plus suivre...

 

ce que je veux faire est très basique comparé au reste, je veux juste que quand il fait jour, si on allume les lumières extérieure, elles s’éteignent.

il faut une ligne par ID?

on peut faire en dessous de 1 minute sans impacter les autre lignes de code?

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu peux le faire en instantanée faut mettre l'ID dans le début du script après %%property et mettre -1 a la place de 1x60

Pour la condition temps plus le if je pense

Partager ce message


Lien à poster
Partager sur d’autres sites

ok, merci  ;)

GEA.add(118, -1*60, "", {"if"{"jour_nuit", "Jour"},{"turnOff"}})
GEA.add(210, -1*60, "", {"if"{"jour_nuit", "Jour"},{"turnOff"}})
etc...

un truc dans le genre...

Et faut-il une ligne par ID?

Partager ce message


Lien à poster
Partager sur d’autres sites

Regarde le post de Steven d'hier vers 23h tu as pas mal de détails sur ce pount

Partager ce message


Lien à poster
Partager sur d’autres sites

Je ne trouve pas que cela soit forcément une bonne idée car si quelqu'un allume la lumière c'est peut-être pour une bonne raison. Dans ce cas, moi je laisserais un laps de temps de 5 à  10 minutes. Mais on n'est pas tous pareil :)

 

Dans ton script tu spécifie GEA.CheckEvery = X secondes. Donc descendre tes ajout GEA.add en dessous de cette valeur n'a pas de sens puisque le système vérifie uniquement toutes les X secondes.

 

Selon mes tests descendre en dessous des 3 secondes n'as pas très bon et 5 secondes si tu as beaucoup de périphérique à  contrôler.

 

Tu as 2 possibilités :

1 - tu veux que chaque lampe d'arrête après X minutes (1 ligne de code par lampe)

2 - le délai n'est pas important, dès que ta variable Jours_nuit est ""Jours" tu éteins tes lampes toutes les X minutes (1 ligne de codepour toutes les lampes)

3 - En mode instantané pour chaque lampe, dès qu'elle s'allume, tu l'éteints (1 ligne par lampe)

 

A toi de voir.

 

P.S. Dans tout les cas, ta ligne de code est fausse. Car elle met la variable à  "Jour" au lieu de la controler.

Partager ce message


Lien à poster
Partager sur d’autres sites

--[[
%% autostart
%% properties
118 value
210 value
%% globals
--]]
local paramsLampeExterieur = {{"If", {"Global", "jour_nuit", "Jour"}}, {"turnOff"}}

GEA.add(118, -1, "", paramsLampeExterieur )
GEA.add(210, -1, "", paramsLampeExterieur )
@lolomail ... merci ;)

Edit : -1 et non pas -1*60 ... Steven réveille toi.

Partager ce message


Lien à poster
Partager sur d’autres sites

donc, cela a un impact sur les autre ligne si je veux baisser le délai de vérification d'une ligne. 

ce sont les lumières extérieur qui n'ont pas à  être allumé en plein jour (sauf éclipse,mais je compte sur toi pour créer une variable le moment venu  :D),  mais par erreur, elles le sont.

j'ai une scène qui les éteint au bout de 2 secondes si elles sont allumées je jour.

je voulais l’intégrer dans GEA, mais bon, ton script est un peut limité, alors.... :lol:            il manque de fonctions quand même. :P

Partager ce message


Lien à poster
Partager sur d’autres sites

Comme le dis Steven mets plutôt une extenction au bout de 10 min, car allumer la lumière dehors en pleine journée ne doit pas arriver tous les jours et en plus 10 min d'élec pour une lampe de 50w cela ne va pas chercher loin ;)

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Pfffft ;)

Si tu utilises le code ci-dessous, il n'y aura aucun impacte sur les autres lignes :)

Le délai de vérification d'une ligne est indiqué différemment sur chaque ligne. Mais si tu demandes au script de tourner toutes les 30 secondes et que met 45 secondes sur une ligne, cette ligne sera executée qu'a 60 secondes.

Avec le mode "instantané" il n'y a aucun impact. Tu peux donc l'utiliser.

Edit : lolomail répond 100 x plus vite que moi :)

Modifié par Steven

Partager ce message


Lien à poster
Partager sur d’autres sites

et bien si, ça arrive plus souvent qu'on peut le croire,sur l'avant, j'ai que 2 lampes,déjà  pas mal, mais derrière, j'ai un projecteur, et là  pas pareil.

 

bon, très bien, pour les lampe c'est bon, mais pour la variable éclipse?  :lol:

Modifié par Fredric

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai fini le module MétéoAlerte, j'ajouterais la fonction Eclipse dès que possible :)

Partager ce message


Lien à poster
Partager sur d’autres sites

tu sais que t'es un grand malade  :P

j'ai une question, mais elle rentre pas vraiment dans le cadre de "GEA"

je te la pause là  ou j'ouvre un sujet?

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut Steven 

J'aurais besoin de ton aide si tu veux bien je t'explique ;)

 

J'ai créer plusieurs scènes pour mes volets qui fonctionne parfaitement grâce au GEA J'aurais besoin que tu m'aide pour la finalisée car je reçois des messages Push même quand les volets sont ouverts 

Je pense qu'il faut créer un Croup qui d'éclanche le scène seulement quand les volets sont baissés mais ça tu le sais mieux que moi je te remercie d'avance ;)

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-- Gestion volets "EST" matin "DST"
-- Si la luminosité est supérieur à  850 Lux pendant 10 minutes entre 5:30h et 13h, on ferme les volets 19,24,17 à  35/100 heure d'été
GEA.add({"Value+", 41,850}, 10*60, "Fermeture des volets Est Partiel #value# Lux #time#", {{"Time","05:30","13:00"},{"Close",19,35},{"Close",24,35},{"Close",17,35},{"DST"}})
-- Si la luminosité est inférieur à  600 Lux pendant 10 minutes entre 5:30 h et 13 h, on ouvre les volets 19,24,17 à  100/100
GEA.add({"Value-", 41,600}, 10*60, "Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","05:30","14:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"}})
---------------------------------------------------

Donc je récapitule pour cette scène le message push envoyé et "Remontée des volets Est par manque de luminosité #value# Lux #time#" alors qu'il sont déjà  remontée

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

@Frederic 

MP ou autre sujet si cela peux aider d'autre personne

 

@Diuck 

On monte les volets uniquement si UN n'est pas complètement remonté <100

local sont_pas_ouvert = {"If", {{"Value-", 19, 100},{"Value+-", 24, 100},{"Value-", 17, 100}}}

GEA.add({"Value-", 41,600}, 10*60, "Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","05:30","14:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"}, sont_pas_ouvert})
  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites
--[[
%% autostart
%% properties
118 value
210 value
%% globals
--]]
local paramsLampeExterieur = {{"If", {"Global", "jour_nuit", "Jour"}}, {"turnOff"}}

GEA.add(118, -1, "", paramsLampeExterieur )
GEA.add(210, -1, "", paramsLampeExterieur )
@lolomail ... merci ;)

Edit : -1 et non pas -1*60 ... Steven réveille toi.

 

ça marche nickel, même à  distance  ;)

 

merci monsieur  :74:

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Un grand merci Steven :60:   :74:

 

 

@Frederic 

MP ou autre sujet si cela peux aider d'autre personne

 

@Diuck 

On monte les volets uniquement si UN n'est pas complètement remonté <100

local sont_pas_ouvert = {"If", {{"Value-", 19, 100},{"Value+-", 24, 100},{"Value-", 17, 100}}}

GEA.add({"Value-", 41,600}, 10*60, "Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","05:30","14:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"}, sont_pas_ouvert})

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello
 
tout d'abord merci steven, pour ce boulot de malade  :60:
mais je suis un boulet et ca marche pas...  :15:
voila ce que j'ai mis :
 

GEA.checkEvery = 30 -- On vérifie toutes les X secondes
GEA.portables = {52} -- Liste des portables devant recevoir une notification {70, 71}
GEA.debug = true -- Affichage des traces dans la console
GEA.getGlobalForActivation = {"SuspendreGEA", "non"}

GEA.add(22, 3*60, "La porte du garage est ouverte depuis plus de 3 minutes", {{"Repeat"}})

GEA.add({"Value-", 44, 18}, 1*60, "Il fait froid dans la cuisine #value# à  #time#",{{"Email", 2},{"Email", 82}})
GEA.add({"Value+", 44, 24}, 1*60, "Il fait chaud dans la cuisine #value# à  #time#",{{"Email", 2},{"Email", 82}}) 

 
voila ce que j'obtiens en DEBUG 
 

[DEBUG] 21:52:55: [ 22 | Porte (Detec) ] Run : vérification [Repeat]
[DEBUG] 21:52:55: [ 22 | Porte (Detec) ] Check : démarrage vérification [Repeat]
[DEBUG] 21:52:55: [ 22 | Porte (Detec) ] Check : vérification des dates [Repeat]
[DEBUG] 21:52:55: [ 22 | Porte (Detec) ] isActivate : vérification de l'activation [Repeat]
[DEBUG] 21:52:55: [ 22 | Porte (Detec) ] isActivate : type : door_sensor [Repeat]
[DEBUG] 21:52:55: [ 22 | Porte (Detec) ] !CANCEL! isActivate : désactivé [Repeat]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] < 18 ] Run : vérification [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] < 18 ] Check : démarrage vérification [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] < 18 ] Check : vérification des dates [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] < 18 ] isActivate : vérification de l'activation [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] < 18 ] isActivate : type : Value- [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] < 18 ] !CANCEL! isActivate : désactivé [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] Run : vérification [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] Check : démarrage vérification [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] Check : vérification des dates [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] isActivate : vérification de l'activation [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] isActivate : type : Value+ [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] isActivate : activé [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] Check : activé depuis 60/60 [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] sendActions : traitement des actions [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] sendActions : !ACTION! : email to 2 [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] sendActions : !ACTION! : email to 82 [Email,2] [Email,82]
[DEBUG] 21:52:55: [ Value [44|Cuisine (Temp)] > 24 ] Done : tache effectuée et suspendue [Email,2] [Email,82]
[DEBUG] 21:52:55: Run : Sleeping for 30 secondes

 
 
 
mais je ne reçois ni notification ni mail...
 
pourrais tu me dire ce que j'ai loupé?
 
merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Si ta portes de garage est ouverte tu reçois une notification?

Partager ce message


Lien à poster
Partager sur d’autres sites

Pour donner des idées, j'ai un module virtuel + une scène pour controler des rubans LED en fonction de la conso de la télé. Le Scheduler bascule le module virtuel en mode automatique 30 min avant le coucher du soleil.

 

Puis avec le GEA, j'ai ajouté cette ligne qui fait que les spots de ma cuisine ouverte s'allume lors du coucher de soleil si le wallplug des LED enregistre une conso supérieure à  5w. Avantage, si je veux éteindre les spots j'appuie sur le bouton du dimmer et zou.

GEA.add({"Sensor+", 132, 5}, 1*60, "", {{"turnOn",42},{"Time", "Sunset", "Sunrise"}}) -- Allumer lampe cuisine si conso LED télé > 5w et entre le couché du soleil et le levée du soleil

Ok je sais c'est tordu mais c'est pour montrer que le scheduler de jompa et le GEA de Steven sont complémentaire :).

Idem pour la gestion de mes volets fonction de la temp je vais chercher la valeur "summernormal" d'un variable du scheduler. Comme cela l'hiver cette fonction ne marchera pas car quand je reçois des amis + cuisine on monte vite au delà  des 22°c.... :15:

Partager ce message


Lien à poster
Partager sur d’autres sites

j'ai créer un device virtuel sonos pour diffuser la notification (meme principe que le Karotz de Steven)

 

GEA.add({"Value+", 44, 26}, 30*60, "Il fait chaud dans la cuisine #value# à  #time#",{{"Global", "P_Sonos", "Il+fait+chaud+dans+la+cuisine+#value#+à +#time#"}, {"VirtualDevice", 116, 1},{"Email", 2},{"Email", 82}})
 

 

 

la notification dans les sonos sont ok, mais toujours pas de mail ni notif iPhone...

 

:huh:

Partager ce message


Lien à poster
Partager sur d’autres sites

ça marche nickel, même à  distance  ;)

 

merci monsieur  :74:

en fait, ya une coquille  :D

ça prend pas en compte la variable, je peux jamais allumer, même la nuit  :mellow:

désolé Steven  ^_^

Partager ce message


Lien à poster
Partager sur d’autres sites

@Fredric

Normal, il manquait des accolades .. t'avais même pas vu ... je suis déçu ... plus sincèrement désolé. Voici le code "If" est suivi de {{ et non pas de {

local paramsLampeExterieur = {{"If", {{"Global", "jour_nuit", "Jour"}}}, {"turnOff"}}
 
GEA.add(118, -1, "", paramsLampeExterieur )
GEA.add(210, -1, "", paramsLampeExterieur )

Difficile sans pouvoir tester.

Partager ce message


Lien à poster
Partager sur d’autres sites

 

mais je ne reçois ni notification ni mail...

 

pourrais tu me dire ce que j'ai loupé?

 

merci

 

 

TU n'as rien loupé ... J'AI loupé quelque chose. 

 

En effet, la fonction "Email" ne fonctionne pas du tout et en plus. De plus j'avais décider moi-même comme un grand que si on voulait recevoir par e-mail cela n'envoyait pas par push.

 

J'ai corrigé pour la prochaine version. Mea Culpa et merci pour le détails de ton message qui ma permis de vitre trouver le problème.

Partager ce message


Lien à poster
Partager sur d’autres sites

non, Steven, je n'ai pas vu, je suis perdu dans ton script car je n'ai pas pu suivre.

semaine prochaine, je devrais être moins pris, je vais bà»cher ta doc ;) 

 

Merci 

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut à  tous,

 

Bonjour Steven,  je reçois toujours des notifications Push me signalant que les volets remontent faute de lumière alors qu'ils sont déjà  ouverts si tu as l'occasion et si tu as le temps de regarder mon code pour détecter la cause

 

Merci d'avance Steven  ;)

 

 

 

Je viens de voir qu'il fallait ajouter Value en haut du code   .%% properties   " 41  value "  dans mon cas

 

A confirmer  merci  ;)

-- Gestion volets "EST" matin "DST"

-- Si la luminosité est supérieur à  850 Lux pendant 10 minutes entre Sunrise et 14h, on ferme les volets 19,24,17 à  35/100 heure d'été
GEA.add({"Value+", 41,850}, 10*60, "Fermeture des volets Est Partiel #value# Lux #time#", {{"Time","Sunrise","14:00"},{"Close",19,35},{"Close",24,35},{"Close",17,35},{"DST"}})

local si_pas_ouvert = {"If", {{"Value-", 19, 100},{"Value-", 24, 100},{"Value-", 17, 100}}} -- On monte les volets uniquement si UN n'est pas complètement remonté <100
-- Si la luminosité est inférieur à  600 Lux pendant 10 minutes entre Sunrise et 14 h, on ouvre les volets 19,24,17 à  100/100 
GEA.add({"Value-", 41,600}, 10*60, "Remontée des volets Est par manque de luminosité #value# Lux #time#", {{"Time","Sunrise","14:00"},{"Open",19,100},{"Open",24,100},{"Open",17,100},{"DST"}, si_pas_ouvert})

Partager ce message


Lien à poster
Partager sur d’autres sites
Invité
Ce sujet ne peut plus recevoir de nouvelles réponses.

×