Aller au contenu

jjacques68

Membres confirmés
  • Compteur de contenus

    4 365
  • Inscription

  • Dernière visite

  • Jours gagnés

    39

Tout ce qui a été posté par jjacques68

  1. J'ai fait le test pour les QA en version 5.061.36, et la seule chose en plus est dans les objets : net.UDPSocket => userdata net.WebSocketClient => userdata net.WebSocketClientTls => userdata et je pense que ça date d'avant cette mise à jour...
  2. Je sais pas, aussi étrange que cela puisse paraitre, mes boutons de backup local sont grisés !!!! EDIT : de nouveau fait mon boulet, ils sont grisés car j'avais déjà 3 backup local stockés dans la HC3. Je confirme comme @Krikroff, l'option est sur les 2 types.
  3. ah zut, faut le faire au moment du backup... @Lazer ? va falloir que tu modifie le script de backup auto pour tenir compte de cette option non ? vais me faire envoyer promener, je le sens...
  4. c'est où ça quelqu'un l'a vu ?
  5. Je viens de faire cette mise à jour, bon mon vieux !! c'était LA-BO-RIEUX !!!!! Mise à jour, assez rapide. Après don redémarrage, panique complet. Tous mes QA qui utilisent les socket ehternet = tentative de connexions en boucle, sans respecter le timeout de 3s que j'ai mis en place. Reboot de la HC3. ça a mis trois plomb. Socket OK. Moteur Z-wave a mis plus de 10 minutes à se mettre en route !! CPU à 100 % un core après l'autre pendant ces 10 minutes. et tout d'un coup c'est ok. On dirait qu'elle est plus réactive ? ou c'est une impression ? Je le constate à l'usage du CPU...
  6. jjacques68

    QA Réveil - conseils

    oh punaise ! il va falloir que je lise ton explication plusieurs fois !! merci pour ta patience !!
  7. si si tout à fait, dans mon cas précis, j'ai qu'un seul type de child, les binarySensor...
  8. jjacques68

    QA Réveil - conseils

    Je me suis rendu compte pendant mes essais, que commencer un fichier avec class 'WAKEUP' (QuickAppChild) function WAKEUP:MyFunction() [...] end avait visiblement le même effet que si j'avais fait WAKEUP = {} function WAKEUP:MyFunction() [...] end Dans les 2 cas, Les fonctions sont accessibles dans le main en faisant : WAKEUP:MyFunction() C'est normal ça ?? est-ce la même chose ? D'ailleurs visiblement, on est pas obligé d'utilisé une class ou un tableau de fonctions dans un fichier ! On peut simplement y déplacer des fonctions du main ! Ce que j'ai fait pour le code des actions sur les boutons. Histoire de pas polluer le code dans le main... ça permet de ranger un peu la structure du code... Ne suis-je pas encore entrain de détourner son l'utilisation ? ça reste encore un peu obscure tout ça... il manque une sorte de représentation graphique de la structure d'un QA... Ce qui aiderait à mieux comprendre je pense. Bien que la petite phrase de @Lazer : a résonné tout la journée dans la tête et m'a ouvert pas mal les yeux @jang : I have read your link more and more. I don't understand anymore with the "shared" sorry, it's too strange for me
  9. oui c'est vrai, c'est que j'ai fait dans un autre QA d'ailleurs... Mais y avait plus de Child aussi... Mais c'est lourd...
  10. les QA concernés sont ceux de mes réveils : le QA parent : Mais ya quand même un problème avec la gestion de ces foutus ID des Child... Dans le QA Parent, on voit les 2 boutons Set Left et Set Right. Le code derriere ces boutons est le suivant : function QuickApp:BTN_SET_LT(event) self:setWakeup(731) end function QuickApp:BTN_SET_RT(event) self:setWakeup(732) end C'est nul !! Si je supprime les Child et que je les recréé, il faut que j'aille changer l'ID de ces 2 boutons, sinon, ça marche plus... C'est pourri !! Si on pouvait avoir une listebox dans les QA, on alimenterait dynamiquement cette listebox avec la liste des Child, et il suffirait de sélectionné le child que l'on veut régler, et le tour est joué !!
  11. ben j'ai beau faire des essais dans tous les sens, ça marche bien ! J'ai ajouter la possibilité de décaler l'heure stockée dans la variable du QA, une sorte d'offset...
  12. jjacques68

    QA Réveil - conseils

    thanks @jang, I will read it
  13. Que pensez-vous de ce contournement pour mon histoire de déclenchement de scène sur une date/heure paramétrable ? Du coup : Plus aucunes scènes. J'ai un QA principal qui tourne en boucle toutes les minutes. Dans ce QA, je lui donne une liste de QA, qui contiennent une action à effectuer à une heure particulière. Dans cette liste, je précise l'ID du QA, le nom de la variable contenant l'heure, et la fonction à exécuter, A chaque boucle, je vais lire les variables des QA (fonction GetVariableQA() de @Lazer ->merci !!) Si l'heure courante = l'heure stockée dans la variable alors j'execute la fonction précisée. ça à l'aire de bien marcher... Que ce soit pour des QA Parents ou Child... Bon la c'est grossier, mais c'est pour tester le principe ! Si je modifie l'heure de déclenchement dans un QA, ça le prends très bien en compte. Si vous avez de meilleurs idées ?? elles sont bienvenues !! function QuickApp:onInit() self:debug("onInit") self.timeLoop = 60*1000 --Liste des QA ayant une fonction à déclencher à une horaire précise self.listTrigger = { {id=731, var="MaVarX", func="MaFonc1"}, {id=732, var="MaVarY", func="MaFonc2"}, } self:main() end --[[------------------ FUNCTION MAIN --------------------]] function QuickApp:main() --pour chaque QA de la liste for _, myDevice in ipairs(self.listTrigger) do --récupère l'heure de déclenchement dans le QA local QA_Time = lib:GetVariableQA(myDevice.id, myDevice.var) --si l'heure courante = l'heure du QA, on execute la fontion du QA if os.date("%H:%M", os.time()) == QA_Time then fibaro.call(myDevice.id, myDevice.func) end end --boucle de rafraichissement pour la lecture des variables des QA setTimeout(function() self:main() end, self.timeLoop) end
  14. jjacques68

    QA Réveil - conseils

    j'ai relu plusieurs fois cette discussion... c'est vachement intéressant !! c'est marrant justement, pour les notifications, moi j'ai un QA spécifique. Avec tout dedans (Push, Mail, TTS, Prowl) Pour envoyer une notification je fais appel à une méthode de ce QA avec par exemple : fibaro.call(ID_QA, "sendPush", "blablabla") ça fonctionne très bien. Mais la question se pose : est-il plus efficace (performance, réactivité, maintenabilité, ...) d'appeler une méthode d'un QA ou d'intégrer le code dans d'envoi dans un fichier comme tu le fais ?
  15. jjacques68

    QA Réveil - conseils

    je développe énormément sous Windev au boulo... Qui est un "langage" si je peux dire ainsi, très très très très évolué. La POO est tout à fait réalisable avec, mais j'avoue resté à "l'ancienne". En même temps, leur système de base de données intégré (= HFSQL qui fonctionne à merveille) ne nous pousse pas à faire de la POO... Même pour des très gros projet, ça passe tout seul. Après je développe des applications. Pas des applications, pour créer des applications Là la POO serait plus que obligatoire...
  16. jjacques68

    QA Réveil - conseils

    oui la tu vas trop vite pour moi Je viens juste de comprendre que tout était rangé dans des tableaux, Je me rends compte que moi-même il m'arrive de faire des tableaux de fonctions, mais ça s'arrête là... Je découvre cette manière de coder. C'est un vrai état d'esprit ! on sort du codage conventionnel, séquentiel, procédural, ... Faut s'y faire...
  17. jjacques68

    QA Réveil - conseils

    ouiiiii j'avais vu ça ! Avais pas tout compris, mais avec ce que tu viens de dire, ça vaut le coup de s'y intéresser a nouveau !
  18. jjacques68

    QA Réveil - conseils

    oh punaise j'y étais pas du tout merci !! Je viens de regarder vite fait ton QA KODI, En fait j'avais pas du tout pensé à cette manière utiliser les "fichiers". C'est de la bombe !! Je me permets : pour commences tu tes librairies avec tools = {} ou encore KODI = {} C'est obligatoire ?
  19. jjacques68

    QA Réveil - conseils

    merci pour le lien, J'utilise déjà le local x=y or 1 Mais le tien, j'arrive toujours pas à le comprendre... J'essaye de le réécrire avec la syntaxe classique, mais même ça j'y arrive pas
  20. perso... ces historique là... moi je m'en fiche un peu. la seule chose qui m'intéresse c'est les événements. Et je les stocke en base, donc...
  21. jjacques68

    QA Réveil - conseils

    ok pour l'explication, j'ai juste un problème avec la syntaxe, il manque un "if then"... faut impérativement que je jette un œil à tes QA. Mon esprit est trop resté à l'ancienne. Malgré ce que j'ai déjà fait...
  22. ah ben oui ! et maintenant il prendra moins de place ! enfin normalement...
  23. jjacques68

    Capteur Http Eedomus -> HC3

    ok donc la condition : if data.contents and data.contents.quotes and data.contents.quotes[1] then ne fonctionne pas. déplace voir self:debug(response.data.state) juste après self:debug("headers:", response.headers["Content-Type"])
  24. jjacques68

    QA Réveil - conseils

    interessant, mais lors des modifications, tu dois te taper tous les QA où tu utilises ces fonctions !!! pour ma culture, je ne comprends absolument pas cette ligne de code ??? y a eu un loupé dans le copier/coller ? local id = type(self) == "userdata" and self ~= tools and self.id or type(self) == "number" and self > 0 and self
  25. jjacques68

    QA Réveil - conseils

    cette librairie d'outil est un bien un partage de fichier entre QA ? non ? où tu copies/colles la fonction ? on s'est mal compris, je n'utilise pas les VG ! mais bien les variable des quickapp que j'appelle "VG Quickapp"..; ben justement actuellement, j'en ai 3 : 2 qui stockent l'heure, justement pour chaque réveil et 1 pour le backup auto. alors que sur la HC2, j'en avais des dizaines ! alors là, j'ai vraiment pas compris l'intérêt de partager des fonctions entre quickapp !!
×
×
  • Créer...