Alexandru Posté(e) le 29 août 2016 Signaler Partager Posté(e) le 29 août 2016 Bonsoir a vous tous , J'utilise cette scène pour avoir trois fonctions sur la même touche ,avec le capteur FGK du FIBARO, mais sur "appui long" j'aime bien d'avoir le volume de VD Sonos , autant que on "appui long" le volume monte légèrement , des que on "relâche " le volume s'arrête . J'ai essayé de cette manière , mais sans résultats ... Je vous remercie pour votre conseils Un grand merci --[[ %% properties 125 sceneActivation %% globals --]] local magicswitch = 125 -- a mettre ID sensors if (tonumber (fibaro:getValue(magicswitch, "sceneActivation")) == 11) then fibaro:debug('You click 11 = Single click') fibaro:call(60, "turnOff"); fibaro:call(76, "pressButton", "8"); elseif (tonumber (fibaro:getValue(magicswitch, "sceneActivation")) == 12) then fibaro:debug('You click 12 = Long click') fibaro:call(76, "setSlider", "15", "8") fibaro:call(76, "setSlider", "15", "10") fibaro:call(76, "setSlider", "15", "12") fibaro:call(76, "setSlider", "15", "14") elseif (tonumber (fibaro:getValue(magicswitch, "sceneActivation")) == 13) then fibaro:debug('You click 13 = Return Long click') elseif (tonumber (fibaro:getValue(magicswitch, "sceneActivation")) == 14) then fibaro:debug('You click 14 = Double click') fibaro:startScene(47); elseif (tonumber (fibaro:getValue(magicswitch, "sceneActivation")) == 15) then fibaro:debug('You click 15 = Triple click') fibaro:call(60, "turnOn"); end Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alexandru Posté(e) le 29 août 2016 Auteur Signaler Partager Posté(e) le 29 août 2016 [DEBUG] 20:10:51: You click 14 = Double click [DEBUG] 20:11:01: You click 15 = Triple click [DEBUG] 20:11:14: You click 11 = Single click [DEBUG] 20:11:30: You click 12 = Long click [DEBUG] 20:11:30: You click 13 = Return Long click Lien vers le commentaire Partager sur d’autres sites More sharing options...
jojo Posté(e) le 29 août 2016 Signaler Partager Posté(e) le 29 août 2016 ton debug semble bien fonctionner, et bien détecter les actions. Mais cette scène ne tient pas compte de la durée de l'appui long. En fait, lorsque tu appuies long, tu devrais lancer une autre scène qui appuie toute les 1/2 sec (par exemple) sur le bouton d'augmentation du volume, jusqu'à ce le Return long click vienne interrompre la boucle. Pour la scène qui tourne en boucle, je mettrais l'action dans un while true do ... end et puis le return, viendrait killer cette scène. Lien vers le commentaire Partager sur d’autres sites More sharing options...
pepite Posté(e) le 30 août 2016 Signaler Partager Posté(e) le 30 août 2016 ou alors tu mets un break, tu recuperes la valeur du volume du slider et tu refais un +5 ou +10 a chaque fois Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alexandru Posté(e) le 30 août 2016 Auteur Signaler Partager Posté(e) le 30 août 2016 Merci beaucoup, de vos réponses , mai il est possible d'avoir quelques lignes de code pour quelques idées , Bien a vous , Lien vers le commentaire Partager sur d’autres sites More sharing options...
pepite Posté(e) le 30 août 2016 Signaler Partager Posté(e) le 30 août 2016 Essaie ceci --[[ %% properties 125 sceneActivation %% globals --]] local magicswitch = 125 -- a mettre ID sensors local volume = fibaro:get(76,"ui.Slider1.value") -- Recuperer le bon nom du Slider dans le VD local actions = { [10] = function() fibaro:debug("appui simple B1") end, [11] = function() fibaro:debug('You click 11 = Single click') fibaro:call(60, "turnOff") fibaro:call(76, "pressButton", "8") end, [12] = function() fibaro:debug('You click 12 = Long click') -- Augmenter le volume volume = math.min(100, volume +10) fibaro:debug("Volume : " ..volume) fibaro:call(76, "setSlider", "15", volume) end, [13] = function() fibaro:debug('You click 13 = Return Long click') -- Diminuer le volume volume = math.max(0, volume -10) fibaro:debug("Volume : " ..volume) fibaro:call(76, "setSlider", "15", volume) end, [14] = function() fibaro:debug('You click 14 = Double click') fibaro:startScene(47) end, [15] = function() fibaro:debug('You click 15 = Triple click') fibaro:call(60, "turnOn") end, } local action = tonumber(fibaro:getValue(magicswitch, "sceneActivation")) actions[action]() 2 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alexandru Posté(e) le 30 août 2016 Auteur Signaler Partager Posté(e) le 30 août 2016 Wow, Wow , Wow le volume augmenter (+10) sur appui long et diminuer (-10) ,, je vais jouer un peu avec ces valeurs ... [DEBUG] 17:48:36: You click 13 = Return Long click [DEBUG] 17:48:36: Volume : 16 [DEBUG] 17:48:44: You click 12 = Long click [DEBUG] 17:48:44: Volume : 26 [DEBUG] 17:48:45: You click 13 = Return Long click [DEBUG] 17:48:45: Volume : 16 [DEBUG] 17:59:15: You click 12 = Long click [DEBUG] 17:59:15: Volume : 26 [DEBUG] 17:59:15: You click 13 = Return Long click [DEBUG] 17:59:15: Volume : 16 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alexandru Posté(e) le 30 août 2016 Auteur Signaler Partager Posté(e) le 30 août 2016 Superbe travail et assez rapide , chapeau Lien vers le commentaire Partager sur d’autres sites More sharing options...
Alexandru Posté(e) le 30 août 2016 Auteur Signaler Partager Posté(e) le 30 août 2016 Vous tous depuis ce Forum , vous êtes une source inépuisable d'énergie et de nouvelles idées pour nous les débutants en domotique , Merci a vous , Lien vers le commentaire Partager sur d’autres sites More sharing options...
jojo Posté(e) le 30 août 2016 Signaler Partager Posté(e) le 30 août 2016 il est beau ton code Pepite Lien vers le commentaire Partager sur d’autres sites More sharing options...
pepite Posté(e) le 31 août 2016 Signaler Partager Posté(e) le 31 août 2016 Messieurs, Le code au départ n'est pas de moi, je m'inspire des experts. La fonction est de @steven et le math.min doit etre de @Berale dans un code que l'on avait fait pour un forumeur. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés