Aller au contenu

Messages recommandés

Posté(e)

Salut @domodial,

 

avec quoi geres tu ton portail ?

N'aurais tu pas dans GEA des appels a des scenes ou VD qui te remontent l'etat de ton portail/garage..ferme ouvert sans trop de conditions ?

GEA au redemarrage de la box se relance et relit toutes les lignes et executent les traitements qu'il doit ou non faire ?

 

C'est une piste

Je gère mon portail avec des modules fibaro :D et mes porte avec des modules je ne sais plus quoi.

En fait ça me fait cela sur 2 portes (ou je demande l'envoi de notifications Ouvert/Fermé) ainsi que sur le garage et le portail.

Tous le reste (dans GEA) ou je demande des notifications (Flood sensor, capteur de choc, inclinaison, etc...) je n'ai pas de soucis apparent.

Posté(e)

Merci pépite,

 

Ici je controle les variable pour savoir si portail ou garage ouvert/fermé

--[[
%% autostart
%% properties
190 value
58 value
45 value
71 value
%% globals
Jour_Nuit
EtatPortail
EtatGarage
Maison
--]]


Les raccourcis variables modules

 local id = {
-- Salon
TV_SALON = 173, TEMP_INT = 41, LED_PLAFOND = 305, NEON_BLEU_1 = 295, TEMPERATURE_SPA = 106, BANDEAU_LED = 348,
-- Sejour
MURAL_SEJOUR = 204,
-- Portes
PORTE_ENTREE = 58, CHOC_ENTREE = 55, PORTE_JARDIN2 = 190,
-- Detecteurs
SMOKE_SENSOR = 45, FLOOD_GARAGE = 71, FLOOD_SPA = 104, MOUVEMENT_PERON = 199,
-- Jardin

-- Garage
CAM_GARAGE = 46, BASCULE_GARAGE = 331,
-- Bureau
KAROTZ = 197, KAROTZ_NOTIFICATIONS = 201,
-- Rue
CAM_RUE = 47,
-- Autres
TV_CHAMBRE = 332, TEMP_EXT = 64


 

Le code des notifications

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-- VARIABLE JOUR_NUIT --                                                                                   
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------
  -- Exemple de condition IF // IF Sample condition
    -- LOCAL JOUR/NUIT --
  local nuit = {"Global", "Jour_Nuit", "NUIT"}
  local jour = {"Global", "Jour_Nuit", "JOUR"}
  -- local garageAvertissement = {"Global", "GEA_Garage", "ON"}

-- Si la variable est à  jour et qu'on est après le couché du soleil, on remet à  nuit
GEA.add({"Global", "Jour_Nuit", "JOUR"}, 60, "", {{"Time", "Sunset", "Sunrise"}, {"Global", "JOUR_NUIT", "NUIT"}})
-- Si la variable est à  nuit et qu'on est après le levé du soleil, on remet à  jour
GEA.add({"Global", "Jour_Nuit", "NUIT"}, 60, "", {{"Time", "Sunrise", "Sunset"}, {"Global", "JOUR_NUIT", "JOUR"}})

-- MESSAGES D'AVERTISSEMENTS PUSH ----------------------------------------------------------------------
--  GEA.add({"Global", "EtatPortail", "open"}, -1, "Portail ouvert à  #time# le #date#", {{"Portable", 220}})
  GEA.add({"Global", "EtatPortail", "open"}, -1, "Portail ouvert à  #time# le #date#")
  GEA.add({"Global", "EtatPortail", "close"}, -1, "Portail fermé à  #time# le #date#")
  GEA.add({"Global", "EtatGarage", "open"}, -1, "Garage ouvert à  #time# le #date#")
  GEA.add({"Global", "EtatGarage", "close"}, -1, "Garage fermé à  #time# le #date#")
  GEA.add( id["CHOC_ENTREE"], -1, "Choc porte entrée le #date# à  #time#")
  GEA.add( id["PORTE_ENTREE"], -1, "Porte entrée ouverte le #date# à  #time#")
  GEA.add( id["PORTE_ENTREE"], -1, "Porte entrée fermé le #date# à  #time#", {{"Inverse"}})
  GEA.add( id["FLOOD_GARAGE"], -1, "Inondation garage ! Le #date# à  #time#")
  GEA.add( id["FLOOD_SPA"], -1, "Inondation SPA ! Le #date# à  #time#")
  GEA.add( id["SMOKE_SENSOR"], -1, "Fumées détecté à  l'étage le #date# à  #time#")
 -- GEA.add( id["MOUVEMENT_PERON"], -1, "Présence sur le péron le #date# à  #time#")
  GEA.add( id["PORTE_JARDIN2"], -1, "Porte jardin centrale ouverte. Le #date# à  #time#")
  GEA.add( id["PORTE_JARDIN2"], -1, "Porte jardin centrale fermée. Le #date# à  #time#",{{"Inverse"}})
  -- GEA.add( id["INCLINAISON_GARAGE"], -1, "Garage en mouvement le #date# à  #time#")


 

Et enfin les controles sur les ouvrants

--- PORTAIL ET GARAGE ----------------------------------------------------------------------
-- Avertissement push si la porte du garage s'ouvre à  des heures inappropriée + envoi d'une photo de la caméra par email a l'utilisateur admin (2).
  GEA.add( id["BASCULE_GARAGE"], -1, "Garage ouvert à  #time# je prends une photo" , {{"Time","08:00","19:00"}, {"Days","Monday,Tuesday,Thursday,Friday,Saturday,Sunday"}, {"Picture", id["CAM_GARAGE"], 2}})
-- Controle toutes les 60 secondes, si le garage est ouvert depuis 10 minutes, je ferme le garage avec la scène 58 et j'envoie un push android + Karotz
  GEA.add({"Global", "EtatGarage", "open"}, 10*30, "Garage ouvert depuis plus de 10 minutes le #date# à  #time#, je ferme le garage", {{"Scenario", 61}, {"Global", "Karotz", "Garage ouvert depuis plus de #durationfull#"}, {"VirtualDevice", id["KAROTZ_NOTIFICATIONS"],"4"}})
-- Controle toutes les 60 secondes, si le portail est ouvert depuis 10 minutes, je ferme le portail avec la scène 58 et j'envoie un push android + Karotz
  GEA.add({"Global", "EtatPortail", "open"}, 10*30, "Portail ouvert depuis plus de 10 minutes le #date# à  #time#, je ferme le portail", {{"Scenario", 58}, {"Global", "Karotz", "Portail ouvert depuis plus de #durationfull#"}, {"VirtualDevice", id["KAROTZ_NOTIFICATIONS"],"3"}})

--- DETECTEURS / CONTACTEURS ----------------------------------------------------------------------
  GEA.add( id["PORTE_JARDIN2"], -1, "", {{"turnOn", 335},{"Time", "Sunset+10", "Sunrise+10"}})
  -- Si le détecteur 190 (porte jardin centrale) est activé, on allume la lampe 14 si le soleil est couché
  GEA.add( id["PORTE_JARDIN2"], -1, "", {{"Inverse"},{"turnOff", 335}})
  -- Si le détecteur 190 est désactivé, on éteint la lampe 14
Posté(e)

 

Heuu, il ne manquerait pas des accolades ? ton code fonctionne comme tu l'as posté ?

 

j'aurais ecrit comme cela, mais si le tien fonctionne, c'est bon pour notre info ;-)

GEA.add({id["DETECTEUR_SCELLIER"], {"Value-", id["LUX"],100}}, -1, "", {{"turnOn", id["LUM_SCELLIER_"]}})

@pepite

desoler de repondre tardivement mais tu avais raison il manquait une accolade dans le code que j'avais poster.

pourtant il fonctionne bien avec cette oublie.

Posté(e)

 Je viens de terminer tout mes tests, ceux abandonnés hier soir et les deux de @pepite de ce matin, toujours la même chose, en partant du portail ouvert avec variable sur "Ouvert", il se referme pendant  2 secondes puis s'arrête, deuxième tentative, il ré-ouvre, et troisième se ferme complètement.

Je vais refaire des tests en partant des codes de @jojo (de fin juin) utilisant l'incrémentation avec l'astuce de @HANSOLO pour voir.

Et je vous tiens au courant.

Posté(e)

@Did,

 

Bon ben je ne comprends pas ces 2 secs..tu veux faire seul le code avec l'incrementation ?

amuse toi bien et si tu as besoin d'aide, tu sais ou nous trouver ;-)

Désolé que ce que je t'ai proposé pour l'instant ne fonctionne pas comme tu le souhaites.

On peut peut-etre encore faire differemment, mais en plus de lignes sans passer par l'incrementation auto :

 

1- 207, 1ere fermeture : portail en cours, toto=1

2- cellules reouverture

3- 61 ouvert, portail en cours, toto=1, après X minutes, tentative fermeture toto =2

4- cellules reouverture

5- 61 ouvert, portail en cours, toto=2, apres Y minutes, tentative fermeture, toto=3

6- cellulles reouverture

7- 61 ouvert, portail en cours, toto=3, apres Z minutes, tentatives fermeture, toto =4

8- 61 ouvert, portail en cours, toto=4, apres W minutes : message d'alerte

 

avec l'incrementation auto, on ne pourra pas avoir de durees differentes, ce qui permet de prendre en compte le temps de course total du portail

Sinon @Did, je pense a autre chose avec un function, combien de temps met au max ton portail pour se fermer/ouvrir entierement ?

 

@domodial,

tu recois donc les push pour etat_portail et etat_garage qui sont en instantanées. GEA relit ses traitements, et j'ai l'impression que sur les variables en instantané c'est comme si il n'avait pas retenu la valeur des variables et considere qu'elles ont change de valeur, donc push ?

 

qu'en pensez-vous messieurs ?

 

@jojo

pourquoi non ? tu boudes ;-)

Posté(e)

 @pepite,

à‡a ne me dérange pas si l'intervalle est à  une minute, au contraire, ça laissera au portail le temps de s'ouvrir.

Je fais quoi avec l'entête 61 value?

@971jmd,

Parce que sur la motorisation, il n'y a qu'une sortie qui, alternativement ouvre et ferme.

 

@Did

juste pour comprend, quand tu appuie sur le bouton VD le portail s'ouvre normalement et 2eme appuie il ce ferme normalement ?

ton bouton VD commande qu'elle module ?  quelle est son id ?

 

si possible peut tu nous réalisé un schéma  

Posté(e)

@jojo

pourquoi non ? tu boudes ;-)

j'avais lu trop vite le commentaire. Mais si il manque un ( ou { ou [, il doit y avoir une erreur de syntaxe, et au minimum la ligne ne devrait pas d'exécuter (voir l'entièreté du GEA)

Posté(e)

@ pepite

 

pourquoi je pose la question, c'est je me questionne sur fait que le processus et peut-être trop long.

 

GEA >> VD  >> IPX >> motorisation portail

 

pourquoi ne pas réaliser :  GEA >> IPX >> motorisation portail

 

il peut avoir un temps de réaction entre les retour d'information si ouvert ou fermet avec  FGBS  et l'envois de commande GEA >> VD  >> IPX >> motorisation portail

Posté(e)

@pepite

Je pense que c'est plus tordu encore car il s'agit pas seulement des notifs sur les variables mais aussi sur la porte d'entrée ou celle du jardin. Enfin toutes notifs survenues y a pas longtemps. Les autres ne me seront pas envoyer en fausses alerte.

Exemple : j'ouvre et je ferme la porte. Je recois mes notifs tou roule.

Si je reboot la box, je reçois ces notifs encore une fois...mais a l'heure du reboot et pas a l'heure ou ça c'est produit a la limite (style 1h avant).

C'est chelou

Envoyé de mon GT-I9505 en utilisant Tapatalk

Posté(e)

 Le module virtuel me sert que pour la fermeture automatique de 22h30 (je l'ai déjà  dit, non :P) mais avec la télécommande ou l'IPX, c'est instantané. Je teste actuellement avec l'incrémentation mais ça n'a pas l'air de monter au dessus de 1 pour la variable, je termine et je vous mets ça ici.

Merci encore pour votre patience. :13:

  • Upvote 1
Posté(e)

 Pas de soucis,

J'ai ré-essayé ces lignes de @jojo:

-- si ouverture (il était fermé, 61=0) du portail (par télécommande ou VD) => Portail = 0
GEA.add ({207, {"Value", 61, 0}}, -1, "Ouverture du portail", {{"Global", "Portail", 0}, {"Time", "07:05", "22:15"}})
 
-- si fermeture du portail il était ouvert, 61=1) (par télécommande ou VD) => Portail = 1
GEA.add ({207, 61}, -1, "Fermeture du portail", {{"Global", "Portail", 1}, {"Time", "07:05", "22:15"}})
 
-- si portail non fermé après 1 min et 1 <= Portail >= 4 => essayer de fermer portail via VD et incrémenter Portail de 1
GEA.add ({61, {"Global+", "Portail", 0}, {"Global-", "Portail", 5}}, 1*60, "Erreur fermeture portail => on réessaie", {{"VirtualDevice", 169,1}, {"Global", "Portail", "inc+"}, {"Time", "07:05", "22:15"}})
 
-- si Portail >= 5 => envoyer nottification erreur
GEA.add ({"Global+", "Portail", 4}, 1*60, "Erreur fermeture portail après 3 tentatives",{{"Time", "07:05", "22:15"}})

Pour les deux premières lignes, impec, la variable est à  0 ouvert et passe à  1 quand il est fermé mais je ne le vois pas monter plus haut, il retente une seconde fois de se refermer mais c'est tout?

Posté(e)

 Le portail met 23 secondes pour se fermer (idem pour l'ouverture) donc 1 minute, c'est nickel.

Bizarre, deux tentatives seulement et la variable bloque à  1 (alors qu'il est ouvert).

Voici ce que me rapporte le debug:

 

Posté(e)

l'erreur est sur la derniere ligne

J'ai repris le code de @jojo

-- si ouverture (il était fermé, 61=0) du portail (par télécommande ou VD) => Portail = 0
GEA.add ({207, {"Value", 61, 0}}, -1, "Ouverture du portail", {{"Global", "Portail", 0}, {"Time", "07:05", "22:15"}})

-- si fermeture du portail il était ouvert, 61=1) (par télécommande ou VD) => Portail = 1
GEA.add ({207, 61}, -1, "Fermeture du portail", {{"Global", "Portail", 1}, {"Time", "07:05", "22:15"}})

-- si portail non fermé après 1 min et 1 <= Portail >= 4 => essayer de fermer portail via VD et incrémenter Portail de 1
GEA.add ({61, {"Global-", "Portail", 5}}, 1*60, "Erreur fermeture portail => on réessaie", {{"VirtualDevice", 169,1}, {"Global", "Portail", "inc+"}, {"Time", "07:05", "22:15"}, {"Repeat"}})

-- si Portail >= 5 => envoyer notification erreur
GEA.add ({"Global", "Portail", 4}, 1*60, "Erreur fermeture portail après 3 tentatives",{{"Time", "07:05", "22:15"}})

J'ai changé la ligne de la comparaison en ne mettant que si portail <5 et rajouter un Repeat pour etre sur qu'il continue tant que le portail est ouvert et portail <5
pour la derniere ligne de notification : j'ai enleve le + pour dire si portail =4 pendant 1 min : notification

 

A tester @Did

 

En effet avec 23 secs ca devrait etre bon

Posté(e)

 Et non, je suis allé jusqu'à  sept tentatives, pas de notif "Erreur fermeture portail après 3 tentatives" et variable toujours à  1.

Ce ne serait pas la seconde ligne qui marche bien et écrase l'incrémentation et remet systématiquement la variable à  1?

Posté(e)

Bonsoir a tous juste une petite question 

GEA.add(true, 1*60, "volets fermés", {{"Time", "Sunset+25", "Sunset+30"}, {"Close",id["VOLET_EMMA"],100},{"Close",id["VOLET_PARENT"],100},{"Close",id["VOLET_SALON"],100}})

pour avoir une fermeture 25 MIN après le couché du soleil est ce que ce code vous semble juste 

car j ai essayé

{{"Time", "Sunset", "Sunset+25"},

Puis {{"Time", "Sunset+25"},


mais sans résultat 

 

merci encore 

Serge

Posté(e)

Bonjour la communauté GEA,

 

Je suis en galère avec mes volets que j'aimera automatiser avec GEA, utilisant déjà  le script avec bonheur pour d'autres tâches.

 

J'ai essayé différentes choses sans succès :

GEA.add( true, 30, "", {{"Time", "21:53", "21:55"}, {"Open", id["VOLETS_BUREAU"]}})

me retourne :

[DEBUG] 21:53:08: [ Toujours ] sendActions : traitement des actions (ID: 17) [Time,21:53,21:55] [Open,337]

 

[DEBUG] 21:53:08: [ Toujours ] !!! ERREUR !!! : vérification (ID: 17) [Time,21:53,21:55] [Open,337]

 

 

 

ou

GEA.add({ id["VOLETS_BUREAU"], jChome}, 30, "", {{"Inverse"}, {"Time", "08:00", "08:05"}, {"Open"}})

me retourne :

 

[DEBUG] 22:07:02: [ 337 | Volets bureau ] sendActions : traitement des actions (ID: 17) [inverse] [Time,22:07,22:09] [Open] [if..]
[DEBUG] 22:07:02: [ 337 | Volets bureau ] sendActions : !ACTION! : Open (ID: 17) [inverse] [Time,22:07,22:09] [Open] [if..]

[DEBUG] 22:07:02: [ 337 | Volets bureau ] Done : tâche effectuée et suspendue (ID: 17) [inverse] [Time,22:07,22:09] [Open] [if..]

 

Dans tous les cas, le volet fermé ne bouge pas d'un poil.

 

Si vous pouvez m'aiguiller dans ma programmation, je dois louper un truc....

 

Merci par avance.

Bonne soirée.

Posté(e)

Bonsoir 

je suis pas un expert de gea je suis novice mais je penses que si tu veux passer par un vd jchome ou pas il faut d'abord que tu specifies les valeurs

local estChome = {"If", {{"Global", "JourChome", "OUI"}}}
local estTravail = {"If", {{"Global", "JourChome", "NON"}}} 

et après donc si chome ou pas 

GEA.add(true, 1*60, "",{estTravail, {"Time", "19:15", "19:17"}, {"Close",id["VOLET_SALON"],100}}) 
Posté(e)
GEA.add(true, 1*60, "volets fermés", {{"Time", "19:15", "19:17"}, {"Close",id["VOLET_SALON"],100}})

Sans VD Jchome

je penses que ce code fonctionne 

mais je répète je suis novice

@+ 

Posté(e)

EN

 

Need some help with this task. Want it to run only between time that i have specified but it runs always.

  	local wcTask = GEA.add(id["wcTaklampa"], 10*60, "", {{"turnOff"}})

  	GEA.add(id["mSensor1wc"], -1, "", {{"If",{{"Days","Weekdays"},{"Time", "07:00", "22:00"}}},{"Function", function() fibaro:call(id["wcTaklampa"], "turnOn") end},{"Function", function() fibaro:call(id["wcSpegel"], "turnOn") end},{"RestartTask", wcTask}})	
	GEA.add(id["mSensor2wc"], -1, "", {{"If",{{"Days","Weekdays"},{"Time", "07:00", "22:00"}}},{"Function", function() fibaro:call(id["wcTaklampa"], "turnOn") end},{"Function", function() fibaro:call(id["wcSpegel"], "turnOn") end},{"RestartTask", wcTask}})	
	
×
×
  • Créer...