pepite 1 272 Signaler ce message Posté(e) 1 avril 2015 Que tu sois présent ou absent c'est la meme temperature pour toi ? tu ne changes pas la valeur de value ? @sebbrunie : tu as modifie aussi dans ta conf GEA ? GEA_TASKS Partager ce message Lien à poster Partager sur d’autres sites
Sebbrunie1 13 Signaler ce message Posté(e) 1 avril 2015 si mais je pense que tu dois faire une seule commande. Tu n'as pas besoin de le faire sur une aussi longue période. Ta variable Presence est mise à jour en continu? sinon tu peux faire ca: GEA.add( {"Global", "Presence", "present"}, -1, "", {{"Time", "01:00", "06:00"}, { "Value", 33, 20}}) GEA.add( {"Global", "Presence", "present"}, -1, "", {{"Time", "07:00", "01:00"}, { "Value", 33, 22}}) Le -1 à la place de 30 va commander la température dès que ta variable presence changera. ET puis tu peux mettre toutes tes têtes sur la même tache si elles ont la même température Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 @pepite non effectivement pour la nuit il n'y a pas de changement. C'est uniquement en journée. Mais si les Danfoss répondent j'adapterai en fonction... Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 Merci @Sebbrunie1 je teste ca tout de suite ! Partager ce message Lien à poster Partager sur d’autres sites
pepite 1 272 Signaler ce message Posté(e) 1 avril 2015 n'oublie pas de mettre ta varibale presence dans l'entete avec le code de sebbrunie Partager ce message Lien à poster Partager sur d’autres sites
jojo 2 620 Signaler ce message Posté(e) 1 avril 2015 @sebbrunie, Comment changes-tu ta variable ? si elle est changée via le panel variable, cela ne génère pas de trigger Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 @pepite le nouveau code donne ca si je ne fait pas d'erreur : -- Thermostats at 20° from 01h00 to 06h00 if Present GEA.add( {"Global", "Presence", "present"}, -1, "", {{"Time", "01:00", "06:00"}, { "Value", 33, 20}, { "Value", 27, 20}, { "Value", 392, 20}}) -- Thermostats at 20° from 01h00 to 06h00 if Absent GEA.add( {"Global", "Presence", "absent"}, -1, "", {{"Time", "01:00", "06:00"}, { "Value", 33, 20}, { "Value", 27, 20}, { "Value", 392, 20}}) -- Thermostats at 22° from 07h00 to 01h00 if Present GEA.add( {"Global", "Presence", "present"}, -1, "", {{"Time", "07:00", "01:00"}, { "Value", 33, 22}, { "Value", 27, 22}, { "Value", 392, 22}}) -- Thermostats at 20° from 07h00 to 01h00 if Absent GEA.add( {"Global", "Presence", "absent"}, -1, "", {{"Time", "07:00", "01:00"}, { "Value", 33, 20}, { "Value", 27, 20}, { "Value", 392, 20}}) @jojo je change ma variable avec un module virtuel a deux bouton. Partager ce message Lien à poster Partager sur d’autres sites
jojo 2 620 Signaler ce message Posté(e) 1 avril 2015 ça devrait donc le faire, mais ton scipt tourne de toute façon automatiquement toutes les 30s. Ce délais est-il trop long ? Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 Bon pas de changement @jojo non c'est juste que les têtes Danfoss ne changent pas. Pourtant Scheduler fonctionnait... Partager ce message Lien à poster Partager sur d’autres sites
jojo 2 620 Signaler ce message Posté(e) 1 avril 2015 @ihexly, je répondais à @sebbrunie ... Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 @jojo désolé Partager ce message Lien à poster Partager sur d’autres sites
pepite 1 272 Signaler ce message Posté(e) 1 avril 2015 @ihexley : ta variable presence est bien dans l'entete ? Partager ce message Lien à poster Partager sur d’autres sites
Sebbrunie1 13 Signaler ce message Posté(e) 1 avril 2015 @ihexley et dans ces têtes Danfoss, la température est en value? C'est la bonne commande? Je ne sais pas n'en n'ayant pas.... @Jojo, via GEA. Ma variable change toutes les 30 sec GEA.add({"Global", "geostarter", "0"}, 30, "", {{"Global", "geostarter", "1"}}) GEA.add({"Global", "geostarter", "1"}, 30, "", {{"Global", "geostarter", "0"}}) Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 @pepite dans l'entête de GEA ? si oui sous quelle forme ? Merci. Partager ce message Lien à poster Partager sur d’autres sites
Sebbrunie1 13 Signaler ce message Posté(e) 1 avril 2015 --[[ %% autostart %% properties %% globals Presence --]] Partager ce message Lien à poster Partager sur d’autres sites
pepite 1 272 Signaler ce message Posté(e) 1 avril 2015 Oui dans l'entete de GEA pour l'instantané (-1) %% globals Presence @sebbrunie : tu as mis geostarter dans l'entete pour le declenchement instantané mais dans ton code ta durée est à30 et non à-1 ? Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 @Sebbrunie1 Avec Scheduler les Danfoss répondaient àla commande setTargetLevel. Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 @pepite @Sebbrunie1 Non je n'ai pas mis ma variable globale dans l'entête (ce que je vais faire de ce pas) mais pour d'autres variables globales non plus (Ecodevices par exemple) et les autres lignes de code fonctionnent elles. Partager ce message Lien à poster Partager sur d’autres sites
Sebbrunie1 13 Signaler ce message Posté(e) 1 avril 2015 @Pepite Ce sont deux instances GEA differentes Partager ce message Lien à poster Partager sur d’autres sites
pepite 1 272 Signaler ce message Posté(e) 1 avril 2015 l'entete est necessaire uniquement pour les declenchements instantanés @seb : donc dans ce cas as tu change cela ? : GEA.globalTasks = "GEA_Tasks" Partager ce message Lien à poster Partager sur d’autres sites
jojo 2 620 Signaler ce message Posté(e) 1 avril 2015 @sebbruniel, Je ne suis pas sà»r de bien comprendre ton code. tu commences par local geostater1 = {"Global", "geostarter", "1"} local geostater1 = {"Global", "geostarter", "0"} donc à quoi sert la première ligne, vu que le résultat sera écrasé par la seconde ? de plus je ne vois pas où tu utilises geostater1 ensuite Partager ce message Lien à poster Partager sur d’autres sites
ihexley 0 Signaler ce message Posté(e) 1 avril 2015 Pas mieux avec la variable en entête. Merci tout de même. Partager ce message Lien à poster Partager sur d’autres sites
Sebbrunie1 13 Signaler ce message Posté(e) 1 avril 2015 Mon vrai code est: local EmplacementMaison1 = "48.84745534593;2.4532449245453" local EmplacementBureau1 = "48.81907202982484;2.3286187648773193" local EmplacementCarantec1 = "48.667815;-3.914054999999962" local EmplacementEternoz1 = "47.00751;6.029551999999967" local EmplacementSeb1 = {"Function", function() return fibaro:getValue(238, "Location") end} -- Localisation EmplacementSeb GEA.add({"Property!", 238, "Location", "0"}, 30, "", {{"Global", "EmplacementSeb", "#value#"}}) local DistanceMaison1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(fibaro:getValue(238, "Location"), EmplacementMaison1))/1000 end} local DistanceBureau1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(fibaro:getValue(238, "Location"), EmplacementBureau1))/1000 end} local DistanceCarantec1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(fibaro:getValue(238, "Location"), EmplacementCarantec1))/1000 end} local DistanceEternoz1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(fibaro:getValue(238, "Location"), EmplacementEternoz1))/1000 end} GEA.add(DistanceBureau1, 30, "", {{"Global", "DistanceBureau", "#value#"}, {"Label", id["DISTANCE"], "Label2", "#value# km"}}) GEA.add(DistanceMaison1, -1, "", {{"Global", "DistanceMaison", "#value#"}, {"Label", id["DISTANCE"], "Label1", "#value# km"}}) GEA.add(DistanceCarantec1, 30, "", {{"Global", "DistanceCarantec", "#value#"}, {"Label", id["DISTANCE"], "Label3", "#value# km"}}) GEA.add(DistanceEternoz1, 30, "", {{"Global", "DistanceEternoz", "#value#"}, {"Label", id["DISTANCE"], "Label4", "#value# km"}}) -- message maison GEA.add({"Global-", "DistanceMaison", "0.1"}, 30, "Je suis à moins de #value# m à #time# de la maison", {{"MaxTime", "1"}}) Qui marche très bien mais qui se lance que lorsque je sauvegarde la scène GEA. J'aimerai qu'il calcul les distance toutes les 30 sec ou mieux que lorsque mes coordonnées geo changent. Oui j'ai changé GEA.globalTasks = "GEA_Tasks" J'ai essayé de me dépatouyer en créant une variable qui change toutes les 30 sec mais sans succès Partager ce message Lien à poster Partager sur d’autres sites
jojo 2 620 Signaler ce message Posté(e) 1 avril 2015 je suis loin d'être un expert GEA, mais 3 bêtes questions : as-tu bien mis le paramètre d'exécution du script à30s ? (encore plus bête, mais on ne sait jamais, c'est tellement gros) la scène est-elle bien active ? ligne 21, je vois -1, ne devrait-ce pas également être 30 ? Partager ce message Lien à poster Partager sur d’autres sites
Sebbrunie1 13 Signaler ce message Posté(e) 1 avril 2015 alors oui c'est à 30 sec, la scène est active (le calcul se fait à l'enregistrement mais plus après) et ligne 21 oui c'est à 30 mais un petit oublie après changement de code Et puis il n'y a rien de bête Je pense que ce sont ces lignes qui ne s'éxecutent pas toutes les 30 sec local DistanceMaison1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(fibaro:getValue(238, "Location"), EmplacementMaison1))/1000 end} local DistanceBureau1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(fibaro:getValue(238, "Location"), EmplacementBureau1))/1000 end} local DistanceCarantec1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(fibaro:getValue(238, "Location"), EmplacementCarantec1))/1000 end} local DistanceEternoz1 = {"Function", function() return true, math.floor(fibaro:calculateDistance(fibaro:getValue(238, "Location"), EmplacementEternoz1))/1000 end} Partager ce message Lien à poster Partager sur d’autres sites