CASINOS Posté(e) le 1 mai 2014 Signaler Partager Posté(e) le 1 mai 2014 Bonjour Je débute et ais des problème en LUA avec les signes La fonction ci-dessous fonctionne parfaitement si je ne prends que la première valeur mais je n'arrive pas a cumuler les conditions if sans message d'erreur avec les signes en trop ou manquants Merci par avance pour votre aide --[[ %% properties 54 value 83 value 82 value %% globals --]] if ( ( tonumber(fibaro:getValue(54, "value")) > 0 ) then message2 = ("Bonjour Lumiere cuisine est allume . . .|") and ( tonumber(fibaro:getValue(83, "value")) > 0 ) then message = ("Bonjour Lumiere du mur est allume . . .|") and ( tonumber(fibaro:getValue(82, "value")) > 0 ) then message3 = (" Lumiere chambre est allume . . .|") ) message4 = message.."et "..message2.."et "..message3.." fibaro:setGlobal("SonosTTSBUREAU", "lng=fr|dr=auto|vol=65|txt="..message4..". . .|"); fibaro:sleep(60*1000) end end end Lien vers le commentaire Partager sur d’autres sites More sharing options...
Shad Posté(e) le 1 mai 2014 Signaler Partager Posté(e) le 1 mai 2014 Regarde ici http://www.domotique-fibaro.fr/index.php/topic/194-lua-le%C3%A7on-2-%E2%80%93-association-de-modules/#entry1147 Si tu comprend pas dis le moi. Lien vers le commentaire Partager sur d’autres sites More sharing options...
CASINOS Posté(e) le 1 mai 2014 Auteur Signaler Partager Posté(e) le 1 mai 2014 Merci Ca m'a aider a mieux comprendre ci-dessous si cela peux servir a certain mon code final (chaque "value" étant des contact de porte --[[ %% properties 28 value 31 value 50 value 47 value 21 value 25 value %% globals --]] if ( tonumber(fibaro:getValue(25, "value")) > 0 ) then fibaro:setGlobal("EtatFenetreChambr",'Fenetre chambre .....!'); -- 25 l'ID fenetre chambre message1 = fibaro:getGlobalValue("EtatFenetreChambr") else message1 = ("") end if ( tonumber(fibaro:getValue(21, "value")) > 0 ) then fibaro:setGlobal("EtatFenetreBureau",'Fenetre bureau .....!'); -- 21 l'ID fenetre bureau message2 = fibaro:getGlobalValue("EtatFenetreBureau") else message2 = ("") end if ( tonumber(fibaro:getValue(28, "value")) > 0 ) or ( tonumber(fibaro:getValue(31, "value")) > 0 ) then fibaro:setGlobal("EtatFenetreCuisin",'Fenetre cuisine .....!'); -- 50 l'ID fenetre salon gauche message4 = fibaro:getGlobalValue("EtatFenetreCuisin") else message4 = ("") end if ( tonumber(fibaro:getValue(50, "value")) > 0 ) or ( tonumber(fibaro:getValue(47, "value")) > 0 ) then fibaro:setGlobal("EtatFenetreSalon",'Fenetre salon .....!'); -- 50 l'ID fenetre salon gauche message6 = fibaro:getGlobalValue("EtatFenetreSalon") else message6 = ("") end fibaro:setGlobal("SonosTTSBUREAU", "lng=fr|dr=auto|vol=65|txt="..message4..""..message6..""..message2..""..message1..". . .|"); fibaro:sleep(5*1000) Lien vers le commentaire Partager sur d’autres sites More sharing options...
Shad Posté(e) le 1 mai 2014 Signaler Partager Posté(e) le 1 mai 2014 La c'est mieux Lien vers le commentaire Partager sur d’autres sites More sharing options...
Steven Posté(e) le 10 mai 2014 Signaler Partager Posté(e) le 10 mai 2014 En propre et optimisé cela donne --[[ %% properties 28 value 31 value 50 value 47 value 21 value 25 value %% globals --]] local message = "" -- 25 l'ID fenetre chambre if ( tonumber(fibaro:getValue(25, "value")) > 0 ) then message = message .. "Fenetre chambre .....!" end -- 21 l'ID fenetre bureau if ( tonumber(fibaro:getValue(21, "value")) > 0 ) then message = message .. "Fenetre bureau .....!" end -- 28 l'ID ....... if ( tonumber(fibaro:getValue(28, "value")) > 0 ) or ( tonumber(fibaro:getValue(31, "value")) > 0 ) then message = message .. "Fenetre cuisine .....!" end -- 50 l'ID fenetre salon gauche if ( tonumber(fibaro:getValue(50, "value")) > 0 ) or ( tonumber(fibaro:getValue(47, "value")) > 0 ) then message = message .. "Fenetre salon .....!" end fibaro:setGlobal("SonosTTSBUREAU", "lng=fr|dr=auto|vol=65|txt="..message..". . .|") Lien vers le commentaire Partager sur d’autres sites More sharing options...
CASINOS Posté(e) le 11 mai 2014 Auteur Signaler Partager Posté(e) le 11 mai 2014 effectivement : clair, simple et concis Bravo Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés