Aller au contenu

Recommended Posts

Est-il possible de récupérer le contenu d'un Label d'un VD pour pour l'intégrer dans les conditions sans que cela soit une réelle condition, (quelque soit le contenu) mais cette donnée puisse être utilisé comme un valeur (#value[2]#) à intégrer dans le texte d'un message envoyé (mail, sms, TTS, Push, ...).

 

Si oui pourriez-vous SVP me donner un exemple ?

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

GEA.add( ......, 30, "Le label est {Label, 100, Label1} et c'est tout"}

Partager ce message


Lien à poster
Partager sur d’autres sites

Super merci, je n'avais pas trouvé dans la bible de @pepite

 

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Je suppose que c'est le même principe pour une variable Globale ?

GEA.add( ......, 30, "La météo aujourd'hui sera {Global, Meteo_Day_Speech}"}

Partager ce message


Lien à poster
Partager sur d’autres sites
La 6.07 définitive arrive dans quelques jours. 
Bonjour Steven
est il possible de savoir en avance ce que va apporter comme fonctions et corrections cette nouvelle version?



Envoyé de mon ONEPLUS A5000 en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

@fredokl

bizarre bizarre, tu n'as pas actions après "démarrage" ? Pas d'erreur dans le debug ? Peux-tu essayer cela ?
 

local toto = GEA.add({{"Global","Saison","Hiver"},{"Global","Maison","Oui"}, 30, "0+0 = tête à toto")

-- Relancer Chauffage en Mode Automatique
GEA.add({ id["PORTE_ENTREE"], {"(Global)","Saison","Hiver"},{"(Global)","Maison","Oui"} },-1 , "Chauffage Mode Automatique", { {"Inverse"}, {"RestartTask", toto} } )

@MAM78, ah ben non ;-) tu n'as pas tout lu, bon preuve que ce n'est pas assez clair, my fault ;-)

-> Il est possible de compléter les messages par des options existantes pour connaitre leur valeur sans les mettre en CONDITIONS

- Ceci :

    GEA.add( {"WeatherLocal!", "Temperature", ""}, {"WeatherLocal!", ""}, 30, " La température ext. est de #value[1]# ° - météo : #value[2]#")

- Donne le même résultat que:

     GEA.add(true, 30, "La température ext. est de {WeatherLocal, Temperature}° - météo : {WeatherLocal}")

- Autre exemple :
    GEA.add({"Global!", "Heure", ""}, 30, "Bientôt l'heure de l'#value#" ) / GEA.add(true, 30, "Bientôt l'heure de l'{Global, Heure}")

 

Partager ce message


Lien à poster
Partager sur d’autres sites

@pepite c'est très claire. sauf que j'avais fait une recherche sur "Label" et que je n'étais pas tombé sur ce chapitre. J'aurais du faire ma recherche sur "Global" et j'aurais trouvé par moi-même ;)

 

En tout cas merci pour votre réactivité.

 

C'est ma WAF qui va être contente de connaître la météo du jour tous les matin en prenant son café :74:

Partager ce message


Lien à poster
Partager sur d’autres sites

v.6.07 ajouté le 22 mars 2018

  • mod : correction slider {"Slider", <id_mv>, <Label>, <valeur>}
  • mod : ajout de GEA.getMessageDecorator(msg) pour permettre à l'utilisateur d'ajouter facilement ces propres gsub()
  • mod : ajout GEA.trad.locale
  • mod : correction usage de la variable globale
  • mod : correction lors de multiple {"Portable", <id portable>}
  • mod : ajout Popup with scenario ID
  • add : {"Polling", <id module>}

C'est ici : 

 

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

@pepite Avec les lignes que tu m'as fournis, la tâche toto redémarre bien et j'ai bien le push. Je me suis inspiré de cela pour créer ces lignes:

--================
  --TEST CHAUFFAGE
--================
  -- Arrêt Chauffage si porte entrée ouverte
GEA.add({{"(Global)","Cap_Porte_Entree","Ouvert"}, {"(Global)","Saison","Hiver"},{"(Global)","Maison","Oui"}}, 30, "Chauffage Mode Test", {"VirtualDevice", id["VD_CHAUF_SALON"], 8})

  -- Relancer Chauffage en Mode Automatique
GEA.add({{"(Global)","Cap_Porte_Entree","Fermée"}, {"(Global)","Saison","Hiver"},{"(Global)","Maison","Oui"}}, 30, "Chauffage Mode Automatique", {{"Inverse"},{"RestartTask",{chaufsalon1,chaufsalon2,chaufsalon3,chaufsalon4,chaufsalon5,chaufsalon6,chaufsalon7}}})

Cela à fonctionné. Cool! Par contre le déclenchement de la tâche c'est fait 1 minute après le lancement de celle-ci. Est-ce normal? Voici le debug:

[DEBUG] 18:43:41:    [Démarrage] #93 [Global, ["Cap_Porte_Entree","Ouvert"]][Global, ["Saison","Hiver"]][Global, ["Maison","Oui"]][VirtualDevice, [45,8]]
[DEBUG] 18:43:41:    [Démarrage] #94 [Global, ["Cap_Porte_Entree","Fermée"]][Global, ["Saison","Hiver"]][Global, ["Maison","Oui"]][RestartTask, [[83,84,85,86,87,88,89]]]
[DEBUG] 18:44:10: ... vérification en cours #5 @150s...
[DEBUG] 18:44:40: ... vérification en cours #6 @180s...
[DEBUG] 18:44:40:    [Démarrage] #88 [Global, ["Saison","Hiver"]][Global, ["Maison","Oui"]][Time, ["17:01","22:30"]][VirtualDevice, [45,3]]

EDIT: Je viens de refaire un test et ça ce relance au bout de 1 minute. Ce n'est pas grave. Ça fonctionne c'est l'essentiel.

Merci

Modifié par fredokl

Partager ce message


Lien à poster
Partager sur d’autres sites

L'un de vous peut-il me dire pourquoi quand ma lumière entre 00h10 et 23h11 est allumé, je ne reçois pas une alerte ? 

Je ne vois pas d'erreur sur mes lignes

 

 

GEA.add({{"Time", "00:10", "23:11"},{"Power+", id["Lumiere_Salon"],1}}, 1*60, "Le lampe du salon est allumé depuis #durationfull#")
  

Partager ce message


Lien à poster
Partager sur d’autres sites

@schwinnySalut j'ai testé ta ligne et ça fonctionne bien chez moi. As-tu vérifié le nom de ton module? Peut-être une erreur de frappe?

Partager ce message


Lien à poster
Partager sur d’autres sites

Ben oui, et la ligne se déclenche bien :(

mais aucune notification sur cette ligne précisé

 

Partager ce message


Lien à poster
Partager sur d’autres sites

@fredokl

Ah ben voilà, toto a bien bossé ;-)

 

1- tu n'as pas besoin des parenthèses autour des options, tu es en mode automatique, les parenthes sont necessaires en cas de declenchements instantanés afin d'exclure des options en conditions.

 

2- 1 minute après est pour moi un fonctionnement correct au vu de tes lignes :

  --> tes taches sont avec une durée de 30

 --> la relance du chauffage en mode automatique est aussi à 30.

Partager ce message


Lien à poster
Partager sur d’autres sites

Je souhaiterais ajouter au scénario ci-dessous une condition :

  • Si pas de mouvements pendant x minutes

    -- Avertissement un push message TTS sonos toutes les x mn tant que ouvert

GEA.add
{id["OUVERTURE_FENETRE_AURELIEN"], {"Label-", id["VD_NETATMO_EXT_ARRIERE"], "lblTemp", DegreMini_Alerte_Ouvrants}}, Duree_Avant_Alerte_Ouvrants, 
"Il fait dehors #value[2]# degrés et la fenêtre de la chambre de Aurélien est ouverte depuis plus de #duration#",
{{"Repeat"}, {"sonostts", id["VD_SONOS"], id["VD_SONOS_BT"], "Il fait dehors #value[2]# et la fenaitre de la chambre de aurelien est ouverte depuis plus de #durationfull#", Volume_Alerte_Ouvrants}},
"Fenêtre Aurélien toujours ouverte")

Je sais bien comment mettre une condition sur un détecteur de mouvement :

   

GEA.add({id["MOUVEMENT_AURELIEN"]}, 5*60, "", {{"Inverse"}, {Action]}, {"Repeat"}}, "Pas de mouvement depuis 5 min.")


Mon problème est comment assembler ces 2 conditions ?

 

Sachant qu'il faut intégrer dans la partie Action {"Inverse"}, mais celle-ci ne s'applique qu'à la première condition et dans mon cas ma condition principale est l'ouverture de la fenêtre depuis Duree_Avant_Alerte_Ouvrants minutes.

 

Modifié par MAM78

Partager ce message


Lien à poster
Partager sur d’autres sites

Le "Inverse" peux recevoir comme paramètre le numéro de la condition a inversé, exemple {"Inverse", 3} qui inversera la 3eme condition.

 

Sinon regarde le {"Depend"}.

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Trop fort vous avez pensés à tout :13::74:

  • Like 1
  • Haha 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Si j'ai bien compris ça devrait donner ça :

 

GEA.add(
		{
			id["OUVERTURE_FENETRE_AURELIEN"], 
			{"Label-", id["VD_NETATMO_EXT_ARRIERE"], "lblTemp", DegreMini_Alerte_Ouvrants},
			{id["MOUVEMENT_AURELIEN"]}
		},
		Duree_Avant_Alerte_Ouvrants, 
		"Il fait dehors #value[2]# degrés et la fenêtre de la chambre de Aurélien est ouverte depuis plus de #duration#",
		{
			{"Repeat"},
			{"Inverse", 3},
			{"sonostts", id["VD_SONOS"], id["VD_SONOS_BT"], "Il fait dehors #value[2]# et la fenaitre de la chambre de aurelien est ouverte depuis plus de #durationfull#", Volume_Alerte_Ouvrants}
		},
		"Fenêtre Aurélien toujours ouverte")

J'ai essayé de faire la même chose avec la fonction {"Depend"}, mais je ne suis pas certain de mon coup :

local AucunMouvementAurelien5Min = GEA.add({id["MOUVEMENT_AURELIEN"]}, 5*60,"", {"Inverse"})
GEA.add(
		{
			{"Depend", AucunMouvementAurelien5Min},
			{id["OUVERTURE_FENETRE_AURELIEN"]},
			{"Label-", id["VD_NETATMO_EXT_ARRIERE"], "lblTemp", DegreMini_Alerte_Ouvrants}
		},
		Duree_Avant_Alerte_Ouvrants,
		"Il fait dehors #value[3]# degrés et la fenêtre de la chambre de Aurélien est ouverte depuis plus de #duration#",
		{
			{"Repeat"},
			{"sonostts", id["VD_SONOS"], id["VD_SONOS_BT"], "Il fait dehors #value[3]# et la fenaitre de la chambre de aurelien est ouverte depuis plus de #durationfull#", Volume_Alerte_Ouvrants}
		},
		"Fenêtre Aurélien toujours ouverte")

L'intérêt de la deuxième possibilité, c'est de pouvoir mesurer de façon différentié le temps d'absence de mouvement de celui ou la fenêtre est ouverte.

 

Merci pour vos corrections ou suggestions d'améliorations ;)

 

Modifié par MAM78

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour a tous

Je suis bien passé a GEA 6.07 comme recommandé

Voici ma ligne de code

  GEA.add(id["SENSOR_DROITE_VERANDA"], 120, "arret clim sensor droit ouvert ", {"Property", id["CONTROL_CLIM_VERANDA"], "setMode", "0"} )

Je reçois bien le message en push

Mais j'ai toujours ce message dans le debug, et l'ordre n'est pas envoyé a ma clim

Erreur, vérifier : [Property, [203,"setMode","0"]]

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 18 heures, MAM78 a dit :

Si j'ai bien compris ça devrait donner ça :

@Steven & @pepite vous pourriez SVP jeter un oeil ?

Partager ce message


Lien à poster
Partager sur d’autres sites

@MAM78

Perso, j'utilise le depend ainsi pour plus de facilité

 

local event1 = GEA.add()

local event2 = GEA.add()

 

GEA.add( {"Depend", event1, event2}, 0, .......... )

Partager ce message


Lien à poster
Partager sur d’autres sites
Il y a 8 heures, Steven a dit :

GEA.add( {"Depend", event1, event2}, 0, .......... )

Master, pour mettre à jour le fichier syntaxe, dans ce cas c'est :

 - si event1 OU event2 est modifié : exécution de la ligne

 - si event1 ET event2 sont modifés : exécution de la ligne

 

question du noob de retour ;-)

 

@flacon030

Tu peux coller l'API de ton device 203 stp ;-) ?

 

Pour tester, mets dans config()

GEA.catchError = false

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Excuse moi @pepite et @MAM78

 

C'est :

 

GEA.add( {{"Depend", event1}, {"Depend", event2}}, 0, ... )

 

Par contre, ce serait judicieux de le faire pour la prochaine version avec un ET.

  • Like 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui, ce serait pas mal avec un ET effectivement ;-), bonne idée

 

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Vous voulez dire que pour moment c’est à ou

Partager ce message


Lien à poster
Partager sur d’autres sites

×