Aller au contenu
Did

Remonter Les Volets Progressivement

Recommended Posts

Non la tu confonds avec le declencheur

Il faut faire

Un get du module pour récupérer sa valeur

Ensuite un if différents de la valeur que tu veux envoyé

Alors call

Did je te ferai cela ce soir la je suis sur mon portable

J'ai une fonction comme cela je n'ai plus qu'àfaire un copier coller

Envoyé de mon SM-G900F en utilisant Tapatalk

  • Upvote 2

Partager ce message


Lien à poster
Partager sur d’autres sites

 C'est fait, résolu.

Ok, merci Pascal.

Plus que mes déclenchements instantanés qui déconnent dans GEA.

Partager ce message


Lien à poster
Partager sur d’autres sites

Explique ?

Envoyé de mon SM-G900F en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

@did

 

Voici comment j'aurai fais ta scène enfin c'est comme cela que je fais chez moi en cas de changement ID d'un module c'est plus facile a modifier surtout 6 mois après avoir fais le script

--[[
%% properties
%% globals
--]]
local IdModules = 60 -- ID du module Volet
local Valeurs = {30, 60, 100} -- Valeurs a envoyer aux modules
local Pause = 5 -- Secondes durée de la tempo
-------------------------------------------------------------------------------------
-- Debut du Programme
-------------------------------------------------------------------------------------
local NbresValeur = #Valeurs -- recupére le nombre de valeurs dans le tableau
for i = 1,#Valeurs do
  --fibaro:call(IdModules, "setValue", "30")
  fibaro:debug("Valeur Envoié : "..Valeurs[i])
  fibaro:sleep(Pause*1000)
end

Partager ce message


Lien à poster
Partager sur d’autres sites

Voila comment je fais pour ne pas envoyer a un module la valeur qu'il a déjà(et donc bien souvent actionné le relai pour rien)

--[[
%% properties
%% globals
--]]
local IdModules = 5 -- ID du module Volet
local Valeurs = {30, 60, 100} -- Valeurs a envoyer aux modules
local Pause = 60 -- Secondes durée de la tempo
local NbresValeur = #Valeurs -- recupére le nombre de valeurs dans le tableau
-------------------------------------------------------------------------------------
-- Debut du Programme
-------------------------------------------------------------------------------------
-----------------------------------------------------------------------
-- Test si la valeur a enoyer est différente de la valeur du module
-----------------------------------------------------------------------
function CallModule(id, valeurs)
         local GetValeur = tonumber(fibaro:getValue(id, "value"))
         if valeurs ~= GetValeur then
            fibaro:call(id, "setValue", valeurs)
            --fibaro:debug(id.." - action en cours... - Valeur "..valeurs)
         end
end
-----------------------------------------------------------------------
-- Execution
-----------------------------------------------------------------------
for i = 1,#Valeurs do
  CallModule(IdModules, Valeurs[i])
  fibaro:debug("Valeur Envoié : "..Valeurs[i])
  fibaro:sleep(Pause*1000)
end

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Voici un exemple si tu avais plusieurs volets a commander en même temps

--[[
%% properties
%% globals
--]]
local IdModules = {5, 25, 30, 42,70} -- ID du module Volet
local Valeurs = {30, 60, 100} -- Valeurs a envoyer aux modules
local Pause =  60 -- Secondes durée de la tempo
local NbresValeur = #Valeurs -- recupére le nombre de valeurs dans le tableau
-------------------------------------------------------------------------------------
-- Debut du Programme
-------------------------------------------------------------------------------------
-----------------------------------------------------------------------
-- Test si la valeur a enoyer est différente de la valeur du module
-----------------------------------------------------------------------
function CallModule(id, valeurs)
         local GetValeur = tonumber(fibaro:getValue(id, "value"))
         if valeurs ~= GetValeur then
            fibaro:call(id, "setValue", valeurs)
            --fibaro:debug(id.." - action en cours... - Valeur "..valeurs)
         end
end
-----------------------------------------------------------------------
-- Execution
-----------------------------------------------------------------------
for i = 1,#Valeurs do
  for j = 1,#IdModules do
     CallModule(IdModules[j], Valeurs[i])
     fibaro:debug("Valeur Envoié : "..Valeurs[i])
  end
  fibaro:sleep(Pause*1000)
end

Partager ce message


Lien à poster
Partager sur d’autres sites

 Merci Pascal du 54. :60::13::60::13::60:

Je vais tester quand même.

Partager ce message


Lien à poster
Partager sur d’autres sites

J'espère bien j'ai fais cela rien que pour toi lol

Envoyé de mon SM-G900F en utilisant Tapatalk

Partager ce message


Lien à poster
Partager sur d’autres sites

 C'est nickel.

20/20

  • Upvote 1

Partager ce message


Lien à poster
Partager sur d’autres sites

×