Aller au contenu

mprinfo

Membres confirmés
  • Compteur de contenus

    14 367
  • Inscription

  • Dernière visite

  • Jours gagnés

    244

Tout ce qui a été posté par mprinfo

  1. @lazer c'est le but Par contre je voulez partager le code pour le double clic d'où ce QA pour montrer la méthode Envoyé de mon BLA-L29 en utilisant Tapatalk
  2. mprinfo

    Imperihome

    C'est vrai que alsahome ça sonne bien Envoyé de mon BLA-L29 en utilisant Tapatalk
  3. Le bêta testeur c'est le neveu [emoji16] Envoyé de mon BLA-L29 en utilisant Tapatalk
  4. Nouvelle version du QA Version 0.57 beta : Reboot_V0.57_beta.fqa
  5. @krikroff j'ai modifier le body car j'ai pris du poids ----------------------------------- -- Reboot HC3 ----------------------------------- function QuickApp:Reboot() local http = net.HTTPClient({ timeout = 2000 }) local payload = {recovery=false} return http:request("http://localhost/api/service/reboot",{ options={ headers = { ["content-type"] = "application/json;charset=UTF-8", ["Authorization"] = "Basic YWRtaW46YWRtaW4=", ["X-Fibaro-Version"] = "2" }, method = "POST", data = json.encode(payload) } }) end ----------------------------------- -- Arret HC3 ----------------------------------- function QuickApp:Arret() local http = net.HTTPClient({ timeout = 2000 }) return http:request("http://localhost/api/service/shutdown",{ options={ headers = { ["X-Fibaro-Version"] = "2" }, method = "POST", } }) end
  6. a priori c’est bon pour autant de bouton que l'on veut -- Generic device type have no default actions to handle -- Version 0.54 Beta double click par MPRINFO -- https://www.domotique-fibaro.fr/topic/14343-quick-app-reboot-via-double-clic/?tab=comments#comment-226796 function QuickApp:onInit() self:debug("onInit") self.DoubleClic = 0 self.NomBouton = {"0", "0"} self:updateView("label2", "text", "Redemarrage Double Clic Version 0.57 Beta") self:updateView("button", "text", "Redemarrage HC3") end ----------------------------------- -- bouton "button" avec double clic ----------------------------------- function QuickApp:RebootClic() local message1clic = "Ré-appuyer pour confirmer" -- Message de confirmation local messageBouton = "Redemarrage HC3" -- Message bouton default local duree = 10 -- la durée max entre 2 clique (en seconde) local NomBouton = "Reboot" -- ID du bouton qui doit avoir un double clic local time = os.time() if ( self:confirmDoubleClick(message1clic, messageBouton, duree, time, NomBouton) ) == true then -- Si double clic self:updateView(NomBouton, "text", messageBouton) -- votre ICI self:startReboot(NomBouton, messageBouton) end end function QuickApp:ArretClick() local message1clic = "Ré-appuyer pour confirmer" -- Message de confirmation local messageBouton = "Arret HC3" -- Message bouton default local duree = 10 -- la durée max entre 2 clique (en seconde) local NomBouton = "Arret" -- ID du bouton qui doit avoir un double clic local time = os.time() if ( self:confirmDoubleClick(message1clic, messageBouton, duree, time, NomBouton) ) == true then -- Si double clic self:updateView(NomBouton, "text", messageBouton) -- votre ICI self:startArret(NomBouton, messageBouton) end end ----------------------------------- -- confirmation d un double click ----------------------------------- function QuickApp:confirmDoubleClick(message1clic, messageBouton, duree, time, NomBouton) if NomBouton ~= self.NomBouton[1] then self:updateView(self.NomBouton[1], "text", self.NomBouton[2]) self.NomBouton = {NomBouton, messageBouton} self:updateView(NomBouton, "text", message1clic) fibaro.setTimeout(duree*1000, function() self:updateView(NomBouton, "text", messageBouton) end) self.DoubleClic = os.time() return false end if time > self.DoubleClic + duree then print("---------------------------------") print("---------------------------------NomBouton : ", NomBouton) self.DoubleClic = os.time() self:updateView(NomBouton, "text", message1clic) fibaro.setTimeout(duree*1000, function() self:updateView(NomBouton, "text", messageBouton) self.DoubleClic = 0 end) return false end self.DoubleClic = 0 return true end ----------------------------------------------------------------- -- code exécuté suite a un double click ----------------------------------------------------------------- function QuickApp:startArret(NomBouton, messageBouton) self.message = string.format("Arret : %s", os.date("%d/%m/%Y à %Hh %Mmn %Ss")) self:updateView("label1", "text", self.message) print("-----------------------------------Arret") end function QuickApp:startReboot(NomBouton, messageBouton) --self:updateView(NomBouton, "text", "Votre HC3 va Redemarrée....") self.message = string.format("Redemarrage : %s", os.date("%d/%m/%Y à %Hh %Mmn %Ss")) self:updateView("label1", "text", self.message) print("-----------------------------------Reboot") end
  7. @lazer juste un petit soucis avec l' affichage lorsque l'on change de bouton alors que l'autre bouton est en attente plus de set variable maintenant que j'ai un peu prêt compris la portée du self.variable
  8. Voici le code double clic pour plusieurs boutons Exemple avec 2 boutons function QuickApp:onInit() self:debug("onInit") self.DoubleClic = 0 self.NomBouton = " " self:updateView("label2", "text", "Redemarrage Double Clic Version 0.55 Beta") self:updateView("button", "text", "Redemarrage HC3") end ----------------------------------- -- bouton "button" avec double clic ----------------------------------- function QuickApp:RebootClic() local message1clic = "Ré-appuyer pour confirmer" -- Message de confirmation local messageBouton = "Redemarrage HC3" -- Message bouton default local duree = 2 -- la durée max entre 2 clique (en seconde) local NomBouton = "Reboot" -- ID du bouton qui doit avoir un double clic local time = os.time() if ( self:confirmDoubleClick(message1clic, messageBouton, duree, time, NomBouton) ) == true then -- Si double clic self:startReboot(NomBouton, messageBouton) end end function QuickApp:ArretClick() local message1clic = "Ré-appuyer pour confirmer" -- Message de confirmation local messageBouton = "Arret HC3" -- Message bouton default local duree = 2 -- la durée max entre 2 clique (en seconde) local NomBouton = "Arret" -- ID du bouton qui doit avoir un double clic local time = os.time() if ( self:confirmDoubleClick(message1clic, messageBouton, duree, time, NomBouton) ) == true then -- Si double clic self:startArret(NomBouton, messageBouton) end end ----------------------------------- -- confirmation d un double click ----------------------------------- function QuickApp:confirmDoubleClick(message1clic, messageBouton, duree, time, NomBouton) if NomBouton ~= self.NomBouton or time > self.DoubleClic + duree then self.NomBouton = NomBouton self.DoubleClic = os.time() self:updateView(NomBouton, "text", message1clic) fibaro.setTimeout(duree*1000, function() self:updateView(NomBouton, "text", messageBouton) self.DoubleClic = 0 end) return false end self:updateView(NomBouton, "text", " ") self.DoubleClic = 0 return true end ----------------------------------------------------------------- -- code exécuté suite a un double click ----------------------------------------------------------------- function QuickApp:startArret(NomBouton, messageBouton) self:updateView(NomBouton, "text", "Votre HC3 va Redemarrée....") self.message = string.format("double click a : %s", os.date("%d/%m/%Y à %Hh %Mmn %Ss")) self:updateView("label1", "text", self.message) self:updateView(NomBouton, "text", messageBouton) print("-----------------------------------Arret") end function QuickApp:startReboot(NomBouton, messageBouton) self:updateView(NomBouton, "text", "Votre HC3 va Redemarrée....") self.message = string.format("double click a : %s", os.date("%d/%m/%Y à %Hh %Mmn %Ss")) self:updateView("label1", "text", self.message) self:updateView(NomBouton, "text", messageBouton) print("-----------------------------------Reboot") end
  9. Quick App - Reboot via Double Clic Permet de redémarrer la HC3 a partir d'un double clic local duree = 3 -- la durée max entre 2 clique (en seconde) Version 1.00 : Double_Clic_Version_1.00.fqa
  10. Moi j'avais compris ni HC2, ni HC3 dans ce que j'avais lu
  11. Ça on le savait déjà [emoji16] Envoyé de mon BLA-L29 en utilisant Tapatalk
  12. @jjacques68 attention la fonction reboot n'est pas appeler car c'est un test pas envi de faire un reboot a chaque test
  13. C'est bon j'ai touvé, je n'avais jamais fais attention à cela
  14. avant la couleur etait automatique pour le code lua en plus ce que je colle est en couleur -- Generic device type have no default actions to handle -- double click par MPRINFO -- https://www.domotique-fibaro.fr function QuickApp:onInit() self:debug("onInit") self.DoubleClic = os.time() end function QuickApp:Reboot() self:DoubleClick() local http = net.HTTPClient({ timeout = 2000 }) local payload = {recovery=false} return http:request("http://localhost/api/service/reboot",{ options={ headers = { ["content-type"] = "application/json;charset=UTF-8", ["Authorization"] = "Basic YWRtaW46YWRtaW4=", ["X-Fibaro-Version"] = "2" }, method = "POST", data = json.encode(payload) } }) end function QuickApp:buttonclick() self:DoubleClick() end function QuickApp:confirmDoubleClick(msg, duree, time, NomBouton) if time < self.DoubleClic + duree then self:updateView(NomBouton, "text", " ") self.DoubleClic = self.DoubleClic - duree*60*1000 return true else self.DoubleClic = os.time() self:updateView(NomBouton, "text", msg) fibaro.setTimeout(duree*1000, function() self:updateView(NomBouton, "text", " ") end) return false end end function QuickApp:DoubleClick() local message = "Ré-appuyer pour confirmer" -- le message de confirmation local duree = 5 -- la durée max entre 2 clique (en seconde) local NomBouton = "button" -- ID du bouton qui doit avoir un double clic local time = os.time() if ( self:confirmDoubleClick(message, duree, time, NomBouton) ) == true then self:updateView("label1", "text", "Double clic") self:start() end end punaise j avais jamais vu on peut choisir le type de code
  15. @lazer j’ai mis en couleur je ne comprend pas trop ta réponse je mets toujours le code en couleur pour les scripts
  16. donc en résumé seilf.variable est visible dans le QA parents et si enfants ils y ont accès par contre : variable = "toto" c'est vu par tout le monde parent et enfants ? @lazer cela te convient il ? -- Generic device type have no default actions to handle -- double click par MPRINFO -- https://www.domotique-fibaro.fr function QuickApp:onInit() self:debug("onInit") self.DoubleClic = os.time() end function QuickApp:Reboot() self:DoubleClick() local http = net.HTTPClient({ timeout = 2000 }) local payload = {recovery=false} return http:request("http://localhost/api/service/reboot",{ options={ headers = { ["content-type"] = "application/json;charset=UTF-8", ["Authorization"] = "Basic YWRtaW46YWRtaW4=", ["X-Fibaro-Version"] = "2" }, method = "POST", data = json.encode(payload) } }) end function QuickApp:buttonclick() self:DoubleClick() end function QuickApp:confirmDoubleClick(msg, duree, time, NomBouton) if time < self.DoubleClic + duree then self:updateView(NomBouton, "text", " ") self.DoubleClic = self.DoubleClic - duree*60*1000 return true else self.DoubleClic = os.time() self:updateView(NomBouton, "text", msg) fibaro.setTimeout(duree*1000, function() self:updateView(NomBouton, "text", " ") end) return false end end function QuickApp:DoubleClick() local message = "Ré-appuyer pour confirmer" -- le message de confirmation local duree = 5 -- la durée max entre 2 clique (en seconde) local NomBouton = "button" -- ID du bouton qui doit avoir un double clic local time = os.time() if ( self:confirmDoubleClick(message, duree, time, NomBouton) ) == true then self:updateView("label1", "text", "Double clic") self:start() end end
  17. Demain je vais ajouter la Belgique est le Luxembourg Envoyé de mon BLA-L29 en utilisant Tapatalk
  18. @lazer j'ai un peux de mal avec self.variable A priori la portée est comme une variable local Envoyé de mon BLA-L29 en utilisant Tapatalk
  19. @krikroff c'est ok pour le reboot super merci ce qui ma mis en erreur c'est @lazer qui a posté un code QA je pensais qu'il avait testé
  20. @Krikroff merci comme promis voici le code pour le double clic -- Generic device type have no default actions to handle -- double click par MPRINFO -- https://www.domotique-fibaro.fr function QuickApp:onInit() self:debug("onInit") end function QuickApp:buttonclick() self:DoubleClick() end function QuickApp:confirmDoubleClick(msg, duree, time) if self:getVariable("DoubleClic") == "" or self:getVariable("DoubleClic") < 10000 then self:setVariable("DoubleClic", os.time()) end local DernierClic = tonumber(self:getVariable("DoubleClic")) if time < DernierClic + duree then self:updateView("label", "text", " ") return true else self:setVariable("DoubleClic", os.time()) self:updateView("label", "text", msg) fibaro.setTimeout(duree*1000, function() self:updateView("label", "text", " ") end) return false end end function QuickApp:DoubleClick() local message = "Ré-appuyer pour confirmer" -- le message de confirmation local duree = 3 -- la durée max entre 2 clique (en seconde) local time = os.time() if ( self:confirmDoubleClick(message, duree, time) ) == true then self:updateView("label1", "text", "Double clic") self:start() end end ----------------------------------------------------------------- -- code exécuté suite a un double click ----------------------------------------------------------------- function QuickApp:start() --exemple self.message = string.format("double click a : %s", os.date("%d/%m/%Y à %Hh %Mmn %Ss")) self:updateView("label1", "text", self.message) end
  21. non pas de soucis a priori ils gèrent les icônes comme sur HC2
  22. @lazer ou a @Krikroff echange code double clic contre code reboot j'ai trouvé pour le double clic voici un bout du code function QuickApp:DoubleClick() local message = "Ré-appuyer pour confirmer" -- le message de confirmation local duree = 3 -- la durée max entre 2 clique (en seconde) local time = os.time() if ( self:confirm(message, duree, time) ) then print("Confirmé") -- votre code ici en cas de confirmation else print("Annulé") -- votre code ici en cas d'annulation end end
  23. @lazer j'ai déjà lu tout cela mais j'ai beaucoup de mal a comprendre
×
×
  • Créer...