Aller au contenu

Allumer / Eteindre Toutes Les Lumières


Steven

Recommended Posts

Je me souviens que la demande avait été faite, mais je ne me souviens pas d'une éventuelle réponse. Dans le cas ou je me trompe, ce morceau de code ne servira peut-être jamais :)
 

function turnIt(mode)
  -- On parcours les 350 premiers modules
  for i = 1, 1000 do
    -- Si un module est de type Eclairage
    local ret = fibaro:get(i, 'isLight')
    if (type(ret) == "string" and string.find(ret, "1" )) then
        -- On l'allume ou l'éteint
        fibaro:call(i, mode) 
    end
  end
end
 
turnIt("turnOn")
--turnIt("turnOff")

turnIt("turnOf") permet donc d'allumer tout les modules de type "Eclairage", turnIt("turnOff") en revanche, permet de tout éteindre.

  • Upvote 4
Lien vers le commentaire
Partager sur d’autres sites

20 minutes, c'est le temps que je passe àéteindre toutes les lumières àla main! Non je rigole mais avec mes motion sensor qui restent en breach depuis quelques jours je vais inclure ces quelques lignes de codes dans le mode dodo. Tiens si j'allais me coucher ;)

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Je me souviens que la demande avait été faite, mais je ne me souviens pas d'une éventuelle réponse. Dans le cas ou je me trompe, ce morceau de code ne servira peut-être jamais :)

 

.

function turnIt(mode)
  -- On parcours les 350 premiers modules
  for i = 1, 350 do
    -- Si un module est de type Eclairage
    if (string.find(fibaro:get(i, 'isLight'), "1" )) then
       -- On l'allume ou l'éteint
       fibaro:call(i, mode)	
    end
  end
end

turnIt("turnOn")
--turnIt("turnOf")

.

.

turnIt("turnOf") permet donc d'allumer tout les modules de type "Eclairage", turnIt("turnOff") en revanche, permet de tout éteindre.

C'est moi le coupable de la demande ;-)

Alors encore un grand merci Steven  :60:

Lien vers le commentaire
Partager sur d’autres sites

  • 2 weeks later...

j'utilise un code similaire depuis un moment, même avant que Steven ouvre ce sujet.

l’intérêt pour moi, c'est quand je suis en alarme de nuit, donc dans la maison et que je fais dodo, au lieu de me faire réveiller par la sirène, les lumières s'allument.

c'est moins tressent!!  :wacko:

j'utilise aussi au cas ou l'alarme incendie sonne la nuit, c'est mieux de courir dans la lumière  ^_^

 

et aussi, j'allais oublier, comme le dit Phil, quand j'active l'alarme générale, ça coupe toutes les lumières qui seraient allumées.

Modifié par Fredric
  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

 Oui effectivement j'avais zapper l'option de l'utilisation dans un scénario !

 

C'est la que l'on commence à  se rendre compte des presque infinies !? possibilités !!

  • Upvote 2
Lien vers le commentaire
Partager sur d’autres sites

  • 4 weeks later...

Bien sûr ... voici :

function moveIt(mode)
  -- On parcours les 350 premiers modules
  for i = 1, 350 do
    -- Si un module est de type Eclairage
    if (fibaro:getType(i) == "blind") then
       -- On l'allume ou l'éteint
       fibaro:call(i, mode)	
    end
  end
end
 
moveIt("open")
--moveIt("close")
Lien vers le commentaire
Partager sur d’autres sites

J'échange tous les miens contre celui ci! Non pas que je ne soit pas prêt àrendre service, non! Mais bon sang j'en traine tellement ...

Il n'y a pas possibilité de regrouper plein de petits défauts en un seul grand comme le tien? Tu sais comme pour les regroupements de crédits auprès de nos hautes instances financières :)

Lien vers le commentaire
Partager sur d’autres sites

Si c'est possible ... cela s'appelle le mariage :)  Tu penses prendre les qualités des deux pour en faire un couple et en réalité tu prends tous les défauts des deux pour en faire un enfer.

 

 

Je plaisante, j'aime mon purgatoire et surtout ses habitants.

  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

  • 2 months later...

Serait t'il possible de te demander si tu peux corriger ton code pour qu'elle puisse fonctionner avec la version BETA car j'ai cette ligne d'erreur qui apparait:

 

line 5: bad argument #1 to 'find' (string expected, got nil)

 

Merci

Lien vers le commentaire
Partager sur d’autres sites

Les RGB ne sont pas considéré comme des lampes :)

 

Essaie ce code mais j'ai pas du tout pu le tester

function turnIt(mode)
  -- On parcours les 350 premiers modules
  for i = 1, 1000 do
    -- Si un module est de type Eclairage
    local ret = fibaro:get(i, 'isLight')
    if ((type(ret) == "string" and string.find(ret, "1" )) or "rgb_driver" == fibaro:getType(i) or "com.fibaro.FGRGBW441M" == fibaro:getType(i)) then
        -- On l'allume ou l'éteint
        fibaro:call(i, mode) 
    end
  end
end
 
turnIt("turnOn")
--turnIt("turnOff")
  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...