Romain80 Posté(e) le 2 avril 2014 Signaler Posté(e) le 2 avril 2014 Salut, Je viens vous proposer un petit scenario pour vous alerter si une porte reste malencontreusement ouverte. Alors bien sur, c'est pas pour la complexité de la scene que je le poste mais encore une fois pour donner des idées. Etant donnée l' engouement pour le scenario qui gère les lumières extérieure en journée, je me dis que tout est bon a poster et que ça peut servir. Alors le voila --[[ %% properties 28 value 26 value %% globals --]] local startSource = fibaro:getSourceTrigger(); local temp_ouverture = 10*60*1000 -- temps exprimé en ms if ( ( tonumber(fibaro:getValue(28, "value")) > 0) ) then fibaro:sleep(temp_ouverture) if ( ( tonumber(fibaro:getValue(28, "value")) > 0) ) then fibaro:call(4, "sendPush", "Porte Entrée Ouverte depuis 10 minutes !"); end end if ( ( tonumber(fibaro:getValue(26, "value")) > 0) ) then fibaro:sleep(temp_ouverture) if ( ( tonumber(fibaro:getValue(26, "value")) > 0) ) then fibaro:call(4, "sendPush", "Porte Terrasse Ouverte depuis 10 minutes !"); end end Alors, oui bien sur, j' aurais certainement pu faire un truc plus joli/propre/optimisé Mais ça fonctionne dans l' état. Je verrais pour les optimisation plus tard. Mes capteurs d' ouverture sont des FIBARO FGK. Voilou, en esperant que ça serve ou donne des idées ++ 1
Steven Posté(e) le 15 avril 2014 Signaler Posté(e) le 15 avril 2014 J'ai une version que j'utilise pour gérer les alertes de ma maison. En la simplifiant, on obtient une autre version pour vérifier les portes ouvertes. -- NE PAS TOUCHER -- if (not temporisation) then temporisation = {} end if (not done) then done = {} end -- A modifier -- local duree_sec = 30 -- on vérifie toute les 30 secondes local max_autorise_sec = 10*60 -- max 10 minutes local ID_portes = {5, 6, 21, 26, 9} -- ID des détecteurs de porte local ID_portables = {70} -- ID des portables à avertir -- Début du traitement, on boucle sur tous les détecteurs -- ne pas toucher for i = 1, #ID_portes do local open = tonumber(fibaro:getValue(tonumber(ID_portes[i]), "value")) == 1 --if (i == 3) then open = true end if (open) then --fibaro:debug("open") -- la porte est ouverte on inclémente le compteur if (temporisation[i]) then temporisation[i] = temporisation[i] + 1 else temporisation[i] = 0 end else --fibaro:debug("close") -- la porte est fermée on remet le conteur à 0 temporisation[i] = 0 done[i] = 0 end if ( ((temporisation[i] * duree_sec) >= max_autorise_sec) and not done[i]) then -- création du message d'avertissement local name = fibaro:getName(tonumber(ID_portes[i])); local room = fibaro:getRoomNameByDeviceID(tonumber(ID_portes[i])); local msg = name .. " [".. room .. "] ouverte depuis " .. (temporisation[i] * duree_sec) .. " secondes !" fibaro:debug(msg) -- Envoi du messsage au destinataires for j = 1, #ID_portables do fibaro:call(tonumber(ID_portables[j]), "sendPush", msg) end done[i] = 1 temporisation[i] = 0 end end fibaro:sleep(duree_sec * 1000) Par contre, cela est à mettre dans un main loop. Cordialement
Moicphil Posté(e) le 15 avril 2014 Signaler Posté(e) le 15 avril 2014 Merci pour le partage, et bonne idée la temporisation...
Domodial Posté(e) le 15 avril 2014 Signaler Posté(e) le 15 avril 2014 on peut faire un VD juste en utilisant le Main Loop sans bouton d'action ? questionne conne mais bon
cybersquat Posté(e) le 21 mai 2015 Signaler Posté(e) le 21 mai 2015 sympa comme idée merci du partage
q.philippe Posté(e) le 15 juillet 2015 Signaler Posté(e) le 15 juillet 2015 salut un petit renseignement, je voudrai déclencher une scène mais seulement apres trois module déclencher mais qui retourne en mode normal / je m'explique Je veux que : SI portail est passer en mode ALERTE en NORMAL, et SI Présence_Voiture de 0 à 1, et Si Porte ALERTE, = ALORS ..... (cela sur une durée cumuler de 5min par exemple) Je passe en Lua bien sure, mais par ou commencer ?
mprinfo Posté(e) le 15 juillet 2015 Signaler Posté(e) le 15 juillet 2015 Voici un debut de solution If normal and 1 and alerte then Tu mets les 3 modules en trigger Envoyé de mon SM-G900F
Messages recommandés