Aller au contenu

Virtual Device Pour Mettre Suspendre Scenes


mikael2235

Messages recommandés

Bonjour à  tous,

 

Je vous sollicite car j'ai du monde qui vient a la maison vendredi soir (Fête des voisins), et je voudrais donc pouvoir mettre en place un module virtuel en place, avec 2 boutons "PAUSE" / "START", et un label indiquant donc l'etat "ON HOLD" / "RUNNING".

 

L'idée est de pouvoir parametrer l'ID de chaque scenes que l'on souhaite pouvoir arreter, et notamment dans mon cas (fermeture des volets, allumage de la lumière à  partir de 23h quand détection, arrosage du jardin (surtout si les invités sont sur la terasse !!! ))

 

Merci pour votre aide.

Mikael

Lien vers le commentaire
Partager sur d’autres sites

Salut,

 

Un petit code a mettre dans tes boutons :

 

Fonction : fibaro:setSceneEnabled(sceneID, enabled)

 

DESCRIPTION

Active ou désactive une scène donnée.

 

PARAMàˆTRES

  • sceneID: numéro d’identification de la scène
  • enabled: valeur booléenne (true - active la scène, false - désactive la scène)

VALEURS RÉCUPÉRÉES

Aucune

 

EXEMPLE

if a > 0 thenfibaro:setSceneEnabled(3, false) -- si la valeur de la variable 'a' est positive, cela désactive la scène d'ID=3
else fibarosetSceneEnabled(3, true) -- sinon cela active la scène d'ID=3
end

et regarde aussi ca

Si la scene 3 est active on active la scene 5
 
if (fibaro:isSceneEnabled(3)) then
fibaro:setSceneEnabled(5, true)
end
  • Upvote 1
Lien vers le commentaire
Partager sur d’autres sites

Est-ce que ça marcherai ? moi ça me parait correct !! :D

-- traitement de la varialble globale Merci Steven
function split(text, sep)
           local sep, fields = sep or ":", {}
           local pattern = string.format("([^%s]+)", sep)
           text:gsub(pattern, function(c) fields[#fields+1] = c end)
return fields
end

local mon_tableau = fibaro:getGlobal('SCN_GroupID');
local Scn_Id = split(mon_tableau, ",")
-- fin du traitement de la varialble globale
                  
-- Recuperation de id du tel pour le push
local IdTel = fibaro:getGlobalValue("IdI9305")

-- Initialisation de la table
local Scn_IdValue = {};

fibaro:debug("Nombres Scenes = " ..#Scn_Id)

  for i = 1,#Scn_Id do
               
      fibaro:setSceneEnabled(Scn_Id[i], True)
      Scn_IdValue[i] =fibaro:isSceneEnabled(Scn_Id[i]); -- recuperation de la valeur de la scene
      fibaro:debug( Scn_IdValue[i] .."  " .. i )
 
  end

fibaro:sleep(2*1000)

-- Mise a jour label
fibaro:call(fibaro:getSelfId(), "setProperty", "ui.ScnStatusZone1.value", "RUNNING")

-- Envoi du Push
fibaro:call(IdTel, "sendPush", "Les " ..#Scn_Id .." Scenes sont en marche")


Je suis reparti du module pour centraliser les volets.

 

Et dans mon cas, j'ai aussi le panneau d'arrosage, (ID122), on doit le traiter comme une scene, avec True/False ?

Lien vers le commentaire
Partager sur d’autres sites

Voila le tuto de @mprinfo, nous le vexe pas ;-)

Pourtant il met de jolies couleurs ;-)

 

@mrpinfo : je n'ai rien fit, j'avais récupéré cela ya longtemps je crois ;-), un bon vieux copier-coller ;-)

 

http://www.domotique-fibaro.fr/index.php/topic/4554-module-virtuel-utilisation-dun-label-etiquette/?p=68104

 

@mickael2235 : je croyais que tu voulais arreter les scenes ? la tu les relances en les remettant a True ;-)

Lien vers le commentaire
Partager sur d’autres sites

pour le label, ça DOIT fonctionner, sauf si l'id du label n'est pas

ScnStatusZone1

vérifies bien, il y a des limitations en tout genres pour les ID des labels et boutons des VD

Lien vers le commentaire
Partager sur d’autres sites

×
×
  • Créer...