-
Compteur de contenus
2 558 -
Inscription
-
Dernière visite
-
Jours gagnés
27
Tout ce qui a été posté par i-magin
-
Dans ma contribution aux scripts LUA "Checker l'éclairage chez soi", j'évoque l'envoi de message par l'outil "Prowl" PROWL est un outil d'envoi de notification push sous iOS Vous trouverez toutes les informations ici : http://www.prowlapp.com/ Vous pourrez vous y enregistrer et obtenir votre clé API Vous pourrez ensuite créer un module virtuel sur votre HC2, exemple : Script LUA du bouton : --[[ %% properties %% globals --]] HC2 = Net.FHttp("api.prowlapp.com") local request = "/publicapi/add?apikey=xxxxxxxxx&application=HC2&event=Lumière+allumée&description=" fibaro:sleep(1000); request = request..fibaro:getGlobalValue('pushnotification').. ""; fibaro:debug(request) response = HC2:GET(request) Dans un 1er temps, la variable locale request recueille la ligne de commande à envoyer au serveur Prowl (la clé APi doit être modifiée), sauf la "description" qui va être récupérée depuis une variable globale Dans un second temps, j'ajoute à cette variable locale, la variable globale "pushnotification" renseignée par exemple, par le script "Checker l'éclairage chez soi" La variable concaténée est pour finir adressée par HC2:GET
- 3 réponses
-
- notification
- push
-
(et 1 en plus)
Étiqueté avec :
-
La box HC2 nous permet d'adresser des alertes par email et notification Push. L'envoi de message SMS est bien prévu, mais cette option nécessite d'acheter un pack SMS auprès de Fibaro Vous me direz que les notifications Push fonctionnent très bien ? C'est vrai, mais impossible d'envoyer une alerte si l'accès Internet de votre HC2 est HS Et à l'étranger, je n'active jamais le service des données à l'étranger vu le coà»t induit. Par contre, la réception de SMS est gratuit Si vous pouvez récupérer un smartphone android et souscrire un abonnement à 2€, la solution suivante peut vous intéresser.... Il existe plusieurs applications sous Android qui permettent de créer un serveur SMS. Nous retiendrons ici le serveur PAW (http://paw-android.fun2code.de/) qui ouvre plusieurs possibilités, dont l'envoi de SMS Attention ! Tous les portables ne semblent pas compatibles Pour ma part, j'ai récupéré l'ancien smartphone Samsung Galaxy Ace de ma compagne J'avais installé dans un 1er temps le serveur Paw sans message d'erreur. Mais ensuite, impossible de démarrer le serveur, avec un message non explicite Je me suis douté que le problème était lié au fait que j'avais retiré la carte mémoire SD. J'ai installé une nouvelle carte SD, désinstallé et réinstallé l'application et le serveur s'est bien lancé. Notez qu'il est nécessaire d'effectuer quelques paramétrages, comme : - de préférence attribuer une adresse IP fixe à votre smartphone - faire en sorte que la connexion wifi de votre smartphone soit active en permanence (y compris en veille) Pour les détails de configuration, vous trouverez toutes les informations ici : http://www.abavala.com/2013/01/07/paw-serveur-http-php-perl-pour-android-et-ma-domotique/ Vous trouverez d'autres pages sur ce site, dont l'envoi de SMS : http://www.abavala.com/2013/01/10/paw-envoi-de-notifications-par-sms/ Une fois l'installation effectuée et des tests réussis d'envoi de SMS depuis une ligne de commande HTPP et votre explorateur préféré, vous pourrez passer à votre box HC2 Il faudra créer un module virtuel en précisant l'adresse IP de votre smartphone et le port 8080 Vous configurerez la ligne string suivante (en modifiant le numéro de téléphone) : GET /actions/sms.xhtml?numero=0600000000&message=FIBARO%20MESSAGE%20DE%20TEST HTTP/1.10x0D0x0A0x0D0x0A Il est impératif de terminer votre ligne de commande par HTTP/1.10x0D0x0A0x0D0x0A Inconvénient de cette ligne de commande string : impossible d'insérer une variable Donc, autant de boutons que de messages et impossible d'envoyer une valeur prélevée sur la box. Exemple : impossible d'envoyer un message avec des informations sur les lampes restées allumées (voir script lua "checker l'éclairage chez soi") La solution ? un script lua comme celui-ci : --[[ %% properties %% globals --]] HC2 = Net.FHttp("192.xxx.xxx.xxx", 8080); response, status, errorCode = HC2:GET("/actions/sms.xhtml?numero=0600000000&message=test"); Sauf, qu'il y a un bug LUA et que cela ne fonctionne pas... Et, c'est là que toute la sympathique compétence de @Krikroff intervient. @Krikroff a élaboré un toolkit disponible sur le forum officiel Fibaro Il a adapté son addon pour permettre l'envoi de SMS via serveur PAW Je ne le copie pas ici, je laisse @Krikroff et les administrateurs du site s'en charger Et cela fonctionne impeccable. Vous ne trouverez ci-après que les dernières lignes (main process) du code de @Krikroff : ------------------------------------------------------------------------------------------- -- Main process ------------------------------------------------------------------------------------------- function SendSMS(number, message) local uri = "/actions/sms.xhtml"; local params = "?numero=" .. number .. "&message=" .. urlencode(tostring(message or "empty")); Tk.Net.isTraceEnabled = false; local HttpClient = Tk.Net.HttpRequest("192.xxx.xxx.xxx", 8080); HttpClient:setReadTimeout(500); local response, status, errorCode = HttpClient:request("GET", uri..params, { "User-Agent: Mozilla/5.0 (Windows NT 6.1; rv:25.0) Gecko/20100101 Firefox/25.0", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9" }); HttpClient:disconnect(); HttpClient:dispose(); HttpClient = nil; end local message = fibaro:getGlobalValue("sms") -- numéro de tel, message... SendSMS("0600000000", message); Il faut bien sà»r modifier l'adresse Ip et le numéro de tél destinataire A noter que j'ai créé une variable globale "sms" Pour mes tests, j'ai créé une scène qui s'exécute tous les jours à 10H00 Voici son contenu : --[[ %% autostart %% properties %% globals --]] local sourceTrigger = fibaro:getSourceTrigger(); if (sourceTrigger["type"] == "autostart") then while true do local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); -- on envoie un sms tous les jours à 10H00 if ( ( ((currentDate.wday == 1 or currentDate.wday == 2 or currentDate.wday == 3 or currentDate.wday == 4 or currentDate.wday == 5 or currentDate.wday == 6 or currentDate.wday == 7) and string.format("%02d", currentDate.hour) .. ":" .. string.format("%02d", currentDate.min) == "10:00") ) ) then tempext = fibaro:getGlobalValue("tempext") -- température extérieure Netatmo tempint = fibaro:getGlobalValue("tempint") -- température intérieure Netatmo message = ("Bonjour, nous sommes le "..currentDate.day.."/"..currentDate.month.."/"..currentDate.year.." - "..tempext.." - "..tempint.." - A demain !") fibaro:setGlobal("sms", message); -- constitution du message fibaro:call(88, "pressButton", "4"); -- envoi du message par module virtuel end fibaro:sleep(60*1000); end else local currentDate = os.date("*t"); local startSource = fibaro:getSourceTrigger(); if ( startSource["type"] == "other" ) then tempext = fibaro:getGlobalValue("tempext") tempint = fibaro:getGlobalValue("tempint") message = ("Bonjour, nous sommes le "..currentDate.day.."/"..currentDate.month.."/"..currentDate.year.." - "..tempext.." - "..tempint.." - A demain !") fibaro:setGlobal("sms", message); fibaro:debug(message) fibaro:call(88, "pressButton", "4"); end end Je reçois donc un SMS journalier qui me donne la température extérieure et intérieure de ma station Netatmo J'espère que ce mémo vous sera utile....
-
Compatible V3-V4 Aeon Labs - Minimote
i-magin a répondu à un(e) sujet de Moicphil dans Aeon Labs / Aeotec
Malheureusement, je ne peux pas utiliser la télécommande AEON LABS minimote que j'ai achetée en novembre 2013. J'avais mis à jour son firmware sur le site AETOC : 1.18 EU.... où trouve t'on la version 1.48 annoncée dans le post ? Lors de l'installation sur la HC2, j'obtiens un module, mais que l'on ne peut pas utiliser avec la commande "sceneActivation" A chaque mise à jour de firmware HC2 le module minimote disparait On trouve un rapport de bug Fibaro ici : http://bugzilla.fibaro.com/view.php?id=1053 (lien qui nécessite d'être enregistré sur le bug tracker) Faudrait-il attendre une mise à jour ZWAVE de la HC2 ? -
Sans vouloir être désagréable.... est-ce qu'il est possible de poursuivre les conversations sur certains thèmes comme "minimote" en dehors de la présentation des nouveaux arrivants ?
-
Checker l'éclairage chez soi Exécution automatique d'un script qui vérifie si toutes les lumières sont éteintes au départ de chez soi. NB : Je ne suis pas un spécialiste de LUA et mes connaissances en programmation datent de plus de 20 ans (inutile de m'appeler papy ) L'exemple ci-dessous est une adaptation d'un script de contrôle de fenêtres écrit par @quikdav...j'espère qu'il rejoindra ce forum Cette scène est exécutée automatiquement au départ de chez moi Quelques précisions : - "wallplug" et "interrupteur" sont des variables locales de type "table" - les valeurs entre parenthèses bouclées, sont les ID des modules Fibaro (Wall plug FGP111 / Dimmer FGD111). Elles sont séparées par des virgules - Le script va lire les valeurs d'une table dans une boucle : "for i = 1, #wallplug do" par exemple - Ces valeurs sont utilisées dans les commandes : "fibaro:getValue" - "tonumber" permet de changer le type de variable de "caractères à "nombre" - la variable "request" recueille le message à envoyer : une concaténation de textes et de variable - les deux lignes suivantes permettent d'envoyer le message par l'outil "Prowl" que j'expliquerai dans un futur post fibaro:setGlobal('pushnotification', request); fibaro:call(46, "pressButton", "3"); -- Message Prowl Voilà donc un premier post à propos de LUA Et n'hésitez pas dans vos remarques ! --[[ %% properties %% globals --]] wallplug = {6, 67, 68, 69} -- id des wallplugs interrupteur = {22, 50, 51, 87} -- id des interrupteurs local startSource = fibaro:getSourceTrigger(); local bconso = 0 -- contrôle wall plug for i = 1, #wallplug do local wallplugname = fibaro:getName(wallplug[i]); local request -- contrôle si conso supérieure à 1W (halogène consomme 0.5 à l'arrêt) if (tonumber(fibaro:getValue(wallplug[i], "valueSensor")) > 1) then -- remplace les espaces par des %20 pour que cela puisse être interprété dans une URL wallplugname = string.gsub(wallplugname, " ", "%%20") request = 'La%20lampe%20'..wallplugname..'%20est%20allumée'; fibaro:debug(request); fibaro:setGlobal('pushnotification', request); fibaro:call(46, "pressButton", "3"); -- Message Prowl bconso = 1 fibaro:sleep(2000); end end -- contrôle interrupteurs for i = 1, #interrupteur do local interrupteurname = fibaro:getName(interrupteur[i]); local request if (tonumber(fibaro:getValue(interrupteur[i], "value")) > 0) then -- remplace les espaces par des %20 pour que cela puisse être interprété dans une URL interrupteurname = string.gsub(interrupteurname, " ", "%%20") request = 'La%20lampe%20'..interrupteurname..'%20est%20allumée'; fibaro:debug(request); fibaro:setGlobal('pushnotification', request); fibaro:call(46, "pressButton", "3"); -- Message Prowl bconso = 1 fibaro:sleep(2000); end end if (bconso == 0) then request = "Aucune%20lampe%20n'est%20allumée"; fibaro:debug(request); fibaro:setGlobal('pushnotification', request); fibaro:call(46, "pressButton", "3"); -- Message Prowl end
-
Mon expérience date d'octobre 2013 : J'ai dà» procéder au remplacement de ma box et je ne souhaitais pas repasser sur tous mes modules déjà installés ! Mon fournisseur m'a proposé de m'adresser une nouvelle box que j'ai payée et à réception de l'ancienne il m'a remboursé J'avais donc procédé à la sauvegarde de mon ancienne configuration sur la clé USB J'ai installé la nouvelle HC2 avec une version de firmware identique à l'ancienne box - j'ai sauvegardé la configuration sur la nouvelle clé USB J'ai évidemment arrêté ma nouvelle box et redémarré après avoir connecté mon ancienne clé usb Pas de souci pour récupérer ma dernière configuration, scènes, modules... sauf les icônes qui ne semblent donc pas sauvegardés sur la clé usb Après un nouvel arrêt, j'ai reconnecté ma nouvelle clé usb.... et si celle-ci était reconnue, impossible de faire une sauvegarde Avec l'accord du fournisseur, j'ai gardé l'ancienne clé usb et j'ai renvoyé l'ancienne Peut-être que le bug a été corrigé depuis ? J'ai également lu sur le forum Fibaro qu'un utilisateur ayant des soucis avec sa clé USB avait copié son contenu sur une clé usb et que cela fonctionnait .... à vérifier En conclusion, un transfert de configuration entre box HC2 est facilement réalisable
-
Bonjour Ce forum en français dédié à la Fibaro HC 2 est une bonne nouvelle pour moi... qui suit nul en anglais Je possède cette box depuis septembre 2013 et il s'agit de ma première expérience en domotique; je n'ai donc pas de base de comparaison. L'interface de la Fibaro HC2 est agréable et l'utilisation de blocs graphiques pour programmer une scène ou un module virtuel donne une impression de facilité. Mais le futur acheteur de cette box (et j'imagine pour les autres marques également) doit être averti : pour réellement utiliser tout le potentiel de la Fibaro HC2 il faut plonger dans l'écriture de quelques lignes de script (en Lua)... Mais je ne doute pas que ce forum nous aidera également sur ce point. J'apporterai ma petite expérience ici, car je conçois un forum comme un lieu d'entraide et non pour "y faire ses courses" Bien cordialement