JossAlf Posté(e) le 27 avril 2014 Signaler Posté(e) le 27 avril 2014 Tout en haut du site tu as un lien dans l'onglet : API Fibaro.fr (http://www.domotique-fibaro.fr/index.php/cp/2-api-fibarofr/) Vas jeter un œil et essaye de comprendre au moins la présentation et la partie "ce qu'il faut savoir". Pour ce que tu veux faire réfères toi a ce qu'on a fait ensemble pour trouver l'heure dite avant le coucher du soleil et ensuite enregistre ça dans ta variable (que tu auras créée auparavant dans le panneau variable) avec fibaro:setGlobale explication là-> http://www.domotique-fibaro.fr/index.php?app=cp&do=show&pageId=24
Diuck Posté(e) le 27 avril 2014 Auteur Signaler Posté(e) le 27 avril 2014 Merci de m'avoir consacré du temps je vais essayer ca
Shad Posté(e) le 27 avril 2014 Signaler Posté(e) le 27 avril 2014 Et si tu as fermé la porte parce qu'il fait 40 dehors et que tu ne veux pas que la chaleur africaine entre chez toi Non sa va, car sa active en même temps des ventilateurs et je ne referme pas entièrement la baie vitré. Et de toute façon je ne sors jamais sans une de mes tablettes ^^.
JossAlf Posté(e) le 27 avril 2014 Signaler Posté(e) le 27 avril 2014 Dernière chose avant d'aller me coucher... Je pense que ce que tu veux faire est trop compliqué et ne sert qu'àéviter le code lua. Reprends le message 2 dans lequel je t'ai copié/collé le code. La seule chose que tu as àchanger est la ligne 18 qui correspond àl'allumage d'un module lampe. Tu peux donc copier/coller ce code autant de fois que tu veux pour faire ce que tu veux en réglant l'heure avant le coucher du soleil àla ligne 15 juste après os.time. Pour t'expliquer rapidement le code : Ligne 9 : si le déclencheur (trigger) est "autostart" (déclenchement toutes les x secondes) Ligne 10 : tant que cette condition est vraie Ligne 15 : si on est lundi ou mardi ou mercredi ou jeudi ou vendredi ou samedi ou dimanche ET que l'heure est 10 minutes avant le coucher du soleil Ligne 17 : Alors Ligne 18 : allumer le module 12 Ligne 21 : attendre une minute avant de retourner àla ligne 10 En espérant que ça t'aide.
Diuck Posté(e) le 28 avril 2014 Auteur Signaler Posté(e) le 28 avril 2014 --[[ %% autostart %% properties %% globals METEO --]] local sourceTrigger = fibaro:getSourceTrigger(); if (sourceTrigger["type"] == "autostart") then while true do local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( ( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and os.date("%H:%M", os.time()+480*60) == fibaro:getValue(1, "sunsetHour")) ) and ( fibaro:getGlobalValue("METEO") == "DECOUVERT" ) -- état météo ) then fibaro:call(25, "setValue", "40"); -- ouverture volet arrière cuisine 40 pourcent fibaro:call(20, "setValue", "50"); -- ouverture volet salon 50 pourcent fibaro:call(22, "sendDefinedPushNotification", "5"); -- notification fermeture volets partiel début aprés midi fibaro:sleep(20000); -- temps avant reouverture des volets ID 25 ET 20 fibaro:call(25, "open"); fibaro:call(25, "setValue2", "99"); -- ouverture totale volet arriere cuisine fibaro:call(20, "open"); fibaro:call(20, "setValue2", "99"); -- ouverture totale volets salon fibaro:call(22, "sendDefinedPushNotification", "6"); -- notification ouverture volets total fin de journée end fibaro:sleep(60*1000); end else local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( ( (currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) ) and ( fibaro:getGlobalValue("METEO") == "DECOUVERT" ) or startSource["type"] == "other" ) then fibaro:call(25, "setValue", "40"); fibaro:call(20, "setValue", "50"); fibaro:call(22, "sendDefinedPushNotification", "5"); fibaro:sleep(30000); fibaro:call(25, "open"); fibaro:call(25, "setValue2", "99"); fibaro:call(20, "open"); fibaro:call(20, "setValue2", "99"); fibaro:call(22, "sendDefinedPushNotification", "6"); end end Salut Jossalf une petite question pourquoi la scène se relance ligne 36
Diuck Posté(e) le 28 avril 2014 Auteur Signaler Posté(e) le 28 avril 2014 et pour la ligne 32 c'est une pause avant un autre déclanchement ?
JossAlf Posté(e) le 28 avril 2014 Signaler Posté(e) le 28 avril 2014 Je n'ai pas d'ordinateur ce soir alors je ne peux pas te poster le code corrigé mais il faut que tu fasses 2 scènes. Une pour le coucher du soleil anticipé (la première partie de ton code) Et Une autre pour le coucher du soleil. Tu devras corriger ton code en effaçant tout ce qui suit la ligne 34. Il faut aussi que tu remplaces "else" par end. Pour terminer le 1er IF. En suite tu fais un copier/coller de toute cette scène corrigée mais tu remplaces ce qu'il y a entre les lignes 21 à29 par ce qui était lignes 46 à54. 1
JossAlf Posté(e) le 28 avril 2014 Signaler Posté(e) le 28 avril 2014 et pour la ligne 32 c'est une pause avant un autre déclanchement ?Cette ligne fait une pause avant de continuer la boucle qui commence ligne 11.En bas de ton code lua tu as un bouton debug qui te permet de tester ton code.
Diuck Posté(e) le 28 avril 2014 Auteur Signaler Posté(e) le 28 avril 2014 Merci jossalf désolé de te demander ça mais c'est pas trop te demander de m'envoyer une copie corriger des que tu pourras que je puisse comprendre J'apprends mieux en mettant en pratique qu'a lire des textes incompréhensible
JossAlf Posté(e) le 28 avril 2014 Signaler Posté(e) le 28 avril 2014 Oula tu es dur en affaires je t'ai tout dit au message 82. Tu y es presque. Mais si tu as la patience, je te fera ça dès que possible.
JossAlf Posté(e) le 28 avril 2014 Signaler Posté(e) le 28 avril 2014 --[[ %% properties %% globals JOUR_NUIT METEO --]] local sourceTrigger = fibaro:getSourceTrigger(); if (sourceTrigger["type"] == "autostart") then while true do local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( ( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and os.date("%H:%M", os.time()+540*60) == fibaro:getValue(1, "sunsetHour")) ) and ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" and fibaro:getGlobalValue("METEO") == "DECOUVERT" ) ) then fibaro:call(25, "setValue", "50"); fibaro:call(20, "setValue", "50"); fibaro:call(22, "sendDefinedPushNotification", "5"); fibaro:sleep(21600000); fibaro:call(25, "open"); fibaro:call(25, "setValue2", "99"); fibaro:call(20, "open"); fibaro:call(20, "setValue2", "99"); end fibaro:sleep(60*1000); end end 1
Diuck Posté(e) le 28 avril 2014 Auteur Signaler Posté(e) le 28 avril 2014 Oui je sais cela fait parti de mon boulo comme je te disais je comprend beaucoup mieux en comparant le différentes scènes mais si tu ne peux pas ce n'est pas grave je t’avouerais que je colle quand tu dis qu'il faut que je fasse 2 scènes pour le reste c'est ok
Diuck Posté(e) le 28 avril 2014 Auteur Signaler Posté(e) le 28 avril 2014 hooooo super rapide t'est un gentil toi
JossAlf Posté(e) le 28 avril 2014 Signaler Posté(e) le 28 avril 2014 Seconde scène au coucher du soleil : --[[ %% properties %% globals JOUR_NUIT METEO --]] local sourceTrigger = fibaro:getSourceTrigger(); if (sourceTrigger["type"] == "autostart") then while true do local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( ( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and os.date("%H:%M", os.time())== fibaro:getValue(1, "sunsetHour")) ) and ( fibaro:getGlobalValue("JOUR_NUIT") == "JOUR" and fibaro:getGlobalValue("METEO") == "DECOUVERT" ) ) then fibaro:call(25, "setValue", "40"); fibaro:call(20, "setValue", "50"); fibaro:call(22, "sendDefinedPushNotification", "5"); fibaro:sleep(30000); fibaro:call(25, "open"); fibaro:call(25, "setValue2", "99"); fibaro:call(20, "open"); fibaro:call(20, "setValue2", "99"); fibaro:call(22, "sendDefinedPushNotification", "6"); end fibaro:sleep(60*1000); end end 1
JossAlf Posté(e) le 28 avril 2014 Signaler Posté(e) le 28 avril 2014 Attention j'ai fait ça sur iPad avec plusieurs éditions. Ça devrait être bon maintenant. Je n'ai fait que ce que je te disais dans le message 82. Je n'ai pas testé mais l'idée est là. À toi d'analyser maintenant. Oui je suis gentil mais je sais surtout ce qu'est la frustration du débutant. C'est quoi ton taf ? 1
Diuck Posté(e) le 28 avril 2014 Auteur Signaler Posté(e) le 28 avril 2014 Je suis carrossier responsable d'atelier donc beaucoup de négoce avec les experts, donc tu te doute bien que mon boulo est très loin des scripts LUA
JossAlf Posté(e) le 28 avril 2014 Signaler Posté(e) le 28 avril 2014 PS : attention je n'ai pas vérifié dans le détail les codes pour voir si ça fonctionne. Tu verras àl'usage Personnellement je n'aurais pas fait comme ça, surtout avec un sleep de 21600000 ! Mais ça je te l'ai déjàdit et Shad aussi...
JossAlf Posté(e) le 28 avril 2014 Signaler Posté(e) le 28 avril 2014 Je suis chargé de communication. Rien àvoir avec le lua Allé àplus.
Diuck Posté(e) le 28 avril 2014 Auteur Signaler Posté(e) le 28 avril 2014 PS : attention je n'ai pas vérifié dans le détail les codes pour voir si ça fonctionne. Tu verras à l'usage Personnellement je n'aurais pas fait comme ça, surtout avec un sleep de 21600000 ! Mais ça je te l'ai déjà dit et Shad aussi... Oui je sais je modifierais à l'usage le temps d'apprendre
Diuck Posté(e) le 28 avril 2014 Auteur Signaler Posté(e) le 28 avril 2014 Pour éviter les sleeps importants je vais créer 1 scène pour le l’ensoleillement et 1 autre pour la fin de l'ensoleillement
Diuck Posté(e) le 29 avril 2014 Auteur Signaler Posté(e) le 29 avril 2014 Pour les novices comme moi je vous invite à lire ca http://tiplanet.org/modules/archives/downloads2/1349113526/TI_Nspire_chap17CX.pdf Bonne lecture
Shad Posté(e) le 29 avril 2014 Signaler Posté(e) le 29 avril 2014 Oui mais attention, la HC2 utilise sa propre bibliothèque de script et certaine fonctions peuvent être désactivé.
Diuck Posté(e) le 29 avril 2014 Auteur Signaler Posté(e) le 29 avril 2014 Tu peux me conseiller un éditeur de script que je puis visualiser mon travaille stp
Shad Posté(e) le 29 avril 2014 Signaler Posté(e) le 29 avril 2014 Perso j'utilise notepad++. Après si tu as envie Benjy àmis un code au point pour avoir les même couleur syntaxique que la HC2. 1
Messages recommandés