dbreux Posté(e) le 5 novembre 2015 Auteur Signaler Posté(e) le 5 novembre 2015 @jojo c'est pareil une notification àla fermeture de ma porte Envoyé de mon D6603 en utilisant Tapatalk
jojo Posté(e) le 5 novembre 2015 Signaler Posté(e) le 5 novembre 2015 il me semble que Moiphil suggérait plus haut qu'il y avait peut-être une "interférence" avec une autre scène. Pour en avoir le coeur net. Déactive celle-ci et vois s'il y a encore qqch qui se passe
dbreux Posté(e) le 7 novembre 2015 Auteur Signaler Posté(e) le 7 novembre 2015 re-voilà j'ai désactivé mes 12 scènes reste celle pour la notification.j'ai toujours un notification àla fermeture ?? merci
jojo Posté(e) le 7 novembre 2015 Signaler Posté(e) le 7 novembre 2015 je ne comprends plus rien, et si tu déactive également celle de la notification, reçois-tu encore des notifs ?
dbreux Posté(e) le 7 novembre 2015 Auteur Signaler Posté(e) le 7 novembre 2015 non, plus de notifications (scène désactivé) ??rappel du programme actuel : --[[ %% properties 158 value %% globals --]] if (fibaro:countScenes() > 1) then fibaro:abort() end if ((tonumber(fibaro:getValue(158, "value")) == 0 )) then fibaro:sleep (2000) fibaro:call(128, "sendDefinedPushNotification", "1"); end
jojo Posté(e) le 7 novembre 2015 Signaler Posté(e) le 7 novembre 2015 pour plus de lisibilité, entre ton code avec le bouton <> juste en dessous du bouton smily --[[ %% properties 158 value %% globals --]] if (fibaro:countScenes() > 1) then fibaro:abort() end if ((tonumber(fibaro:getValue(158, "value")) == 0 )) then fibaro:sleep (2000) fibaro:call(128, "sendDefinedPushNotification", "1"); end àquoi correspond l'id 128 ?
dbreux Posté(e) le 7 novembre 2015 Auteur Signaler Posté(e) le 7 novembre 2015 Désolé, j'ai pas compris ce que tu me demandes.pour le 128 je sais pas, (erreur de recopie de ma part ??)y a t il une manip. pour avoir la liste des ID utilisés (scéne ou modules) ??
jojo Posté(e) le 7 novembre 2015 Signaler Posté(e) le 7 novembre 2015 pour voir les devices, etc sous forme de json, il faut utiliser l'api de fibaro exple : http://<ipbox>/api/devices, http://<ipbox>/api/scenes, et pour les users http://<ipbox>/api/users l'id 128 devrais correspondre à l'id de l'utilisateur à qui tu veux envoyer une notification push http://www.fibarouk.co.uk/support/lua/actions-use-fibarocall-api/actions-arguments-usage/
dbreux Posté(e) le 7 novembre 2015 Auteur Signaler Posté(e) le 7 novembre 2015 Bon j'ai repris depuis le début le code c'est ce bout de programme qui faisait que la notification ne marchait qu'à la fermeture après l'avoir enlevé j'ai une notification à l'ouverture et fermeture. reste donc à empecher la notification à la fermeture ?? if (fibaro:countScenes() > 1) then fibaro:abort() end
jojo Posté(e) le 7 novembre 2015 Signaler Posté(e) le 7 novembre 2015 très bizarre ? met un debug avant le if pour voir ce qu'il affiche quand tu ouvres et quand tu fermes fibaro:debug(fibaro:getValue(158, "value")))
dbreux Posté(e) le 7 novembre 2015 Auteur Signaler Posté(e) le 7 novembre 2015 le debug à l'ouverture : [DEBUG] 19:20:24: 0[DEBUG] 19:20:24: 0[DEBUG] 19:20:24: 1 le débug à la fermeture [DEBUG] 19:21:38: 0[DEBUG] 19:21:38: 1[DEBUG] 19:21:38: 0
jojo Posté(e) le 7 novembre 2015 Signaler Posté(e) le 7 novembre 2015 c'est très bizarre tout ça, Pour une action tu as 3 lignes de debug ? Pas toujours avec la même valeur ? Tu devrais alors avoir 2 notif à chaque fois que le debug donne 0. je pense que donc c'est la valeur 1 (et pas 0) qu'il faut tester. (cfr dernière valeur du début) Mais si je vois 1 à la fermeture, c'est qu'il y aurait un rebond ? Ton aimant n'est-il pas trop loin de module lorsque la porte est fermée ?
dbreux Posté(e) le 8 novembre 2015 Auteur Signaler Posté(e) le 8 novembre 2015 Quand ma porte est fermée, j'ai bien le symbole porte fermée dans l'affichage du module Maintenant que je regarde de près l'aimant n'est pas au même niveau que le capteur (ma porte fenêtre est comme ça) ci joint photo
dbreux Posté(e) le 8 novembre 2015 Auteur Signaler Posté(e) le 8 novembre 2015 Oups la photo Envoyé de mon D6603 en utilisant Tapatalk
jojo Posté(e) le 8 novembre 2015 Signaler Posté(e) le 8 novembre 2015 en effet, cela pourrait être la cause. Pur en avoir le coeur net, le mieux est de faire des tests avec le device et l'aimant en main.
dbreux Posté(e) le 8 novembre 2015 Auteur Signaler Posté(e) le 8 novembre 2015 Hé bien bravo, la position de l'aimant était le pb, après plusieurs essais àla main j'ai trouvé une position ou je n'ai qu'une notification àl'ouverture. Merci de votre assistance (pro) Envoyé de mon D6603 en utilisant Tapatalk
jojo Posté(e) le 8 novembre 2015 Signaler Posté(e) le 8 novembre 2015 cool, l'entraide est la raison d'être du forum
dbreux Posté(e) le 5 décembre 2015 Auteur Signaler Posté(e) le 5 décembre 2015 Bonjour àtous, Ça fonctionne toujours bien ma notification d'ouverture de porte , mais j'aimerai avoir un délais avant la notification, c'est àdire si porte ouverte 10 secondes alors notification ? Sur la base du programme de ce post pouvez vous m'aider Merci Didier Envoyé de mon D6603 en utilisant Tapatalk
mprinfo Posté(e) le 5 décembre 2015 Signaler Posté(e) le 5 décembre 2015 Voici un code qui te permettra de faire la même chose mais il a l'avantage de fonctionner avec plusieurs smartphones et plusieurs détecteur --[[ %% autostart %% properties 69 value 53 value 73 value --]] -- ================================================ -- PREPARATION DU CODE, ON CREER LES FONCTIONS QUE -- NOUS ALLONS DEVOIR APPELER PAR LA SUITE -- Dans notre cas, il y a au moins 2 fonctions : -- une pour l'envoi du message -- une pour obtenir les informations du module et son état -- -- Une fonction est un morceau de code que nous pouvons appeler -- plusieurs fois. Elle peux recevoir des paramètres. -- Une fonction peux exister sans pour autant être utilisée -- ================================================ -- ================================================ -- Envoi un message sur un ou plusieurs portables -- ---------------------------------------------------------------------------------- -- Parmètre : -- idPortables : numéro d'un portable ou tableau de plusieurs portable -- message : message àenvoyer -- Exemple : -- sendPush(23, "Envoi d'un message simple") -- sendPush({23,25,27}, "Envoi a plusieurs destinataires") -- ================================================ function sendPush(idPortables, message) if (type(idPortables) == "table") then -- Si nous avons plusieurs numéros dans un tableau {} for i = 1, #idPortables do -- On envoi le message sur tout les portables fibaro:call(idPortables[i], "sendPush", message) end fibaro:debug(string.format("Pushs envoyés : %s", message)) elseif (type(idPortables) == "number") then -- Si nous avons un seul numéro de portable fibaro:call(idPortables, "sendPush", message) fibaro:debug(string.format("Push envoyé : %s", message)) else fibaro:debug(string.format("Erreur : le numéro %s n'est pas valable", idPortables)) end end -- ================================================ -- Retourne les information sur un device -- ---------------------------------------------------------------------------------- -- Parmètre : -- deviceId : l'dientifiant du device -- Exemple : -- local message = getDeviceInfo(69) -- ================================================ function getDeviceInfo(deviceId) local etat = "ouverte" if (fibaro:getValue(deviceId, 'value' ) == "0") then etat = "ferme" end return string.format("La %s est %s.", fibaro:getName(deviceId), etat) end -- ================================================ -- FIN DE LA PREPARATION DU CODE -- ================================================ -- ================================================ -- DEBUT DU CODE PRINCIPAL -- ================================================ -- Déclaration du/des numéros de portables local idportables = 181 -- local idportables = {23, 24, 25} -- Le déclencheur de cette scène, va nous permettre de savoir qui et -- comment cette scène a été démarrée local SourceTrigger = fibaro:getSourceTrigger() if (SourceTrigger['type'] == 'property') then -- si la scène a été démarrée par un "device", on va récupérer -- les informations du device local message = getDeviceInfo(SourceTrigger['deviceID']) -- puis l'envoyer sur les portables sendPush(idportables, message) elseif (SourceTrigger['type'] == 'other') then -- Si la scène a été démarrée manuellement sendPush(idportables, string.format("La scène a été lancée le %s a %s", os.date("%d/%m/%Y"), os.date("%R"))) elseif (SourceTrigger['type'] == 'autostart') then -- Si la scène a été démarrée par une sauvegarde de cette scène -- ou le redémarrage de la box sendPush(portables, string.format("La box a démarré le %s a %s", os.date("%d/%m/%Y"), os.date("%R"))) end
dbreux Posté(e) le 5 décembre 2015 Auteur Signaler Posté(e) le 5 décembre 2015 Merci, mais j'aimerai pouvoir ajouter un code dans le programme existant (post précédent) je sais pas si c'est compliqué ?? Envoyé de mon D6603 en utilisant Tapatalk
mprinfo Posté(e) le 5 décembre 2015 Signaler Posté(e) le 5 décembre 2015 Quel code Envoyé de mon SM-G900F en utilisant Tapatalk
dbreux Posté(e) le 5 décembre 2015 Auteur Signaler Posté(e) le 5 décembre 2015 voici le code : --[[ %% properties 158 value %% globals --]] if (fibaro:countScenes() > 1) then fibaro:abort() end if ((tonumber(fibaro:getValue(158, "value")) == 0 )) then fibaro:sleep (2000) fibaro:call(128, "sendDefinedPushNotification", "1"); end Merci
mprinfo Posté(e) le 6 décembre 2015 Signaler Posté(e) le 6 décembre 2015 Peux tu me dire ce que tu veux faire ? car la je comprend rien
dbreux Posté(e) le 6 décembre 2015 Auteur Signaler Posté(e) le 6 décembre 2015 Actuellement, j'ouvre une porte fenêtre, quasi aussitôt je reçois une notification. Je voudrais recevoir cette notification après un délais, en fait recevoir la notification seulement après 10 secondes (par exemple) que la porte est bien restée ouverte durant ces 10 secondes, si je referme la porte avant ces 10 secondes je ne reçois pas de notification, disposer donc le code une temporisation. Tant que la porte est ouverte la temporisation s'écoule, àl'issus des 10 secondes, notification. Merci Envoyé de mon D6603 en utilisant Tapatalk
mprinfo Posté(e) le 6 décembre 2015 Signaler Posté(e) le 6 décembre 2015 oui c'est faisable il me semble même que Berale24 àdonner une fonction qui est parfaite pour ce genre de demande. j'ai d'ailleurs pas eu le temps de la tester
Messages recommandés