Aller au contenu

jjacques68

Membres confirmés
  • Compteur de contenus

    4 279
  • Inscription

  • Dernière visite

  • Jours gagnés

    36

Tout ce qui a été posté par jjacques68

  1. jjacques68

    std:exception: 'Timeout'

    et le CPU donne quoi ?
  2. jjacques68

    std:exception: 'Timeout'

    oui c'est pas evident l'imbrication asynchrone j'ai pas testé, faut que tu essayes : function mainLoop() local ConsoForage1 = fibaro.getValue(33, "power") if tonumber(ConsoForage1) >= 20 and tonumber(ConsoForage1) <= 50 then fibaro.setTimeout(1000, function() local ConsoForage2 = fibaro.getValue(33, "power") if tonumber(ConsoForage2) >= 20 and tonumber(ConsoForage2) <= 50 then fibaro.call(33, "turnOff") fibaro.setTimeout(5000, function() fibaro.call(33, "turnOn") fibaro.setTimeout(1000, mainLoop) end) else fibaro.setTimeout(1000, mainLoop) end end) else fibaro.setTimeout(1000, mainLoop) end end mainLoop()
  3. jjacques68

    std:exception: 'Timeout'

    c'est possible oui, sans forcement utiliser "break". Tout dépendra des conditions qui te feront sortir de cette 2 ème boucle.
  4. jjacques68

    std:exception: 'Timeout'

    je pense que ça devrait tenir. Par contre j'ai pas compris un truc dans ton scénario : Tu mesures la conso de la pompe -> OK. Si elle est entre les 2 seuils tu attends 1.5 s -> OK. Tu refais une mesure -> OK Si elle est toujours entre les 2 seuils tu coupe la pompe -> OK. mais pourquoi la rallumer 5 secondes après ? (que d'ailleurs je n'ai pas codé dans le code que je t'ai posté...)
  5. jjacques68

    std:exception: 'Timeout'

    Je pensais plus a virer le while true do... function mainLoop() local ConsoForage1 = fibaro.getValue(33, "power") if tonumber(ConsoForage1) >= 20 and tonumber(ConsoForage1) <= 50 then fibaro.setTimeout(1500, function() local ConsoForage2 = fibaro.getValue(33, "power") if tonumber(ConsoForage2) >= 20 and tonumber(ConsoForage2) <= 50 then fibaro.call(33, "turnOff") end fibaro.setTimeout(1000, mainLoop) end) else fibaro.setTimeout(1000, mainLoop) end end mainLoop()
  6. jjacques68

    std:exception: 'Timeout'

    donc visiblement ce code est dans une scène. cela veut dire que ta scène se lance comment ? tu l'a lances manuellement ? pour les erreurs dont tu parles, je pense que il y un nouveau lancement de scène (comment je sais pas) alors que la précédente est encore entrain de tourner. Le fibaro.sleep() est une catastrophe dans les scènes dans ce genre de cas. là comme ça, je remplacerais ces fibaro.sleep() par des settimeout() et tu n'auras plus d'erreur, je pense... il faut aussi que tu vérifies comment est le paramètre de gestion de la scène quand il y a un nouveau start (dans les onglets). Je ferai en sorte qu'un nouveau déclenchement annule la scène précédente. EDIT : remarque : normal, il y a trop de variation de la mesure, les scènes n'arrivent plus à suivre. Les scènes sont devenues le point faible sur la HC3. il faudrait peut-être se rapprocher de GEA et de l'utilisation du RefreshState dans les QA. Plus compliqué, mais tu pourras alors le gérer comme tu le souhaiterais à l'origine.
  7. jjacques68

    Sniffer Zwave

    tu parles de l'application qui liste le maillage ou l'application sniffer ?
  8. intéressant tout ça, je vais relire le tout à tête reposée... !!
  9. le coup du sniffer a continué ici : Mais pas trop le temps en ce moment de jouer avec
  10. alors chez moi ça fonctionne toujours. Je vois pas comment un autre QA pourrait perturber celui-ci... Va falloir faire du debug Il y a quoi à ta ligne 74 ? chez moi j'ai rien...
  11. ah ! faut que je regarde...
  12. ah ben oui !! du coup oui tout est ok.
  13. Ben je n'ai jamais constaté d'évènement en double, je le verrais vu que je log tout en base... Ou alors y a encore qqch qui nous échappe. ben ça c'est quand je réfléchit après avoir écrit
  14. Ce serait pas normal ? Le "last" ne resterait pas identique si pas d'évènements ? J'ai l'impression que j'en ai que quand rien ne se passe ?!
  15. minute là !! Moi aussi j'ai des trames en doubles visiblement !! Je viens de mettre une conditions qui m'affiche un warning si le last=lastResfresh !! Mais j'ai jamais constaté que ça pouvais poser problème !!??
  16. ton code se rapproche du mien... enlèves voir "urlTail" de l'url pour voir ce que ça donne !? EDIT : je viens de me rendre compte que j'ai dans l'url en plus du "last" : &logs=true
  17. mince, avais pas fait gaffe à ça, désolé ...
  18. t'es pas obligé de créer la fonction loop(). Dans les setTimeout, rappelles directement self:start()
  19. hmm... je ne vois pas l'instruction qui fait le bouclage (setTimeout). Donc tu dois l'avoir à un autre endroit. Et je me demande si les soucis viennent pas de là. Tu as peut-être une sorte de désynchronisation entre la fonction qui appelle PollRefresh() et le traitement des instructions. ça va te chambouler pas mal le code mais : Essayes de mettre la relance de la boucle tout à la fin du succes. Et du coup aussi tout à la fin du error. C'est comme ça que j'ai fait chez moi. Tout est dans le succes(), j'appelle telle ou telle fonction suivant mes conditions.
  20. ouai, ben les bug sont toujours présent dans l'application, je dirais même que ça régresse, les QA ne s'affichent plus du tout !
  21. je confirme que leur climatPanel est assez ... étrange... J'ai galéré aussi.
  22. jjacques68

    QA Dawn&Dusk

    je pense selon la situation géographique qu'on a paramétré. print(api.get("/settings/info").sunriseHour) print(api.get("/settings/info").sunsetHour)
  23. suis d'accord , du coup je n'utilise quasi plus les scènes...
  24. oui, pas sûr que tu puisses faire ça dans le bloque condition...
×
×
  • Créer...