971jmd Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 (modifié) @ELACOMB ----Passage de la varriable REBOOT = 1 à 3h00 du mat GEA.add(true, 30, "REBOOT",{{"Time", "03:00", "03:01"}, {"Global", "REBOOT", 1}}) ----Reboot de la BOXHC2 si variable reboot=1 GEA.add({"Global", "REBOOT", 1}, -1, "REBOOT", {{"Function", function() HomeCenter.SystemService.reboot() end}}) ----Apres reboot de la box, Remise a zero de la varriable REBOOT 3h10 du mat GEA.add(true, 30, "",{{"Time", "03:10", "03:10"},{"Global", "REBOOT", 0}}) Il y plus simple aussi tu crée un code LUA dans une scène reboot avec le code suivant: HomeCenter.SystemService.reboot() et dans GEA GEA.add(true, 30, "REBOOT",{{"Time", "03:00", "03:01"}, {« Scenario », <id de la scene reboot>}}) Modifié le 25 octobre 2016 par 971jmd Lien vers le commentaire Partager sur d’autres sites More sharing options...
sebcbien Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 Salut Jmd, Pourquoi ne pas mettre dans une ligne gea un code style: - Entre 3h00 et 3h01 - Sleep 60 secondes (ça bloque tout gea, mais on s'en fiche car on reboote et ça évite un 2e reboot si la box redémarre en moins d'une minute) - Puis la fonction reboot dans {"Function", function() ...} Ca devrait tenir en une seule ligne et sans cène additionnelle. Sent from my Note4 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Steven Posté(e) le 25 octobre 2016 Auteur Signaler Partager Posté(e) le 25 octobre 2016 @pepite avec déjà essayer mais le reboot ne fonctionnait pas à l'intérieur de GEA. Je n'ai pas d'explication à cela. Peux-t-être faudrait-il ressayer. Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 (modifié) @Steven oui ça fonctionne très bien mai: ça fonctionne avec: GEA.add({ condition }, -1, "REBOOT", {{"Function", function() HomeCenter.SystemService.reboot() end}}) ça fonctionne pas avec GEA.add(true, 30, "REBOOT", {{"Function", function() HomeCenter.SystemService.reboot() end}}) Modifié le 25 octobre 2016 par 971jmd 1 Lien vers le commentaire Partager sur d’autres sites More sharing options...
elacombe Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 @ 971Jmd, Il correspond àquoi l'ID 174 dans ta ligne GEA? Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 Oupssss j'ai pas coller le bon code j'ai corriger les poste précédant ......{{"Function", function() HomeCenter.SystemService.reboot() end}}) Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 j'ai tester et je confirme que ça fonctionne nikel et je reçois meme la notification REBOOT ----Passage de la varriable REBOOT = 1 à 3h00 du mat GEA.add(true, 30, "REBOOT",{{"Time", "03:00", "03:01"}, {"Global", "REBOOT", 1}}) ----Reboot de la BOXHC2 si variable reboot=1 alors reboot la HC2 GEA.add({"Global", "REBOOT", 1}, -1, "REBOOT", { {"Function", function() HomeCenter.SystemService.reboot() end}}) ----Apres reboot de la box, Remise a zero de la varriable REBOOT 3h10 du mat GEA.add(true, 30, "",{{"Time", "03:10", "03:11"},{"Global", "REBOOT", 0}}) Lien vers le commentaire Partager sur d’autres sites More sharing options...
jojo Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 oui, mais si ton reboot prend moins d'une minute, au redémarrage, il va rebooter une seconde fois. Mettre le sleep de sebcbien, me semble parfait pour éviter ce risque Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 (modifié) Un reboot prend plus de 2mm, en plus tan que la variable reste à 1 il n'y a pas de possibilité de reboot. Envoyé de mon iPhone en utilisant Tapatalk Modifié le 25 octobre 2016 par 971jmd Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 25 octobre 2016 Signaler Partager Posté(e) le 25 octobre 2016 Mai les {"Function", function() ........... fonctionne uniquement en démarrage instantané (-1) GEA.add({ condition }, -1, "", {{"Function", function() ...........}}) Lien vers le commentaire Partager sur d’autres sites More sharing options...
elacombe Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 J'ai recopié ce code dans mon GEA ----Passage de la varriable REBOOT = 1 à 3h00 du mat GEA.add(true, 30, "REBOOT",{{"Time", "03:00", "03:01"}, {"Global", "REBOOT", 1}}) ----Reboot de la BOXHC2 si variable reboot=1 alors reboot la HC2 GEA.add({"Global", "REBOOT", 1}, -1, "REBOOT", {{"Function", function() HomeCenter.SystemService.reboot() end}}) ----Apres reboot de la box, Remise a zero de la varriable REBOOT 3h10 du mat GEA.add(true, 30, "",{{"Time", "03:10", "03:11"},{"Global", "REBOOT", 0}}) mais il ne se passe rien... Dans le debug, certaines actions de passent concernant cette instruction, mais la box ne reboote pas... : Lien vers le commentaire Partager sur d’autres sites More sharing options...
elacombe Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 Du coup, vu qu'il y a un -1 dans les instructions, doit-on déclarer quelque chose en entête? Lien vers le commentaire Partager sur d’autres sites More sharing options...
elacombe Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 et est-ce que je dois déclarer une variable dans le panneau des variables globales? A priori dans le debug, on voit bien que la variable REBOOT passe à 1 puis repasse à 0 10 minutes après...mais l'action de reboot ne fonctionne pas, et je ne reçois pas de push... Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 @ Elacomb A tu crée la variable REBOOT ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 --[[ %% autostart %% properties %% globals REBOOT --]] dans l’entête aussi sous %% globals Lien vers le commentaire Partager sur d’autres sites More sharing options...
elacombe Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 Cette fois-ci elle a bien rebootée, mais je n'ai pas reçu le push... Lien vers le commentaire Partager sur d’autres sites More sharing options...
elacombe Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 J'ai voulu refaire un test en changeant les horaires...la box n'a pas rebooté... Est-ce que quand elle a effectué cette action une fois il faut forcément la rebooter pour qu'elle la reprenne en compte? C'est surprenant comme comportement... Lien vers le commentaire Partager sur d’autres sites More sharing options...
pepite Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 @pepite avec déjà essayer mais le reboot ne fonctionnait pas à l'intérieur de GEA. Je n'ai pas d'explication à cela. Peux-t-être faudrait-il ressayer. Salut messieurs, Après quelques jours d'absence me revoili..et ben non on se debarrasse pas de moi lol C'est vrai, j'avais testé et rien..tant meiux si ca fonctionne maintenant. Actuellement, suis avec une scene additionnelle ;-) Lien vers le commentaire Partager sur d’autres sites More sharing options...
pepite Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 Mai les {"Function", function() ........... fonctionne uniquement en démarrage instantané (-1) GEA.add({ condition }, -1, "", {{"Function", function() ...........}}) Heuu @91jmd, non je dirais je m'en sers comme ceci.. Bon j'avoue qu'en ce moment c'est aleaatoire ;-) mais je confirme ca fonctionne local tvfreeboxon = false GEA.add(tv_off, -1, "", {{"function", function() tvfreeboxon = false end}}) GEA.add({tv_on, freeboxplayer_on}, 1*60, "", {{"function", function() tvfreeboxon = true end}}) GEA.add({"function", function() return tvfreeboxon end}, 1*60, "", { {"VirtualDevice", id["TELCO_TV"], telcotv_mute}, {"function", function() fibaro:sleep(1*1000) end}, {"VirtualDevice", id["TELCO_TV"], telcotv_ok}, {"function", function() tvfreeboxon = false end}}) Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 J'ai voulu refaire un test en changeant les horaires...la box n'a pas rebooté... Est-ce que quand elle a effectué cette action une fois il faut forcément la rebooter pour qu'elle la reprenne en compte? C'est surprenant comme comportement... A tu vérifier si la variable REBOOT est bien revenu a zero ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 (modifié) Il est possible que le redémarrage de ta box est un plus long modifie la ligne qui remet la variable a zéro exemple: si tu reboot a 3h00, fait en sorte que la remise a zero de la variable ce fasse 20mm après le redémarrage. ---Apres reboot de la box, Remise a zero de la varriable REBOOT 3h10 du mat GEA.add(true, 30, "",{{"Time", "03:20", "03:21"},{"Global", "REBOOT", 0}}) . . et petite modif pour la notification, j'ai rajouter 5s avant le reboot, le temps que la boxe envois la notification modifie la ligne du reboot ----Reboot de la BOXHC2 si variable reboot=1 GEA.add({"Global", "REBOOT", 1}, -1, "REBOOT", { {"function", function() fibaro:sleep(5000) end}, {"Function", function() HomeCenter.SystemService.reboot() end}}) Modifié le 26 octobre 2016 par 971jmd Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 @ Pepite je pensse que ton probleme vient des 2 lignes: GEA.add({tv_on, freeboxplayer_on}, 1*60, "", {{"function", function() tvfreeboxon = true end}}) GEA.add({"function", function() return tvfreeboxon end}, 1*60, "", { trouve un moyen pour les activer avec un -1 avec une variable c'est nikel Lien vers le commentaire Partager sur d’autres sites More sharing options...
pepite Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 @971jmd, Je te confirme que ces lignes ont fonctionne jusqu'à mon plantage de GEA ce we ;-), soit depuis quelques mois ;-) Conseil des experts dev du forum : plus tu as la possibilité d'utiliser les variables locales, mieux c'est ;-) pour les perfs. En ce moment, j'elimine les variables Globales tant que possible en passant par les Label : même portée que les Variables Globales, json possible et autre ;-) Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 j'ai toujours utiliser les globals depuis longtemps bon admettons que. comment remplacer un déclenchement d'une variable global par une local : GEA.add({"Global", "REBOOT", 1}, -1, "REBOOT", {........ Lien vers le commentaire Partager sur d’autres sites More sharing options...
971jmd Posté(e) le 26 octobre 2016 Signaler Partager Posté(e) le 26 octobre 2016 j'ai fait une petit inexpérience, mai ça na pas fonctionner. ---- declaration de variable local reboot GEA.add(true, 30, "REBOOT1",{{"function", function() local reboot = 10 end }}) ----- si variable local reboot=10 alors ....... GEA.add({"function", function() local reboot = 10 end}, -1, "REBOOT2",{...... place aux experts Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés