-
Compteur de contenus
496 -
Inscription
-
Dernière visite
-
Jours gagnés
5
Tout ce qui a été posté par lolomail
-
Lol c'est aussi une solution, je verrais plus tard le scheduler . Mais oui il faut bien sinon cela ne marche pas: local currentDate = os.date("*t"); Voici le script que j'ai mis en place, j'ai viré les textes, N° ID et diverses structures pour donner des idées: --[[ %% properties ID-actionneur value %% globals --]] -- Déclenchement scène par appuie bouton poussoir local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( tonumber(fibaro:getValue(ID-actionneur, "value")) > 0 ) then -- En semaine faire les actions suivantes -- Si jour if ( ( fibaro:getGlobalValue("Jour_Nuit") == "Jour" ) and ( (currentDate.wday == 2) or (currentDate.wday == 3) or (currentDate.wday == 4) or (currentDate.wday == 5) or (currentDate.wday == 6) ) ) then fibaro:debug("Séquence semaine jour"); -- Ouverture volets if ( tonumber(fibaro:getValue(ID_Volet1, "value")) == 0 ) then fibaro:call(ID_Volet1, "setValue", "100"); fibaro:debug("Message texte"); end if ( tonumber(fibaro:getValue(ID_Volet2, "value")) == 0 ) then fibaro:call(ID_Volet2, "setValue", "40"); fibaro:debug("Message texte"); end -- Controle volet et allumage lumières if ( tonumber(fibaro:getValue(ID_Volet1, "value")) > 0 ) then fibaro:call(ID_Lumière, "setValue", "60"); fibaro:debug("Message texte"); end -- Allumage télévision fibaro:call(ID_VDFreebox, "pressButton", "1"); fibaro:debug("Message texte") fibaro:sleep(20*1000); fibaro:call(ID_VDFreebox, "pressButton", "22"); fibaro:debug("Message texte") fibaro:sleep(20*1000); fibaro:call(ID_VDFreebox, "pressButton", "3"); fibaro:debug("Message texte") end -- Si nuit if ( ( fibaro:getGlobalValue("Jour_Nuit") == "Nuit" ) and ( (currentDate.wday == 2) or (currentDate.wday == 3) or (currentDate.wday == 4) or (currentDate.wday == 5) or (currentDate.wday == 6) ) ) then fibaro:debug("Séquence semaine nuit"); -- Controle volet et allumage lumières if ( tonumber(fibaro:getValue(ID_Volet1, "value")) == 0 ) then fibaro:call(ID_Lumière, "setValue", "60"); fibaro:debug("Message texte"); fibaro:call(ID_Lumière, "setValue", "100"); fibaro:debug("Message texte"); end -- Allumage télévision fibaro:call(ID_VDFreebox, "pressButton", "1"); fibaro:debug("Message texte") fibaro:sleep(20*1000); fibaro:call(ID_VDFreebox, "pressButton", "22"); fibaro:debug("Message texte") fibaro:sleep(20*1000); fibaro:call(ID_VDFreebox, "pressButton", "3"); fibaro:debug("Message texte") end -- En week-end faire les actions suivantes -- Si jour if ( ( fibaro:getGlobalValue("Jour_Nuit") == "Jour" ) and ( (currentDate.wday == 1) or (currentDate.wday == 7) ) ) then fibaro:debug("Séquence week-end jour"); -- Ouverture volets if ( tonumber(fibaro:getValue(ID_Volet1, "value")) == 0 ) then fibaro:call(ID_Volet1, "setValue", "40"); fibaro:debug("Message texte"); fibaro:sleep(40*1000); fibaro:call(ID_Volet1, "setValue", "60"); fibaro:debug("Message texte"); fibaro:sleep(30*1000); fibaro:call(ID_Volet1, "setValue", "100"); fibaro:debug("Message texte"); fibaro:sleep(30*1000); end if ( tonumber(fibaro:getValue(ID_Volet2, "value")) == 0 ) then fibaro:call(ID_Volet2, "setValue", "100"); fibaro:debug("Message texte"); end -- Controle volet et allumage lumières if ( tonumber(fibaro:getValue(ID_Volet1, "value")) > 0 ) then fibaro:call(ID_Lumière, "setValue", "60"); fibaro:debug("Message texte"); end -- Allumage télévision fibaro:call(ID_VDFreebox, "pressButton", "1"); fibaro:debug("Message texte") fibaro:sleep(20*1000); fibaro:call(ID_VDFreebox, "pressButton", "22"); fibaro:debug("Message texte") fibaro:sleep(20*1000); fibaro:call(ID_VDFreebox, "pressButton", "3"); fibaro:debug("Message texte") end -- Si nuit if ( ( fibaro:getGlobalValue("Jour_Nuit") == "Nuit" ) and ( (currentDate.wday == 1) or (currentDate.wday == 7) ) ) then fibaro:debug("Séquence week-end nuit"); -- Controle volet et allumage lumières if ( tonumber(fibaro:getValue(ID_Volet1, "value")) == 0 ) then fibaro:call(ID_Lumière, "setValue", "60"); fibaro:debug("Message texte"); fibaro:call(ID_Lumière, "setValue", "100"); fibaro:debug("Message texte"); end -- Allumage télévision fibaro:call(ID_VDFreebox, "pressButton", "1"); fibaro:debug("Message texte") fibaro:sleep(20*1000); fibaro:call(ID_VDFreebox, "pressButton", "22"); fibaro:debug("Message texte") fibaro:sleep(20*1000); fibaro:call(ID_VDFreebox, "pressButton", "3"); fibaro:debug("Message texte") end end Bon en gros, le script: - Est déclenché par le bouton poussoir de mon radio réveil, - Regarde si c'est le week-end ou la semaine - Regarde s'il fait jour ou nuit En fonction de cela il lance: - Pour la nuit, l'allumage des lumières après avoir vérifier que le volet n'est pas ouvert et l'allumage de la télé / freebox - Pour le jour, lance l'ouverture des volets, (progressive pour un, puis quelque temps après les autres), l'allumage d'une lumière à 60% et l'allumage de la télé / freebox Grosso modo avec la structure telle qu'elle on peut lancer d'autres actions, à vos idées, tout cela avec juste un appuie sur un bouton poussoir (voir avec l'alarme du réveil) On doit surement pouvoir simplifier optimiser, améliorer le truc, n'hésitez pas à commenter . Question, pour l'allumage de la freebox j'arrive juste à l'allumer mais les commandes OK + N° de chaine ne fonctionne pas même si dans le débug j'ai bien les messages. J'ai essayé avec et sans sleep cela ne change rien . Une idée du problème?
-
Shad, en regardant d'autres scènes je me suis aperçu que je n'avais pas mis dans mon code: local currentDate = os.date("*t"); Je suppose qu'il faut le mettre correct? Cela donne: --[[ %% properties 170 value %% globals --]] -- Déclenchement scène par appuie bouton poussoir local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( tonumber(fibaro:getValue(170, "value")) > 0 ) then -- En week-end faire les actions suivantes -- Si jour if ( ( fibaro:getGlobalValue("Jour_Nuit") == "Jour" ) and ( (currentDate.wday == 1) or (currentDate.wday == 7) ) ) then fibaro:debug("Séquence week-end jour"); J'ai bon? Je finis mes tests puis je posterais le code
-
Merci bon je vais tester sous peu Saleté de parenthèse
-
Je cherche a faire un script pour le réveil le week-end, j'ai mis le code suivant en début de mon script mais quand j'appuie sur le BP de mon réveil, nada rien ne se passe. La variable Jour_Nuit était bien àJour -- Déclenchement scène par appuie bouton poussoir local startSource = fibaro:getSourceTrigger(); if ( tonumber(fibaro:getValue(170, "value")) > 0 ) then -- En week-end faire les actions suivantes -- Si jour if ( ( fibaro:getGlobalValue("Jour_Nuit") == "Jour" ) and ( (currentDate.wday == 1 or currentDate.wday == 7) ) ) then fibaro:debug("Séquence week-end jour"); Si je mets: -- Déclenchement scène par appuie bouton poussoir local startSource = fibaro:getSourceTrigger(); if ( tonumber(fibaro:getValue(170, "value")) > 0 ) then -- En week-end faire les actions suivantes -- Si jour if ( fibaro:getGlobalValue("Jour_Nuit") == "Jour" ) then fibaro:debug("Séquence week-end jour"); Cela fonctionne ou est la coquille? Merci
-
Cool merci Je testerais surement demain
-
Bizarre sur cette scène je n'ai pas "démarrer avec HC2" après j'ai %%autostart, cela ne la lancera pas au démarrage?
-
Je dirais oui ?
-
Question, j'ai un doute , faut cocher "scène active" ou pas?
-
De rien, si cela peut servir c'est avec plaisir
-
Bon voila, y a quelque temps j'ai mis en un virtual device dont le but est de me permettre de voir en un coup d'oeil divers point de la maison. Par exemple quel volet est ouvert, l'état d'une variable qui est changée via des scripts (ex video armer....). On peut imaginer bcp de chose: état alarme, état volet, état contacteur porte, état chauffage, état éclairage... Pour cela faire un virtual device avec autant de label que d'etat à reporter. Dans la main loop mettre les codes qu'il faut pour chaque état en se basant sur: Pour un volet: -- Controle volet if ( tonumber(fibaro:getValue(ID_module, "value")) == 0 ) then fibaro:call(ID_Virtualdevice, "setProperty", "ui.labelX.value", "Texte à afficher dans le VD quand le volet est fermé"); end if ( tonumber(fibaro:getValue(ID_module, "value")) > 0 ) then fibaro:call(ID_Virtualdevice, "setProperty", "ui.labelX.value", "Texte à afficher dans le VD quand le volet est ouvert"); end Il faut changer: - ID_Module par le numéro de votre module - ID_Virtualdevice par le numéro de notre virtual device - ui.labelX.value par la désignation de votre label Pour une variable: -- Controle jour/nuit if ( fibaro:getGlobalValue("Jour_Nuit") == "Nuit" ) then fibaro:call(ID_Virtualdevice, "setProperty", "ui.labelX.value", "Texte à afficher dans le VD quand la variable = nuit"); end if ( fibaro:getGlobalValue("Jour_Nuit") == "Jour" ) then fibaro:call(ID_Virtualdevice, "setProperty", "ui.labelX.value", "Texte à afficher dans le VD quand la variable = jour"); end - Jour_Nuit par le non de votre variable à controler - ID_Virtualdevice par le numéro de notre virtual device - ui.labelX.value par la désignation de votre label Penser à ajouter avant le dernier "end" un petit: fibaro:sleep(60*1000)
-
Mis en place pour le lave linge et le sèche linge, y a plus qu'a tester
-
Tip top cela marche nickel, milles merci
- 1 285 réponses
-
- tuto multimã©dia
- graphiques
-
(et 2 en plus)
Étiqueté avec :
-
Cool merci pour le taff et les évolutions, je vais tacher de tester cela asap
- 1 285 réponses
-
- 1
-
-
- tuto multimã©dia
- graphiques
-
(et 2 en plus)
Étiqueté avec :
-
Tu as pas une scène qui pompe de la ressource a la HC2?
-
Clairement cela serait top!
-
Oui comme le dit Shad les virtual device seront limite car pas de LUA donc pas d'export de température, d'info de la netatmo....
-
Sauf qu'il faut avoir les compétences et quid de faire exécuter des actions a des modules de la HC lite?
-
Un pluggin serait un add-on pour ajouter un mini programme / fonctionnalité. Il est fort àparier qu'il y aura des royalties sinon ils ne vendraient que des HC light et les gens utiliseraient des scripts venant de HC2
-
Le coup des pluggins certifiés ne me surprendrait pas beaucoup.
-
Le coup des plutons certifiée ne le surprendrait pas beaucoup.
-
Le LUA est très pratique pour aller au delàdes simples scènes. Par exemple, si tu prends le script qui a été rédige ici pour mon capteur d'ouverture de porte c'est impossible de le faire sans LUA. Idem pour pas de virtual device (freebox, ampli HC, retour d'info sur l'état des variables, wake up d'un PC...) sans LUA tu ne peux pas les mettre en place. En somme, le mode scène bloc graphique est bien pour des trucs simples (ex: ouvrir un volet quand une variable globale change) mais des que tu veux faire des trucs plus fin / complique c'est du LUA
-
Welcome et j'ai bien la phrase sur le savoir
-
Il existe même des boite Legrand en 60mm quitte àmettre autant voir grand
-
Krikroff moi aussi j'ai le meme pbs qu'i-magin, cad qu'il faut que je fasse plusieurs fois l'importation des données pour les visualiser. Merci pour ton taff
- 478 réponses
-
- tuto hc2 et hcl
- toolkit
- (et 4 en plus)