Moicphil Posté(e) le 28 décembre 2013 Signaler Posté(e) le 28 décembre 2013 Script pour connaitre la capacité et être averti par e-mail en cas de "piles faibles" sur un ou des modules Créer une Scène en Lua et insérer ce code : --[[ %% properties %% globals --]] local batterieDevice = "1" local minbattSeuil = 70 -- Saisir le seuil mini d'alerte ici! local i = 0 local maxNodeID = 250 for i = 0, maxNodeID do local type = fibaro:get (i, "isBatteryOperated"); x , y = string.find (type, batterieDevice ) local niveauBatterie = tonumber(fibaro:getValue (i, "batteryLevel")) if x ~= nill and niveauBatterie ~= nill and (niveauBatterie <= minbattSeuil or minbattSeuil == 255) then local nom = fibaro:getName(i) fibaro:debug("Device "..i.."="..nom.." Niveau Batterie="..niveauBatterie) fibaro:call(4, "sendEmail", "Alerte Batterie", "Piles faibles module: "..nom) end end Vous avez juste à spécifier à partir de quel seuil vous souhaitez être averti . Dans cet exemple, je vais recevoir un mail pour chaque module en dessous de 70%.(changer l'ID "sendEmail" par celui souhaité) Vous pouvez aussi remplacer "sendEmail" par "sendPush" pour une notification Vous pouvez lancer la scène manuellement périodiquement . Personnellement, j'ai créé une autre scène qui exécute celle-ci tous les jours. Auteur original du script : Jompa68 4
lolomail Posté(e) le 29 décembre 2013 Signaler Posté(e) le 29 décembre 2013 Super sympa comme code pour surveiller les niveaux des piles. Tu ajoutes quelle ligne pour lancer ce script une fois par jour?
Moicphil Posté(e) le 29 décembre 2013 Auteur Signaler Posté(e) le 29 décembre 2013 Pour lancer le script, j'ai créé cette scène simple: Une autre solution,encore plus simple est possible mais j'ai pas essayé, il suffit de rajouter dans le code : %% autostart fibaro:sleep(24*60*60*1000) --[[ %% properties %% globals %% autostart --]] local batterieDevice = "1" local minbattSeuil = 70 -- Saisir le seuil mini d'alerte ici! local i = 0 local maxNodeID = 250 for i = 0, maxNodeID do local type = fibaro:get (i, "isBatteryOperated"); x , y = string.find (type, batterieDevice ) local niveauBatterie = tonumber(fibaro:getValue (i, "batteryLevel")) if x ~= nill and niveauBatterie ~= nill and (niveauBatterie <= minbattSeuil or minbattSeuil == 255) then local nom = fibaro:getName(i) fibaro:debug("Device "..i.."="..nom.." Niveau Batterie="..niveauBatterie) fibaro:call(4, "sendEmail", "Alerte Batterie", "Piles faibles module: "..nom) fibaro:sleep(24*60*60*1000)--Cela fait 24h end end
lolomail Posté(e) le 29 décembre 2013 Signaler Posté(e) le 29 décembre 2013 Je viens de rajouter les deux lignes de codes, je vous dirais si cela marche demain
Krikroff Posté(e) le 29 décembre 2013 Signaler Posté(e) le 29 décembre 2013 Bravo pour ce script moicphil . Cependant il est important de préciser un point: Le script peut participer à vider les batteries, l'interrogation et la sortie de veille d'un périphérique sur batterie est consommateur d’énergie... Bon 1x par jour c'est pas bien grave . ET puis cela peut aider pour ceux qui ont des problèmes de "Dead nodes" en ajoutant 2, 3 lignes dans le code... Cette fonctionnalité est incluse dans le HC2: vous pouvez choisir ou non d'être averti par mail en cas de niveau faible de batterie sur les périphériques de votre choix. Le HC2 examine le niveau à chaque sortie de veille automatiquement
lolomail Posté(e) le 30 décembre 2013 Signaler Posté(e) le 30 décembre 2013 Krikroff, par hasard existerait-il un code pour checker les noeuds morts et les reveiller àintervalle régulier?
lionel Posté(e) le 30 décembre 2013 Signaler Posté(e) le 30 décembre 2013 Krikroff, par hasard existerait-il un code pour checker les noeuds morts et les reveiller à intervalle régulier? ici: http://domotique-info.fr/2013/05/script-lua-detection-des-noeuds-morts-sur-la-home-center-2-de-fibaro/
lolomail Posté(e) le 30 décembre 2013 Signaler Posté(e) le 30 décembre 2013 Super je ne l'avais pas vu celui là, je viens de le mettre en place. Faire un post avec un lien serait bien et pourrait servir àd'autres
lionel Posté(e) le 30 décembre 2013 Signaler Posté(e) le 30 décembre 2013 Ou demander a l auteur de le poster sur le forum.... Ca ferait un membre de plus Lionel
Krikroff Posté(e) le 30 décembre 2013 Signaler Posté(e) le 30 décembre 2013 (modifié) Krikroff, par hasard existerait-il un code pour checker les noeuds morts et les reveiller à intervalle régulier? http://www.domotique-fibaro.fr/index.php/topic/101-script-contr%C3%B4le-des-noeuds-mort-et-leur-r%C3%A9veil/ Modifié le 30 décembre 2013 par Yohan Edit du lien.
jltthierry Posté(e) le 1 janvier 2014 Signaler Posté(e) le 1 janvier 2014 Bonjour, Pour reprendre : Cette fonctionnalité est incluse dans le HC2: vous pouvez choisir ou non d'être averti par mail en cas de niveau faible de batterie sur les périphériques de votre choix. Le HC2 examine le niveau à chaque sortie de veille automatiquement Pour un débutant comme moi, où se trouve cette fonctionnalité ? Cependant il est important de préciser un point: Le script peut participer à vider les batteries, l'interrogation et la sortie de veille d'un périphérique sur batterie est consommateur d’énergie... Bon 1x par jour c'est pas bien grave . ET puis cela peut aider pour ceux qui ont des problèmes de "Dead nodes" en ajoutant 2, 3 lignes dans le code... Cette fonctionnalité est incluse dans le HC2: vous pouvez choisir ou non d'être averti par mail en cas de niveau faible de batterie sur les périphériques de votre choix. Le HC2 examine le niveau à chaque sortie de veille automatiquement
lolomail Posté(e) le 1 janvier 2014 Signaler Posté(e) le 1 janvier 2014 Dans le panneau config au niveau de l'onglet reseau z-wave
p78ch201 Posté(e) le 8 mars 2014 Signaler Posté(e) le 8 mars 2014 Question bête : fibaro:call(4, "sendEmail", "Alerte Batterie", "Piles faibles module: "..nom) Si j'ai bien compris le "4" est l'ID d'un module ? ou est-ce que je récupere l'ID du module sur ma box ?
Moicphil Posté(e) le 8 mars 2014 Auteur Signaler Posté(e) le 8 mars 2014 Non, le "4" est l'Id de l'utilisateur pour les notifications . Tu peut le retrouver facilement avec le Toolkit de Krikroff. ( ou en cliquant dans le panneau " contrôle d’accès" puis "utilisateur", tu verra l'Id dans la barre du navigateur ) Les Id des modules à pile sont récupérés automatiquement par le script Pour résumer, pour faire fonctionner le script, tu as juste à modifier le seuil mini pour l'alerte et l'Id utilisateur pour la notif.
p78ch201 Posté(e) le 8 mars 2014 Signaler Posté(e) le 8 mars 2014 me manque plus que le toolkit de Krikroff alors !! merci
rahany Posté(e) le 9 juin 2015 Signaler Posté(e) le 9 juin 2015 Bonjour, je viens de tester le script et celui-ci me remonte l'erreur suivant ... et j'avoue que je ne comprends pas trop pk... est-ce du fait que je suis en V 4.048 ?... j'ai oublie un truc, thanks for you help ....
cybersquat Posté(e) le 27 février 2016 Signaler Posté(e) le 27 février 2016 Hello, je viens de testé le script et j'ai ca [DEBUG] 20:14:22: line 12: bad argument #1 to 'find' (string expected, got nil) J'ai utilisé celui ci --[[ %% properties %% globals %% autostart --]] local batterieDevice = "1" local minbattSeuil = 70 -- Saisir le seuil mini d'alerte ici! local i = 0 local maxNodeID = 250 for i = 0, maxNodeID do local type = fibaro:get (i, "isBatteryOperated"); x , y = string.find (type, batterieDevice ) local niveauBatterie = tonumber(fibaro:getValue (i, "batteryLevel")) if x ~= nill and niveauBatterie ~= nill and (niveauBatterie <= minbattSeuil or minbattSeuil == 255) then local nom = fibaro:getName(i) fibaro:debug("Device "..i.."="..nom.." Niveau Batterie="..niveauBatterie) fibaro:call(235, "sendEmail", "Alerte Batterie", "Piles faibles module: "..nom) fibaro:sleep(24*60*60*1000)--Cela fait 24h end end
trackingnewtech Posté(e) le 20 juin 2016 Signaler Posté(e) le 20 juin 2016 çàsemble être une régression dans les scènes en v4.082 le problème persiste
Lazer Posté(e) le 20 juin 2016 Signaler Posté(e) le 20 juin 2016 C'est du très vieux code des v1 et v3 ça !!! Le champs isBatteryOperated n'existe même plus dans l'API en v4. Et la méthode qui consistait à parcourir tous les devices de 1 à maxNodeID = 250 est dépassée, depuis on fait mieux. Bref, il faudrait réécrire totalement le code LUA là . Mais je ne suis pas certain de l'utilité, car la HC2 sait envoyer des Emails quand le niveau de batterie d'un module est faible, et on a aussi un super VD My Batteries sur le forum
Messages recommandés