Aller au contenu
Steven

Allumer / Eteindre Toutes Les Lumières

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Peut être jamais??? Il va tourner dès ce soir tu veux dire! Merci beaucoup Steven!

Partager ce message


Lien à poster
Partager sur d’autres sites

Bon ben tant mieux, 10 minutes de ma vie que je n'aurais pas dépensé pour rien  ;)

Partager ce message


Lien à poster
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

Partager ce message


Lien à poster
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:

Partager ce message


Lien à poster
Partager sur d’autres sites

Tu devrais avoir honte ;)

Partager ce message


Lien à poster
Partager sur d’autres sites

Depuis l'appli Ipad on a la possibilité de d'éteindre toutes les lumières ou éteindre par étage etc... je vois pas le besoin de de code !!

Partager ce message


Lien à poster
Partager sur d’autres sites

Au contaire, peut être très utile...

Dans le cas d'un mv ou d'une scène par exemple : a l.armement de l'alarme, on lance ce code turnoff.

Partager ce message


Lien à poster
Partager sur d’autres sites

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

Partager ce message


Lien à poster
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

Partager ce message


Lien à poster
Partager sur d’autres sites

@Steven il est possible d'avoir la même chose pour les volets ?

Partager ce message


Lien à poster
Partager sur d’autres sites

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")

Partager ce message


Lien à poster
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 :)

Partager ce message


Lien à poster
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

Partager ce message


Lien à poster
Partager sur d’autres sites

Tiens, je vais la sortir àma femme celle là, mais pas avant ce we, histoire d' avoir le temps d'installer une camera, je posterai mon linchage sur youtube !

Merci Steven ;)

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

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

Partager ce message


Lien à poster
Partager sur d’autres sites

Voilà, j'ai modifié le code du premier post. Le code est compatible 3.590 et 4.xx

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci beaucoup ça fonctionne nickel. En revanche j'ai remarqué une petite chose, les RGB (Fibaro) ne s'éteignent pas, il y a quelque chose àmodifier dans le code ou alors ton code n'est pas prévu pour cela ? :)

Partager ce message


Lien à poster
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

Partager ce message


Lien à poster
Partager sur d’autres sites

Trop fort, Steven,

"Essaie ça, j'ai pas tester" et bam! ça marche. :60:

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut,

 

pour les volets, n'y a t il pas la possibilité de surveiller leurs positions avant de lancer l'action?

Partager ce message


Lien à poster
Partager sur d’autres sites

×