Aller au contenu

jojo

Membres confirmés
  • Compteur de contenus

    14 561
  • Inscription

  • Dernière visite

  • Jours gagnés

    186

Tout ce qui a été posté par jojo

  1. sebcbien, je ne comprends pas pourquoi tu passe par une variable locale isnumber. Ceci devrait suffire : for interface = 1, #jsonTable[device].interfaces do if jsonTable[device].interfaces[interface] == "light" then fibaro:debug(" id: "..jsonTable[device].id.." is "..jsonTable[device].name.." type: "..jsonTable[device].interfaces[interface]) if jsonTable[device].properties.value == "true" then fibaro:debug(" value: "..jsonTable[device].properties.value..". Turning Off") fibaro:call(jsonTable[device].id, "turnOff") elseif tonumber(jsonTable[device].properties.value) > 0 then fibaro:debug(" value: "..jsonTable[device].properties.value..". Turning Off") fibaro:call(jsonTable[device].id, "turnOff") end end end n'ayant pas de FGD, je ne sais pas tester. Peux-tu valider SVP ?
  2. je regarde ton code adapté en détail. En effet, je fais le test pour ne pas envoyer l'ordre d'estinction pour rien, et c'est le même test qui est utilisé pour afficher les lampes allumées dans le bouton analyse. je corrige le tout et reposte le bon VD
  3. jojo

    Variable Gea

    alors voici comment je ferais. variable locale pour hystérésis local hysteresis = 0.7 ensuite pour l'extinction GEA.add ({{"Function", function() if ( tonumber(fibaro:getValue(id["TEMPERATURE"], "value")) > (tonumber(fibaro:getGlobalValue('consigneT'))+hysteresis)) then return true end end},sceneON}, 1*60, "Chaudière OFF car température = #value#° > àT°consigne depuis 2 minutes Mode AUTO", {{"turnOff", id["CHAUDIERE"]}}) idem pour allumage
  4. l'exemple était de HCL vers HCL. Mais peut-être que ça fonctionne également vers une autre IP. De tout façon, avant d'essayer au départ de la HCL, il faut déjàque ça fonctionne au départ du browser ...
  5. jojo

    Dimmer 2 Fgd 212

    je viens de regarder le lien, ça ne m'a pas l'air facile à comprendre, d'autant plus que je n'ai pas de dimer. Pour les vannes Danfoss LC13, je suis super content (je ai 6, toutes pilotées par le panneau de chauffage)
  6. jojo

    Variable Gea

    oui, en effet c'est une manière de faire, mais j'aurais espéré quelque chose de plus GEA, car là , c'est insérer du code LUA dans le GEA. Mais s'il n'y a pas moyen de faire autrement. Merci d'avoir partagé la solution
  7. jojo

    Dimmer 2 Fgd 212

    GEA n'est "qu'une" grosse scène en LUA développée par Steven, Tout est bien expliqué daans le Wiki. que veux dire "onTime" dans ton fibaro:call ? Pour moi c'est une erreur de syntaxe. Voici les différentes possbilités http://www.fibarouk.co.uk/support/lua/actions-use-fibarocall-api/
  8. merci Berale24, Je me souviens maintenant que tu avais un sujet àce propos
  9. très bizarre ? met un debug avant le if pour voir ce qu'il affiche quand tu ouvres et quand tu fermes fibaro:debug(fibaro:getValue(158, "value")))
  10. jojo

    Variable Gea

    ok, j'ai compris la question. Elle peut paraître très simple, mais en fait, c'esst plus compliqué qu'on ne le crois àpremière vue. Je me creuse les méneinges. Le mieux serait tout de même que tu poses cette cette question GEA dns le topic support GEA : il y aura plus de personnes qui pourront intervenir, dont le maître du GEA, Steven ...
  11. pour voir les devices, etc sous forme de json, il faut utiliser l'api de fibaro exple : http://<ipbox>/api/devices, http://<ipbox>/api/scenes, et pour les users http://<ipbox>/api/users l'id 128 devrais correspondre à l'id de l'utilisateur à qui tu veux envoyer une notification push http://www.fibarouk.co.uk/support/lua/actions-use-fibarocall-api/actions-arguments-usage/
  12. jojo

    Dimmer 2 Fgd 212

    utilises-tu GEA ? cela répondrait facilement àton besoin https://gea.piccand.me/doku.php/syntaxe
  13. jojo

    Variable Gea

    que veux-tu faire avec cette consigne ? Démarrer la chaudière je suppose. Il ne faut pas passer par une variable locale. Regarde dans le wiki, la réponse y est : https://gea.piccand.me/doku.php/syntaxe <Id module> Identifiant du module {“Globalâ€, <nom variable>, <valeur>} Si la valeur de la variable globale X est égale à Y {“Global+â€, <nom variable>, <valeur>} Si la valeur de la variable globale X est supérieure à Y {“Global-â€, <nom variable>, <valeur>} Si la valeur de la variable globale X est inférieure à Y {“Global!â€, <nom variable>, <valeur>} Si la valeur de la variable globale X est différente de Y
  14. as-tu comparé avec le script original ? Je ne comprends pas tout, mais je ne vois pas d'appel àla fonction setTimeout()
  15. et le debug fonctionne-t-il ? (pour savoir si c'est le VD ou la scène qui pose problème ) ?
  16. pour plus de lisibilité, entre ton code avec le bouton <> juste en dessous du bouton smily --[[ %% properties 158 value %% globals --]] if (fibaro:countScenes() > 1) then fibaro:abort() end if ((tonumber(fibaro:getValue(158, "value")) == 0 )) then fibaro:sleep (2000) fibaro:call(128, "sendDefinedPushNotification", "1"); end àquoi correspond l'id 128 ?
  17. j'ai testé chez moi, et c'est ok, Donc tu fais la partie YFOKON officielle ?
  18. je ne comprends plus rien, et si tu déactive également celle de la notification, reçois-tu encore des notifs ?
  19. voici donc le code avec double click pour tout eteindre sur base des infos rapportées par sebcbien ---------------------------------- -- User Settings ---------------------------------- -- Modules à exclure et fonction de traitement (pas raccordés à des lumières) -- Peut contenir un id ou un mot clés à chercher dans le nom du module toExclude = {} toInclude = {} ---------------------------------- -- DO not change bellow this line ---------------------------------- -- Modules à exclure ou inclure et fonction de traitement (pas raccordés à des lumières) -- Peut contenir un id ou un mot clés à chercher dans le nom du module -- toExclude = {72, "Dispo", "Volet", "Bubendorff"} function shouldExclude(module) for _, v in pairs(toExclude) do if string.find(module.name, v) ~= nil or module.id == v then return true end end return false end function shouldInclude(module) for _, v in pairs(toInclude) do if string.find(module.name, v) ~= nil or module.id == v then return true end end return false end ---------------------------------- -- double click pour confirmer ---------------------------------- -- ---------------------------- -- Ne pas toucher -- -- ---------------------------- function confirm(msg, labelId, secondes) local current = fibaro:getValue(fibaro:getSelfId(), "ui."..labelId..".value") if (current == msg) then fibaro:call(fibaro:getSelfId(), "setProperty", "ui."..labelId..".value", " ") return true else fibaro:call(fibaro:getSelfId(), "setProperty", "ui."..labelId..".value", msg) fibaro:sleep(secondes*1000) fibaro:call(fibaro:getSelfId(), "setProperty", "ui."..labelId..".value","") return fibaro:getValue(fibaro:getSelfId(), "ui."..labelId..".value") == " " end end -- ---------------------------- -- A vous de jouer --- -- ---------------------------- local label_id = "lblMessage" -- l'ID du label qui recevra le message local duree = 4 -- la durée max entre 2 clique (en seconde) local message = "Ré-appuyer dans les "..duree.." secondes pour confirmer" -- le message de confirmation if ( confirm(message, label_id, duree) ) then fibaro:log("Confirmé") -- votre code ici en cas de confirmation -- Récupération de la liste des modules local HC2 = Net.FHttp("127.0.0.1", 11111) local payload = "/api/devices" local response, status, errorCode = HC2:GET(payload) if tonumber(errorCode) == 0 and tonumber(status) == 200 and response ~= nil and response ~= "" then local jsonTable = json.decode(response) -- Boucle sur les modules for device = 1, #jsonTable do -- look for lighting devices if jsonTable[device].interfaces then for interface = 1, #jsonTable[device].interfaces do if jsonTable[device].interfaces[interface] == "light" and jsonTable[device].properties.value == "true" then fibaro:call(jsonTable[device].id, "turnOff") end end end end else fibaro:debug('<span style="display:inline;color:red;">status='..status..', errorCode='..errorCode..', payload='..payload..', response='..(response or "")..'</span>') end else fibaro:log("Annulé") -- votre code ici en cas d'annulation end Je vous joins également une version 4.0 qui permet de voir quelles lumières sont allumées avant de les éteindre Toutes_Lumieres_v4.0.vfib
  20. pour l'instant, j'ai assez avec les 4 tranches proposées par défaut. En fait je crois avoir raconté une bêtise en disant plus haut que je ferais bien un panneau par pièce et par saison. Cela impliquerait donc que pour une îèce, il y ait plusieurs panneaux, alors il risque d'y avoir conflit entre les panneaux. => 1 pièce ne peut être associée qu'àun seul panneau
  21. regarde dans ma signature, il y a un tuto pour les requetes http sous HCL
  22. Merci pour cette info, En effet lors de la réinstall de ma box, ma lampe de bureau n'était plus listée, et elle l'est à nouveau. Je n'avais pas fait le rapprochement avec un reboot.. J'ai envie de reprendre le dernier code et de modifier le test
  23. perso, j'utilise les panneaux de chauffage et j'en suis bien content. Je pense même que pour la même pièce je vai en créer plusieurs en fonction de la saison et avec ce VD pouvoir l'activer automatiquement
  24. jojo

    Bug Sauvegarde Sous V4.054 ?

    s'ils n'arrivent pas àdébloquer ta clé, tu pourra peut-être que renvoyer la clé (et pas toute la box) en Pologne. (àvoir avec le support)
×
×
  • Créer...