Aller au contenu

Recommended Posts

@domodial:

 

As tu le problème juste sur 1 ligne ou plusieurs? Ta syntaxe est bonne

 

Lorsque tu utilises PORTABLE, les Push se fait aux appareils définis par cette option et plus aux appareils définis via GEA.portables.

 

Donc si les 2 id dans MobileID sont faux tu n'auras pas de push du tout (car mauvais id et push générique shunté) pour aucun de tes 2 exemples

Si ton id Mobile est OK est pas l'autre tu recevras la notification pour les 2 lignes en exemple. D'où la question, ta première ligne se déclenche t'elle ?

Partager ce message


Lien à poster
Partager sur d’autres sites

Nikko,

 

Mes notifs fonctionnent sur des lignes et pas pour toutes les autres.

En gros, toutes les notifications ou j'ai la variable maison à  Absent (pour ne pas recevoir les notifications quand je suis là  sur certaines lignes).

Et sur d'autres, j'ai besoin quand meme des notifs, je les reçois donc bien avec la syntaxe.

 

Je te met des infos (GEA.portables par exemple) pour te montrer comme j'ai fait :

 

 

Ici je ne renseigne plus GEA.portables)

  GEA.portables               = {} -- liste de portables : 360 mon mobile, 220 iphone nathalie


J'ai fait un MobileId à  la suite du local id)

}

local MobileId = {
-- Portables
PHONE_NATHALIE = 220,
PHONE_BERNARD = 360,
}


Ici plus RIEN ne fonctionnent :

--- Les notifications ci dessous sont désactivé si Maison en mode Present

  GEA.add({{"Global", "EtatPortail", "open"}, {"Global","Maison","Absent"}}, -1, "Portail ouvert à  #time# le #date#", {{"Portable", MobileId["PHONE_BERNARD"]}, {"Portable", MobileId["PHONE_NATHALIE"]}})
  GEA.add({{"Global", "EtatPortail", "close"}, {"Global","Maison","Absent"}}, -1, "Portail fermé à  #time# le #date#", {{"Portable", MobileId["PHONE_BERNARD"]}})
  GEA.add({{"Global", "EtatGarage", "open"}, {"Global","Maison","Absent"}}, -1, "Garage ouvert à  #time# le #date#", {{"Portable", MobileId["PHONE_BERNARD"]}, {"Portable", MobileId["PHONE_NATHALIE"]}})
  GEA.add({{"Global", "EtatGarage", "close"}, {"Global","Maison","Absent"}}, -1, "Garage fermé à  #time# le #date#", {{"Portable", MobileId["PHONE_BERNARD"]}})

  GEA.add({id["PORTE_ENTREE"], {"Global","Maison","Absent"}}, -1, "Porte entrée ouverte le #date# à  #time#", {{"Portable", MobileId["PHONE_BERNARD"]}, {"Portable", MobileId["PHONE_NATHALIE"]}})
  GEA.add({id["PORTE_ENTREE"], {"Global","Maison","Absent"}}, -1, "Porte entrée fermé le #date# à  #time#", {{"Inverse"}, {"Portable", MobileId["PHONE_BERNARD"]}})
  GEA.add({id["PORTE_JARDIN2"], {"Global","Maison","Absent"}}, -1, "Porte jardin centrale ouverte. Le #date# à  #time#", {{"Portable", MobileId["PHONE_BERNARD"]}})
  GEA.add({id["PORTE_JARDIN2"], {"Global","Maison","Absent"}}, -1, "Porte jardin centrale fermée. Le #date# à  #time#",{{"Inverse"}, {"Portable", MobileId["PHONE_BERNARD"]}})
  GEA.add({id["PORTE_JARDIN3"], {"Global","Maison","Absent"}}, -1, "Porte jardin droite ouverte. Le #date# à  #time#", {{"Portable", MobileId["PHONE_BERNARD"]}})
  GEA.add({id["PORTE_JARDIN3"], {"Global","Maison","Absent"}}, -1, "Porte jardin droite fermée. Le #date# à  #time#",{{"Inverse"}, {"Portable", MobileId["PHONE_BERNARD"]}})
  GEA.add({id["PORTE_CHAUFFERIE"], {"Global","Maison","Absent"}}, -1, "Porte chaufferie ouverte. Le #date# à  #time#", {{"Portable", MobileId["PHONE_BERNARD"]}})
  GEA.add({id["PORTE_CHAUFFERIE"], {"Global","Maison","Absent"}}, -1, "Porte chaufferie fermée. Le #date# à  #time#",{{"Inverse"}, {"Portable", MobileId["PHONE_BERNARD"]}})


 

Ici par exemple ça fonctionne

--- MAISON "Absence/Présence"
  GEA.add({"Global", "Maison", "Absent"}, -1, "Mode absence le #date# à  #time#", {{"Portable", MobileId["PHONE_BERNARD"]}})
  GEA.add({"Global", "Maison", "Present"}, -1, "Mode présent le #date# à  #time#", {{"Portable", MobileId["PHONE_BERNARD"]}})


 

J'avoue que c'est trop pour moi lol, surtout que pas d'erreur dans GEA

 

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

@domodial:

 

Si tu supprimes tout ce qui est {"Portable", id} dans tes lignes et que tu déclares GEA.portables = { 220 , 360 } Tu reçois bien les notifs? Toutes tes ID sont bien déclarées dans l'entete ? (on ne sait jamais un oubli ça arrive...). Cela donne plus l'impression que c'est ta ligne qui ne se déclenche pas et non pas un problème de notification. Dans La fenetre DEBUG, tu vois bien l'action se déclencher ?

Partager ce message


Lien à poster
Partager sur d’autres sites

oui, ça fonctionnait bien avant :) exactement.

ID ok dans l'entete, en fait tout fonctionnait avant mais avec :

  GEA.portables               = {360, 220} -- liste de portables : 360 mon mobile, 220 iphone nathalie

Mais je veux filtrer car ma femme reçois trop de notifications et ça la soule :)

Partager ce message


Lien à poster
Partager sur d’autres sites

Ici par exemple ça fonctionne

[DEBUG] 07:46:34: [ Value [41|Température] > 20 ] isActivated : type : Value+ (ID: 40) [Portable,360]
[DEBUG] 07:46:34: [ Value [41|Température] > 20 ] isActivated : activé (ID: 40) [Portable,360]

Ici non :

DEBUG] 07:47:04: [ Value [42|Humidité] > 70 ] En cours : vérification (ID: 39) [Portable,360]
[DEBUG] 07:47:04: [ Value [42|Humidité] > 70 ] Check : démarrage vérification (ID: 39) [Portable,360]
[DEBUG] 07:47:04: [ Value [42|Humidité] > 70 ] Check : vérification des dates (ID: 39) [Portable,360]
[DEBUG] 07:47:04: [ Value [42|Humidité] > 70 ] isActivated : vérification de l'activation (ID: 39) [Portable,360]
[DEBUG] 07:47:04: [ Value [42|Humidité] > 70 ] isActivated : type : Value+ (ID: 39) [Portable,360]
[DEBUG] 07:47:04: [ Value [42|Humidité] > 70 ] !CANCEL! isActivated: désactivé (ID: 39) [Portable,360]
[DEBUG] 07:47:04: [ Value [41|Température] > 20 ] En cours : vérification (ID: 40) [Portable,360]
[DEBUG] 07:47:04: [ Value [41|Température] > 20 ] Check : démarrage vérification (ID: 40) [Portable,360]
[DEBUG] 07:47:04: [ Value [41|Température] > 20 ] Check : vérification des dates (ID: 40) [Portable,360]
[DEBUG] 07:47:04: [ Value [41|Température] > 20 ] isActivated : vérification de l'activation (ID: 40) [Portable,360]
[DEBUG] 07:47:04: [ Value [41|Température] > 20 ] isActivated : type : Value+ (ID: 40) [Portable,360]
[DEBUG] 07:47:04: [ Value [41|Température] > 20 ] isActivated : activé (ID: 40) [Portable,360]

Partager ce message


Lien à poster
Partager sur d’autres sites

Cette ligne fonctionne également

  GEA.add({id["LUMIERE_POUBELLE"],nuit}, 30 , "Lumière poubelle allumé", {{"Portable", MobileId["PHONE_BERNARD"]}})

Partager ce message


Lien à poster
Partager sur d’autres sites

Bon, j'ai trouvé, mais je ne sais pas résoudre le probleme :(

 

Ici ça ne fonctionne pas (car controle variable Absent) (pour le test j'ai mis à  Present)

GEA.add({{"Global", "EtatPortail", "close"}, {"Global","Maison","Absent"}}, -1, "Portail fermé à  #time# le #date#", {{"Portable", MobileId["PHONE_BERNARD"]}})

Ici j'enlève le controle et ça fonctionne

GEA.add({"Global", "EtatPortail", "close"}, -1, "Portail fermé à  #time# le #date#", {{"Portable", MobileId["PHONE_BERNARD"]}})

Possible que ce soit le code GEA qui n'accepte pas ?

Car toutes mes lignes qui ne fonctionnent pas comportent le control de la variable "Maison"

Partager ce message


Lien à poster
Partager sur d’autres sites

Je crois que j'ai été au bout de mes connaissances...

 

 

J'ai voulu simplifier la ligne croyant qu'elle serait mieux comprise comme ça :

Afin de recevoir une notification si Absent (ben ça ne fonctionne pas non plus).

Si je vire le contrôle estAbsent, je reçois les notifications :(

   local estPresent = {"Global", "Maison", "Present"}
   local estAbsent = {"Global", "Maison", "Absent"}

GEA.add({id["PORTE_ENTREE"], estAbsent}, -1, "Porte entrée fermé le #date# à  #time#", {{"Inverse"}, {"Portable", MobileId["PHONE_BERNARD"]}})

Partager ce message


Lien à poster
Partager sur d’autres sites

Donc c'est que ta variable globale "Maison" n'est pas mise àjour en mode absence. Quelle action/scene/script bascule cette variable de Present vers Absent ?

Partager ce message


Lien à poster
Partager sur d’autres sites

En entête j'ai ma variable "Maison" déclaré, le mode Absent/Présent est déclenché par l'activation ou désactivation de la vidéosurveillance.

Ma variable change bien d'état à  chaque fois.

 

J'ai deux façons d'allumer ou éteindre la vidéo surveillance, et ça change l'état de la variable "Maison"

Si sur un VD (variable Maison) je clic Absent, ça allume la vidéosurveillance. Si je clic Present ça coupe.

Si j'appuye sur le bouton du module SURVEILLANCE_VIDEOS (1), ça allume la vidéosurveillance et passe la variable à  Absent.

Et inversement si module OFF ça met la variable a Present.

 

Jusque là  tout fonctionne.

Depuis la modif idMobile, cette modif fonctionne sur toutes les lignes, sauf les lignes avec la variable "Maison".

---======= FONCTIONNEMENT VIDEOSURVEILLANCE + ALERTES LUMINEUSES DE CONFIRMATION =======-------
---
--- Allume ou éteint la vidéosurveillance en fonction de l'action sur le bouton variable "Maison" (Absent/Présent)
  GEA.add({{"Global","Maison","Present"}}, -1 , "VideoSurveillance désactivé" , {{"turnOff", id["SURVEILLANCE_VIDEOS"]}})
  GEA.add({{"Global","Maison","Absent"}}, -1 , "VideoSurveillance activé" , {{"turnOn", id["SURVEILLANCE_VIDEOS"]}})

--- Allume ou éteint la vidéosurveillance action manuel du module SURVEILLANCE_VIDEOS au sol
--- Lorsque SURVEILLANCE_VIDEOS est activé (1) alors passer la variable Maison à  Absent et alerte ROUGE
  GEA.add({"Value",id["SURVEILLANCE_VIDEOS"],1}, -1 , "" , {{"Global","Maison","Absent"}, {"RGB", id["BANDEAU_LED"], 255, 0, 0, 100}})
--- Arret de l'alerte lumineuse après 5 mn
  GEA.add({"Value",id["SURVEILLANCE_VIDEOS"],1}, 1*60, "", {{"Global","Maison"," Absent"}, {"turnOff", id["BANDEAU_LED"]}})

--- Lorsque SURVEILLANCE_VIDEOS est désactivé (0) alors passer la variable Maison à  Present et alerte VERTE
  GEA.add({"Value",id["SURVEILLANCE_VIDEOS"],0}, -1 , "" , {{"Global","Maison","Present"}, {"RGB", id["BANDEAU_LED"], 0, 255, 0, 100}})
--- Arret de l'alerte lumineuse après 5 mn
  GEA.add({"Value",id["SURVEILLANCE_VIDEOS"],0}, 1*60, "", {{"Global","Maison"," Present"}, {"turnOff", id["BANDEAU_LED"]}})

Partager ce message


Lien à poster
Partager sur d’autres sites

Supposons que ma variable "Maison" est à  Present, que cette variable est déclaré dans l'entete, alors cette ligne doit fonctionner pétard de bonsoir :D

Et ben non :(

 

--[[
%% autostart
%% properties
%% globals
Maison
--]]

--- LOCAL Maison
  local estPresent = {"Global", "Maison", "Present"}
  local estAbsent = {"Global", "Maison", "Absent"}

GEA.add({id["PORTE_ENTREE"], estPresent}, -1, "Porte entrée fermé le #date# à  #time#", {{"Inverse"}, {"Portable", MobileId["PHONE_BERNARD"]}})

Partager ce message


Lien à poster
Partager sur d’autres sites

Et les espaces avant absent et present tu veux pas les enlever car c'est moyen....(l12 et l17). En lua " Present" est différent de "Present". (Dans ton post précédent)

 

EDIT:

--[[
%% autostart
%% properties
%% globals
Maison
--]]
 
--- LOCAL Maison
  local estPresent = {"Global", "Maison", "Present"}
  local estAbsent = {"Global", "Maison", "Absent"}
 
GEA.add({id["PORTE_ENTREE"], estPresent}, -1, "Porte entrée fermé le #date# à  #time#", {{"Inverse"}, {"Portable", MobileId["PHONE_BERNARD"]}})

Non Ici c'est id["PORTE_ENTREE"] le déclencheur pas ta VG donc dans l'entete tu dois avoir xx value où xx est l'id porte entree...

Partager ce message


Lien à poster
Partager sur d’autres sites

oui pardon, j'ai viré l'id PORTE_ENTREE en collant ici pour exemple, car y en avait trop long, mais il y est bien.

Pas compris pour les espaces (?)

--[[
%% autostart
%% properties
58 value
%% globals
Maison
--]]

-- Portes
PORTE_ENTREE = 58,

Partager ce message


Lien à poster
Partager sur d’autres sites

EN

 

This do not work, why? Goal is to shut off the wall plug after 40min when it use more then 50watt

GEA.add({"power+", id["kaffebryggare"], 50}, 40*60, "", {{"turnOff", id["kaffebryggare"]}})

Get this error msg

[DEBUG] 10:53:59: line 2066: attempt to concatenate local 'name' (a nil value)

Partager ce message


Lien à poster
Partager sur d’autres sites

@Jompa68:

 

power+ isn't a condition. You have to write:

GEA.add({"Sensor+", id["kaffebryggare"], 50}, 40*60, "", {{"turnOff", id["kaffebryggare"]}})

Moreover you have to chek your id and GEA.isVersionFour

 

Nicolas

Partager ce message


Lien à poster
Partager sur d’autres sites

@Nikko

 

Toutes mes excuses, je ne sais pas comment avait volé dans l'entete d'un VD la déclaration de la variable "Maison"

Ca changeait bien l'état de ma VD mais pas la variable en elle même ! Car dans la VD il n'y avait plus "Maison" en entete.

 

Tout refonctionne, et en mieux :D

Désolé de tout ce binzz, c'est hardu tout ça :P

Partager ce message


Lien à poster
Partager sur d’autres sites

@Jompa68:

 

power+ isn't a condition. You have to write:

GEA.add({"Sensor+", id["kaffebryggare"], 50}, 40*60, "", {{"turnOff", id["kaffebryggare"]}})

Moreover you have to chek your id and GEA.isVersionFour

 

Nicolas

 

So this will be good if i understand right. Second line will stop the first task if it uses less then 10watt or powered Off?

  	local coffeeTask = GEA.add({"Sensor+", id["kaffebryggare"], 50}, 40*60, "", {{"turnOff", id["kaffebryggare"]}})
	GEA.add({"Sensor-", id["kaffebryggare"], 10}, -1, "", {{"StopTask", coffeeTask}})

Partager ce message


Lien à poster
Partager sur d’autres sites

yes, but this second line is not mandatory, only the first line is important

Partager ce message


Lien à poster
Partager sur d’autres sites

So first task will stop if i turnoff coffee machine?

Regards Jonny Larsson

From my iPhone6+ med Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

yes since, first task is only executed when coffie marchine power consumption is above 50W for 40*60 sec (= 40 min)

Partager ce message


Lien à poster
Partager sur d’autres sites
local timer = tonumber(fibaro:getGlobalValue('TIMER'))
GEA.add( true , timer , "" ) 

Lors de la lecture de la ligne GEA, la variable timer sera remplacé par la valeur de la VG. Mais la ligne GEA.add n'est lue qu'une fois. A ce moment les tables sont céées et les valeurs de temps sont figées.

Ceci ne fonctionne donc pas (je ne sais pas si c'est à  ça que tu pensais @Jojo)

 

@971jmd:

Si tu veux voici un VD écrit très vite fait: un bouton +30s, 1 bouton -30s, 1 bouton ON et 1 bouton OFF. Tu crées une variable globale TRIGGER

 

Lors tu bascules le VD sur ON le décompte se fait et quand on arrive à  0  alors TRIGGER bascule sur 1. Ensuite tu peux baser tes condition GEA sur cette VG:

 

attachicon.gifdecompte.png

-- A la fin du timer si lampe allumée on éteint
GEA.add({{"Global","TRIGGER", 1},id["ECL"]}, -1 , "" , {{"turnOff",id["ECL"]}})

Attention ce n'est pas optimisé (décompte toutes les 3s)  c'est juste pour voir si ça te convient. Je t'avoue que je n'a fait que 1 ou 2 essais sous GEA (exemple au-dessus)....

 

 

@ salut NIKKO

 

j'ai tester la VD, mai j'ai modifier afin d'avoir 1800sec par défaut et ça fonctionne  

 

mai le probleme est que les 1800 son mise dans le code et non modifiable avec des boutons.

 

j'ai essayer d'ajouter  un bouton H+  H-  et Min+  Min-  mai pffffff je n'arrive pas

Partager ce message


Lien à poster
Partager sur d’autres sites

@jojo

 

EN

want to send a push when plug turnOff, this does not work like i want, it sends ALOT of push message before the time have elapsed.

  	GEA.add({"Sensor+", id["kaffebryggare"], 50}, 120*60, "", {{"turnOff", id["kaffebryggare"]}})
  	GEA.add(id["kaffebryggare"], -1, "", {{"VirtualDevice", id["TTS"], "3"}})
  	GEA.add(id["kaffebryggare"], -1, "Nu stà¤ngs kaffebryggaren av", {{"Portable", id["iPhoneJonny"]},{"Portable", id["iPhoneMona"]}})

Partager ce message


Lien à poster
Partager sur d’autres sites

@jompa68:

 

If you want to send a push when the plug is turning off you should use Inverse in Parameters:

-- Send a Push when TurnOff
GEA.add(id["kaffebryggare"], -1, "Plug turned off", {{"Inverse"},{"Portable", id["iPhoneJonny"]},{"Portable", id["iPhoneMona"]}})

Partager ce message


Lien à poster
Partager sur d’autres sites

bonjour a tous

je voudrais dissocier l'allumage auto de l'allumage avec l'interrupteur j'ai ce code qui fonctionne bien

GEA.add( id["DETECTEUR_DRESSING"], -1, "", {{"turnOn", id["LUMIERE_DRESSING"]}})
 
-- eteindre la lampe plus de detection pdt 1 mins
GEA.add( id["DETECTEUR_DRESSING"], 1*60, "", {{"Inverse"}, {"turnOff", id["LUMIERE_DRESSING"]}})
 
  

mais le problème est que la lumière s’éteint toute seul au bout du temps un partie et je voudrais que si on allume avec l'interrupteur elle ne s’éteint pas ou si plus de présence dans la pièces elle s éteint toute seul

 

comment faite vous pour dissocier l'auto du manuel

le contexte

un fgs222 2*1.5kw

un fgms 001

Merci de votre aide

et de bonne fête a tous

Partager ce message


Lien à poster
Partager sur d’autres sites

voici ma config, pour faire EXACTEMENT la même chose que ce que tu veux faire

-- Hall de Nuit
  -- Lampe SdJ
    -- Extinction automatique de la lampe après 30s.
     local autoOffSdJ = GEA.add ({DeviceID["LUM_HALLNUIT_SDJ"], auth_LumHallNuit}, 31, "", {{"turnOff"}})
    -- 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_LumHallNuit, {"Value-", DeviceID["LUX_HALLNUIT_SDJ"], 5}, {"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"]}, 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"}})

Partager ce message


Lien à poster
Partager sur d’autres sites

×