Rem's Posté(e) le 27 janvier 2015 Signaler Posté(e) le 27 janvier 2015 (modifié) Bonsoir, Je ne sais pas comment faire pour céclencher cette cette à Minuit. Ce bout de code est dans un VD et me sert à remettre à zéro (click sur toutes les scènes, si désactivé) des scènes. --[[ %% properties %% globals --]] local selfId = fibaro:getSelfId(); local icon = fibaro:get (selfId, "deviceIcon"); fibaro:setSceneEnabled(85,true); -- Réveil Sem fibaro:setSceneEnabled(86,true); -- Réveil WE fibaro:debug("Réveil activé"); fibaro:setSceneEnabled(42,true); -- Couché du soleil Maison fibaro:debug("Couché du soleil activé"); fibaro:setSceneEnabled(83,true); -- Zapping TV fibaro:debug("Zapping activé"); -- fibaro:setSceneEnabled(106,true); -- Couché du soleil Terrasse -- fibaro:debug("Couché du soleil Terrasse activé"); fibaro:call(81, "setProperty", "ui.status.value", "Remise à zéro"); fibaro:debug(fibaro:getValue(81, "ui.status.value")) fibaro:sleep(3*1000); fibaro:call(selfId, "setProperty", "currentIcon", icon); Pouvez vous m'aider ...? D'avance merci Modifié le 27 janvier 2015 par Moicphil Sujet déplacé dans la bonne section / bistrot vers Support HC2
zeldoi5 Posté(e) le 28 janvier 2015 Signaler Posté(e) le 28 janvier 2015 Pareils que ton autre sujet... J'essaie de te faire ça dans la matinée
zeldoi5 Posté(e) le 28 janvier 2015 Signaler Posté(e) le 28 janvier 2015 Voilà ce que je ferai : --[[ %% autostart %% properties %% globals --]] local sourceTrigger = fibaro:getSourceTrigger(); local heure = os.date("%H:%M"); local selfId = fibaro:getSelfId(); local icon = fibaro:get (selfId, "deviceIcon"); local jour =""; if( os.date("*t").wday == 2 ) then jour = "Lundi"; end if( os.date("*t").wday == 3 ) then jour = "Mardi"; end if( os.date("*t").wday == 4 ) then jour = "Mercredi"; end if( os.date("*t").wday == 5 ) then jour = "Jeudi"; end if( os.date("*t").wday == 6 ) then jour = "Vendredi"; end if( os.date("*t").wday == 7 ) then jour = "Samedi"; end if( os.date("*t").wday == 1 ) then jour = "Dimanche"; end fibaro:debug("Démarrage du Script Automatisée de Remise à Zéro"); fibaro:debug(" ("..jour.." - "..heure..")"); fibaro:debug("------------------------------------------------------------------------------------"); if (sourceTrigger["type"] == "autostart") then while true do local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( -- à 00H01 string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == "00:01" and (-- Test de tous les jours currentDate.wday == 7 or currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 ) ) then fibaro:debug("---------------------"); fibaro:debug("--- Début de RAZ ----"); fibaro:setSceneEnabled(85,true); -- Réveil Sem fibaro:setSceneEnabled(86,true); -- Réveil WE fibaro:debug("Réveil activé"); fibaro:setSceneEnabled(42,true); -- Couché du soleil Maison fibaro:debug("Couché du soleil activé"); fibaro:setSceneEnabled(83,true); -- Zapping TV fibaro:debug("Zapping activé"); -- fibaro:setSceneEnabled(106,true); -- Couché du soleil Terrasse -- fibaro:debug("Couché du soleil Terrasse activé"); fibaro:call(81, "setProperty", "ui.status.value", "Remise à zéro"); fibaro:debug(fibaro:getValue(81, "ui.status.value")) fibaro:sleep(3*1000); fibaro:call(selfId, "setProperty", "currentIcon", icon); fibaro:debug("--- Fin de RAZ ----"); end fibaro:sleep(60*1000); end else local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); end A tester...
Rem's Posté(e) le 28 janvier 2015 Auteur Signaler Posté(e) le 28 janvier 2015 Super, merci Zeldoi5. Je vais m'essayer avec ca, déjàje vais tenter De décrypter ...!! Merci pour ton retour, cela servira certainement àd'autres
zeldoi5 Posté(e) le 28 janvier 2015 Signaler Posté(e) le 28 janvier 2015 De rien ce code est un peu adapté de mes scripts.... j'espère ne pas avoir fait de boulette... Le plus important à comprendre est ce bout de code : if ( -- à 00H01 string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == "00:01" and (-- Test de tous les jours currentDate.wday == 7 or currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 ) ) then fibaro:debug("---------------------"); fibaro:debug("--- Début de RAZ ----"); fibaro:setSceneEnabled(85,true); -- Réveil Sem fibaro:setSceneEnabled(86,true); -- Réveil WE fibaro:debug("Réveil activé"); fibaro:setSceneEnabled(42,true); -- Couché du soleil Maison fibaro:debug("Couché du soleil activé"); fibaro:setSceneEnabled(83,true); -- Zapping TV fibaro:debug("Zapping activé"); -- fibaro:setSceneEnabled(106,true); -- Couché du soleil Terrasse -- fibaro:debug("Couché du soleil Terrasse activé"); fibaro:call(81, "setProperty", "ui.status.value", "Remise à zéro"); fibaro:debug(fibaro:getValue(81, "ui.status.value")) fibaro:sleep(3*1000); fibaro:call(selfId, "setProperty", "currentIcon", icon); fibaro:debug("--- Fin de RAZ ----"); end
zeldoi5 Posté(e) le 28 janvier 2015 Signaler Posté(e) le 28 janvier 2015 @Did : je pense que Rem's avait du mal à coder en LUA pour programmer une (des) action (s) à telle heure... Après ce que ça fait à telle heure, je t'avoue ne pas savoir !
Rem's Posté(e) le 28 janvier 2015 Auteur Signaler Posté(e) le 28 janvier 2015 Did, J'ai un VD qui me sert à activer (cocher "scène active") ou désactiver (décocher "scène active" + stop lecture en cours). Le truc c'est que j'oublie de remettre en service pour le lendemain (donc ca ne marche pas et je m'en prend à M. FIBARO). Donc ce bout de code coche à ma place ....
Krikroff Posté(e) le 28 janvier 2015 Signaler Posté(e) le 28 janvier 2015 Juste en complément ( ) Il est inutile de tester tous les jours si justement le script doit s’exécuter tous les jours, la partie suivante peut être supprimée (-- Test de tous les jours currentDate.wday == 7 or currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 ) cette partie else local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); end idem.
zeldoi5 Posté(e) le 29 janvier 2015 Signaler Posté(e) le 29 janvier 2015 Effectivement - j'avais vu que le else ne servait àrien (je n'avais pas correctement nettoyé le code!). - pour le test sur les jours... idem ! Bien vu Krikroff
Did Posté(e) le 3 février 2015 Signaler Posté(e) le 3 février 2015 Je serais curieux de voir le résultat final.
Rem's Posté(e) le 3 février 2015 Auteur Signaler Posté(e) le 3 février 2015 M'en sort pas, le début bloque après la lecture des dates (ca l'a fait je fois ou 2 jusqu'àu dernier debug, RAZ). Je m'y re penche ce soir et vous tiens au jus
Messages recommandés