kabutop Posté(e) le 13 février 2014 Signaler Posté(e) le 13 février 2014 Salut, J'ai des leds sur un module rgbw qui sont allumées par une première scène si : * il fait nuit * la télé est allumée Je viens de faire une deuxième scène pour allumer les leds sur un programme défini en cas de détection de mouvement. Je souhaite que cette scène coupe la 1ère (car programme de led différent) et rallume après un délais. Visiblement, j'arrive à couper la scène avec fibaro:killScenes mais je n'arrive pas à la réactiver avec fibaro:startScene. Pour que ma 1ère scène refonctionne, je dois aller sur celle-ci et cliquer sur "enregistrer" pour qu'elle fonctionne de nouveau. Une idée ? Voilà la scène qui coupe la 1ère : --[[ %% autostart %% properties 94 value 94 armed %% globals --]] local detecteur = tonumber(fibaro:getValue(94,'value')); if (fibaro:countScenes()>1) then fibaro:abort(); end if (detecteur > 0) then fibaro:killScenes(4); fibaro:call(14, "turnOn"); fibaro:call(14, "startProgram", "1"); fibaro:call(14, "setValue", "100"); fibaro:sleep(10000); fibaro:startScene(4); end Merci d'avance, A+
Krikroff Posté(e) le 13 février 2014 Signaler Posté(e) le 13 février 2014 Peux tu ajouter un fibaro:debug dans ta scène ID#4 afin de voir si réellement elle démarre ou pas ...
kabutop Posté(e) le 13 février 2014 Auteur Signaler Posté(e) le 13 février 2014 Salut, Merci pour ta réponse. Alors je viens de rajouter un debug : la scène 4 ne redémarre pas. J'ai rajouté également un debug dans mon if de la scène présentée ici, je ne passe pas x fois dans le if. Donc c'est vraiment que la scène 4 ne redémarre pas. Quand je réenregistre la scène 4, sans y faire de modifs, hop ca refonctionne ! Bizarre...
Krikroff Posté(e) le 13 février 2014 Signaler Posté(e) le 13 février 2014 Peux tu poster la scène 1 ? Étrange... C'est quoi la version de ton HC2 ? stable ou bêta ?
kabutop Posté(e) le 14 février 2014 Auteur Signaler Posté(e) le 14 février 2014 Salut, Yep je suis en version stable : 3.580. Voilà l'autre scène : --[[ %% autostart %% properties Etat_TV Jour_Nuit %% globals --]] local sourceTrigger = fibaro:getSourceTrigger(); if (fibaro:countScenes()>1) then fibaro:debug('Kill second scene!'); fibaro:abort(); end if (sourceTrigger["type"] == "autostart") then while true do local currentProgramID = tonumber(fibaro:getValue(14, "currentProgramID")); if ( ( fibaro:getGlobalValue("Etat_TV") == "ON" ) and ( fibaro:getGlobalValue("Jour_Nuit") == "Nuit" ) and (currentProgramID ~= 3) ) then fibaro:call(14, "turnOn"); fibaro:call(14, "startProgram", "3"); fibaro:call(14, "setValue", "100"); end if ( fibaro:getGlobalValue("Etat_TV") == "OFF" ) then fibaro:call(14, "turnOff"); end if ( fibaro:getGlobalValue("Jour_Nuit") == "Jour" ) then fibaro:call(14, "turnOff"); end fibaro:sleep(60*1000); end end Merci pour le coup de main, A+
Krikroff Posté(e) le 14 février 2014 Signaler Posté(e) le 14 février 2014 Je pense que ta scène ne redémarre pas a cause du if (sourceTrigger["type"] == "autostart") then La condition autostart est il me semble vérifiée uniquement si la scène est mise àjour ou lorsque le service du HC2 redémarré. Tu peux essayer en enlevant cette condition ?
Shad Posté(e) le 14 février 2014 Signaler Posté(e) le 14 février 2014 Toutt à fais d'accord avec krikroff. Essaye avec ça: local startSource = fibaro:getSourceTrigger(); if ( startSource["type"] == "other" ) then
kabutop Posté(e) le 14 février 2014 Auteur Signaler Posté(e) le 14 février 2014 Yep bien vu, merci ;-) Merci àtous les 2
Messages recommandés