Aller au contenu

Messages recommandés

Posté(e) (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é par 971jmd
Posté(e)

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

Posté(e)

@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.

Posté(e) (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é par 971jmd
  • Upvote 1
Posté(e)

Oupssss j'ai pas coller le bon code :P 

 

j'ai corriger les poste précédant 

......{{"Function", function() HomeCenter.SystemService.reboot() end}})
Posté(e)

j'ai tester et je confirme que ça fonctionne nikel :60:

 

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}})
Posté(e)

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

Posté(e) (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é par 971jmd
Posté(e)

Mai les {"Function", function() ...........      fonctionne uniquement en démarrage instantané (-1) 

GEA.add({ condition }, -1, "", {{"Function", function() ...........}})
Posté(e)

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...

 

 

 :

Posté(e)

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...

Posté(e)

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...

Posté(e)

@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 ;-)

Posté(e)

 

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}})
Posté(e)

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 ?

Posté(e) (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é par 971jmd
Posté(e)

@ 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

Posté(e)

@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 ;-)

Posté(e)

j'ai toujours utiliser les globals  depuis longtemps :D 

 

bon admettons que.

 

comment remplacer un déclenchement d'une variable global par une local :

GEA.add({"Global", "REBOOT", 1},  -1, "REBOOT", {........
Posté(e)

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

×
×
  • Créer...