Moicphil Posté(e) le 18 juillet 2015 Auteur Signaler Posté(e) le 18 juillet 2015 Salut Peut tu essayer en mettant en "commentaire" les 3 lignes 162 / 163 / 164 stp ? Voici ma scène, j'ai supprimé mes actions : --[[%% properties%% globalsPA_ModePA_Sensors--]]local portables = {xx, xx}local id_module_virtuel = xxxfunction doIt(mode, armed, id)fibaro:debug(mode)if (armed) then fibaro:debug("armé") else fibaro:debug("désarmé") end-----------------------------------------------------------------if (mode == "Jour" and armed) then----------------------------------------------------------------------------------------------------------------------------------elseif (mode == "Jour" and not armed) then----------------------------------------------------------------------------------------------------------------------------------elseif (mode == "Nuit" and armed) then----------------------------------------------------------------------------------------------------------------------------------elseif (mode == "Nuit" and not armed) then----------------------------------------------------------------------------------------------------------------------------------elseif (mode == "Silence" and armed) then----------------------------------------------------------------------------------------------------------------------------------elseif (mode == "Silence" and not armed) then----------------------------------------------------------------------------------------------------------------------------------elseif (mode == "Manuel" and armed) then-----------------------------------------------------------------elseif (mode == "Manuel" and not armed) then-----------------------------------------------------------------elseif (mode == "Arret" and armed) then-----------------------------------------------------------------elseif (mode == "Arret" and not armed) then----------------------------------------------------------------------------------------------------------------------------------elseif (mode == "Panic") then----------------------------------------------------------------------------------------------------------------------------------endend-- ------------------------------------------------------- Envoi le message PUSH-- -----------------------------------------------------function sendMessage(message)for i = 1, #portables dofibaro:call(portables, "sendPush", message)endfibaro:debug(message .. " [envoyé]")end-- ------------------------------------------------------- Vérifie si les portes sont bien fermées-- -----------------------------------------------------function check(doors)local stillopen = {}-- On vérifie l'état des portes --for i = 1, #doors doif (doors~=nil) thenlocal id = tonumber(doors)local name = fibaro:getName(id) or "unknown"if (tonumber(fibaro:getValue(id, "value")) == 1) thentable.insert(stillopen, id)fibaro:debug(name .. " est ouverte")elsefibaro:debug(name .. " est fermée")endelsefibaro:debug("ID #"..i.." n'existe plus")endendif (stillopen and #stillopen > 0) then-- au moins une porte n'est pas ferméelocal msg = ""if (#stillopen == 1) then msg = msg .. "Attention : " else msg = msg .. "Attention : " endfor i = 1, #stillopen domsg = msg .. " " .. fibaro:getName(tonumber(stillopen))endif (#stillopen == 1) then msg = msg .. " est toujours ouverte." else msg = msg .. " sont toujours ouvertes." end-- ---------------------------------------------- Actions si sensor(s) ouvert(s)------------------------------------------------- on averti par pushsendMessage(msg)-- Passage en mode Arretlocal mode = "Arret"fibaro:setGlobal("PA_Mode", mode)fibaro:call(id_module_virtuel, "setProperty", "ui.lblMode.value", mode)return falseendreturn trueend-- ------------------------------------------------------- Transforme une châine en tableau en utilisant-- un délimiteur-- -----------------------------------------------------function split(text, sep)local sep, fields = sep or ":", {}local pattern = string.format("([^%s]+)", sep)text:gsub(pattern, function© fields[#fields+1] = c end)return fieldsendlocal source = fibaro:getSourceTrigger()local id_declencheur = nillocal isOpen = "1"fibaro:debug(source["type"])if (source["type"] == "property") thenid_declencheur = tonumber(source["deviceID"])elseif (source["type"] == "global") thenfibaro:debug( source["name"])local gName = fibaro:getGlobal(source["name"])if ( gName == "Panic") thendoIt( "Panic", false, 0 )elseif (source["name"] == "PA_Sensors") thenfibaro:debug(gName)local doors = fibaro:getGlobal("PA_Sensors")local exclus = fibaro:getGlobal("PA_Exclus")doors = split(string.gsub(doors, "[%[%]]", ""), ",")if (exclus and exclus ~= "") thenexclus = split(string.gsub(exclus, "[%[%]]", ""), ",")elseexclus = {}endtodo = {}for i = 1, #doors dolocal found = falsefor j = 1, #exclus doif (doors == exclus[j]) then found = true end;endif (not found) thentable.insert(todo, doors)fibaro:debug(doors .. " doit être vérifiée")endendfibaro:debug("Checking doors")if (not check(todo)) thenelse--------------------------------------------- Actions lorsque l'alarme est activée---------------------------------------------Vos actions ici----------------------------------------------endendelseif (source["type"] == "other") thenid_declencheur = 28isOpen = "0"endif (not id_declencheur) thenreturnendfibaro:debug("Déclencheur " .. id_declencheur)local actif = fibaro:getGlobal("PA_Sensors")local exclus = fibaro:getGlobal("PA_Exclus")if (actif and actif ~= "") thenfibaro:debug(actif)actif = string.gsub(actif, "[%[%]]", ",")local exist = string.find(actif, ","..id_declencheur)if (exist) then fibaro:debug("exist") endlocal todo = existif (exclus and exclus ~= "") thenfibaro:debug(exclus)exclus = string.gsub(exclus, "[%[%]]", ",")if (string.find(exclus, ","..id_declencheur)) thenfibaro:debug("ID Excluded")todo = falseendelsefibaro:debug("Exclus empty")endif (todo and fibaro:getValue(id_declencheur, "value")==isOpen ) thendoIt( fibaro:getGlobal("PA_Mode"), fibaro:get(id_declencheur, 'armed')=="1", id_declencheur )endend
soulac Posté(e) le 18 juillet 2015 Signaler Posté(e) le 18 juillet 2015 Bonsoir Moicphil, Encore merci pour ta scène sa fonctionne parfaitement. Maintenant histoire d'être moins bête la différence entre ta scène et la mienne c'est la parti "Actions si sensors ouverts" ? Encore merci mon alarme va être fonctionnel avant de partir en vacance.
Moicphil Posté(e) le 19 juillet 2015 Auteur Signaler Posté(e) le 19 juillet 2015 J'avais procédé à quelques modifs quand je suis passé de V3 à V4, et j'ai oublié de mettre à jour mon 1er post. C'est chose faite maintenant. Bonnes vacances.
kinou.69 Posté(e) le 23 juillet 2015 Signaler Posté(e) le 23 juillet 2015 bonjour, comment est il possible de récupérer l'ID d'un téléphone? merci
Moicphil Posté(e) le 23 juillet 2015 Auteur Signaler Posté(e) le 23 juillet 2015 Salut, le plus simple est d'utiliser l'outil fait par Krikroff http://www.domotique-fibaro.fr/index.php/topic/239-hc2-toolkit-application-v1106/
kinou.69 Posté(e) le 23 juillet 2015 Signaler Posté(e) le 23 juillet 2015 On Merci je viens de l'installer la dernière version.
soulac Posté(e) le 23 juillet 2015 Signaler Posté(e) le 23 juillet 2015 Bonjour Moicphil, Juste pour te tenir au courant mon alarme fonctionne très bien c'est super. Il y a juste une chose quand je fais un test des ouvrants et qu'une porte est ouvert j'ai erreur [ Id du détecteur ]. J'ai vue sur le forum que le problème avait été signalé à Steven. Je voulais savoir si Steven avait eu le tps de le résoudre. Merci de votre retour.
Steven Posté(e) le 23 juillet 2015 Signaler Posté(e) le 23 juillet 2015 Heuuu ... quoi ... allo ? Vu que j'ai rien suivis depuis les 2 derniers mois, je sais même plus de quoi on parle. Pourrait-on m'aiguiller sur le problème (post) ? Merci d'avance
Moicphil Posté(e) le 23 juillet 2015 Auteur Signaler Posté(e) le 23 juillet 2015 C'est pas une erreur, juste un pb d'affichage ... EDIT : Oh ! mon copain Steven est dans la place.... Du coup peut etre que tu peut jeter un oeil à ce petit soucis d'affichage ( déja évoqué en début de topic ) ? 1
Steven Posté(e) le 23 juillet 2015 Signaler Posté(e) le 23 juillet 2015 J'ai trouvé le post ... et le soucis. Derrière le bouton "Test des ouvrants", ligne 30, il y a le code suivant : fibaro:call(fibaro:getSelfId(), "setProperty", "ui.lblResult.value", "Erreur" .. s)Il faut juste remplacé le mot "Erreur" par quelque chose de plus parlant comme "Ouvert(s)". Ou alors, plus propre : Afin d'avoir "Ouvert" ou "Ouverts" selon le nombre d'ouvrants, il faut remplacer : fibaro:call(fibaro:getSelfId(), "setProperty", "ui.lblResult.value", "Erreur" .. s) local msg = "" if (#stillopen == 1) then msg = msg .. "La porte " else msg = msg .. "Les portes " endpar local msg = "" if (#stillopen == 1) then msg = msg .. "La porte " fibaro:call(fibaro:getSelfId(), "setProperty", "ui.lblResult.value", "Ouvert " .. s) else msg = msg .. "Les portes " fibaro:call(fibaro:getSelfId(), "setProperty", "ui.lblResult.value", "Ouverts " .. s) end 1
soulac Posté(e) le 24 juillet 2015 Signaler Posté(e) le 24 juillet 2015 Bonjour Steven, Merci pour ton retour sa marche j'ai bien Ouvert ou Ouverts en fonction des portes ou fenêtres ouvertes. Maintenant ma question était plus poussé. Je voulais savoir si on pouvait avoir à la place du numéros d'Id, avoir Porte ou Fenêtre . exemple: Ouverts[Porte,Fenêtre] Merci de ton retour.
kinou.69 Posté(e) le 24 juillet 2015 Signaler Posté(e) le 24 juillet 2015 Bonjour, j'ai enfin réussi a faire quelque chose. Trouver l'ID de mon téléphone. Merci Moicphil. je vais essayé d'installer ce module virtuel.
kinou.69 Posté(e) le 25 juillet 2015 Signaler Posté(e) le 25 juillet 2015 - Renseigner l'ensemble des id des sensors associé à la HC2 sous l'entète "properties" Pouvez vous me dire ce qu'il faut faire exactement? merci
soulac Posté(e) le 25 juillet 2015 Signaler Posté(e) le 25 juillet 2015 Bonsoir Moicphil, je reviens vers toi car je ne comprends plus rien après avoir testé ton module plus test tout fonctionné. J'ai voulu rajouter un téléphone plus tout mes détecteurs et la sa ne fonctionne plus. J'ai une erreur sur ma scène. Maintenant je n'arrive plus a déclencher ma sirène dès qu'un détecteur est ouvert. J'ai redémarrer ma HC2 supprimé ma scène refait ma scène mais rien n'y fait la sirène ne se déclenche pas quand un détecteur s'ouvre. Help me
Moicphil Posté(e) le 25 juillet 2015 Auteur Signaler Posté(e) le 25 juillet 2015 Dans le debug, concernant le message d'erreur je vois que les id sont à "null", donc,aucuns id à vérifier, cala doit venir de là . Vérifier ton module virtuel, et nom de variable.
soulac Posté(e) le 26 juillet 2015 Signaler Posté(e) le 26 juillet 2015 Bonjour Moicphil, Merci de ton retour voila ou j'en suis : J'ai supprimé la scène repris nos échanges j'ai copié collé ta scène et message d'erreur sur la ligne 124 il faut la remplacé par : text:gsub(pattern, function(c) fields[#fields+1] = c end) Après j'ai toujours le message comme dit au dessus du sur le forum. Je me demande si se n'est pas au début de la scène --[[ %% properties %% globals PA_Mode PA_Sensors --]] Si je laisse comme sa j'ai le message d'erreur. Se qui m'énerve c'est que sa marché j'ai changé des choses pour avoir OUVERT à la place ERREUR et la sa ne marche pas. Je sais pas si il y a un lien mais je pers mon latin
soulac Posté(e) le 26 juillet 2015 Signaler Posté(e) le 26 juillet 2015 J'ai oublié de poser une question je sais plus a quoi sert le numéro ID dans la scène vers la ligne 177 ------------------------------------------- -- Actions lorsque l'alarme est activée ------------------------------------------- --Vos actions ici ---------------------------------------------- end end elseif (source["type"] == "other") then id_declencheur = 28 isOpen = "0" end
soulac Posté(e) le 26 juillet 2015 Signaler Posté(e) le 26 juillet 2015 Bon c'est encore moi bon l'erreur qui est dans mon De bug s'affiche quand j'appui sur le bouton ARRET. Sinon tout fonctionne j'ai juste une erreur. Une ptite idée
Moicphil Posté(e) le 26 juillet 2015 Auteur Signaler Posté(e) le 26 juillet 2015 Salut.je suis désolé mais je suis en vacances et sans PC...dur de pouvoir t'aider. Si ca peux attendre la rentrée...ou si Steven passé dans le coin peut être...
soulac Posté(e) le 27 juillet 2015 Signaler Posté(e) le 27 juillet 2015 Bonjour MoicPhil, Pas de problème l'alarme fonctionne même avec l'erreur. C'est juste pour voir pourquoi j'ai une erreur sur le bouton ARRàŠT. Je suis en phase de test pendant 2 semaines . Passe de bonne vacance on en reparle à la rentré si tu a un peu de tps à me consacrer. A+
joesab Posté(e) le 6 novembre 2015 Signaler Posté(e) le 6 novembre 2015 bonjour j'essaye de mettre en place ce super vd, pour l'instant j'ai mis mes capteurs, et j'ai une erreur ligne 143 dans la scène je n'ai pas paramétré de ligne pour les actions en cas d'alarme, et tout les boutons du vd ne sont pas actifs. [ERROR] 17:57:59: line 143: '(' expected near char(194) une idée ? -- ----------------------------------------------------- -- Transforme une châine en tableau en utilisant -- un délimiteur -- ----------------------------------------------------- function split(text, sep) local sep, fields = sep or ":", {} local pattern = string.format("([^%s]+)", sep) text:gsub(pattern, function© fields[#fields+1] = c end) return fields end local source = fibaro:getSourceTrigger() local id_declencheur = nil local isOpen = "1"
Steven Posté(e) le 6 novembre 2015 Signaler Posté(e) le 6 novembre 2015 function© doit être function() 1
joesab Posté(e) le 6 novembre 2015 Signaler Posté(e) le 6 novembre 2015 ok merci steven je vais continuer....
joesab Posté(e) le 7 novembre 2015 Signaler Posté(e) le 7 novembre 2015 bonjour je me remets dessus.... - et que veut dire cette ligne : déclencheur 28 ??? - dans le test des ouvrants, en mode deboguer, j'ai une erreur [ERROR] 15:52:03: line 81: bad argument #1 to 'ipairs' (table expected, got userdata) Résolu - et malgré ligne de commande armement, rien ne s'arme.... Résolu je m'arrache les cheveux à essayer de comprendre car j'ai un capteur qui ne veut rien savoir.... et j'ai besoin d'aide en ce qui concerne la partie envoie de message vers le mobile, je n'utiliser que la technique des push... comment dois je faire ? Résolu aussi merci
Messages recommandés