Moicphil Posté(e) le 29 janvier 2014 Signaler Posté(e) le 29 janvier 2014 Voila un super plugin pour les possesseurs d'une freebox V6 ! Vous connaissez tous l'auteur, puisqu'il est présent sur le forum...il s'agit de Krikroff ! Au passage, j'ai adoré la rédaction du sujet, présentation...etc. Je tiens personnellement à te féliciter pour le travail que tu fais pour les possesseurs d'une HC2. Nous t'attendons ici JC pour commenter ton plugin... Sans plus attendre...voici le lien de l'article : http://domotique-info.fr/2014/01/home-center-2-lua-freebox-avec-krikroff/ Note de mise à jour: Important, Veuillez lire le document Release_notes_v0.1.0.docx avant l'installation Version 0.0.7 - Notification par mail des nouveaux appels manqués (Date Heure + Numéro de téléphone + Nom). Pour activer la fonctionnalité il faut paramétrer dans le code la variable _userId avec l’ID d’utilisateur et mettre missedCalls à true.- Ajout de variables : Monitoring du DD interne : température, espace.- Modifications mineurs Version 0.0.8 - Modifications mineures- Ajout de variables pour utiliser les températures des sondes CPU et Switch depuis une scène.- Ajout d’une variable pour utiliser le Fan RPM depuis une scène.- Ajout d’une variable pour persister la version du Firmware et notifier d’un changement de version. Version 0.0.9 - Ajout de variables pour la détection de 2 périphériques Wi-Fi. Attention depuis iOS 6.xx les iPhones désactivent le Wi-Fi pendant la veille et sortent donc du réseau. Version 0.1.0 - Correction sur la mise à jour de l’ IHM en cas de remis à zéro de la liste des appels Version 0.1.1 - Dernière version disponible à ce jour, voir en page 11 : http://www.domotique-fibaro.fr/index.php/topic/328-plugin-freebox-v6/?p=101866
BenjyNet Posté(e) le 29 janvier 2014 Signaler Posté(e) le 29 janvier 2014 Oui tout àfait le type de gars que j'aime bien, le partage et non la competition, l'exclusivité. Je vais clairement dans ce sens, y compris dans les cours que je dispense tous les jours. Felicitation àtoi JC !
Krikroff Posté(e) le 30 janvier 2014 Signaler Posté(e) le 30 janvier 2014 Merci à tous les deux, vous êtes . Encore beaucoup de choses en tête après c'est le temps qui manque, si je pouvais tout faire ... Une nouvelle version est en cours de préparation (avec mise à jour du frameworks en v1.0.4) mais n’hésitez pas à proposer des améliorations. HS: Phil, est-il possible de créer un sondage: Votre F.A.I c'est qui ? Et vive le partage !
bbart Posté(e) le 30 janvier 2014 Signaler Posté(e) le 30 janvier 2014 Petit ajout personnel à ce super script (qui m'a permis de décommissioner l'équivalent PHP sur mon NAS !): Une fonction pour l'espace disque restant (je faisais ça avant en PHP avec une alerte quand il faut faire du ménage, genre en dessous de 20Go restant) : function GetDiskFreeBytes(enable) --Toolkit.Net.isTraceEnabled = true; local HttpClient = Toolkit.Net.HttpRequest(FreeboxObject._host, 80); HttpClient:setReadTimeout(1000); local response, status, errorCode = HttpClient:request("GET", "/api/v1/storage/disk/1", { "User-Agent: FibaroHC2/1.0", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3", "Accept-Encoding: deflate", "Accept-Charset: utf-8", "X-Fbx-App-Auth: "..FreeboxObject._sessionToken, "X-Fbx-App-Id: plugin.freebox.fibaro" }); HttpClient:disconnect(); HttpClient:dispose(); HttpClient = nil; --Toolkit.Net.isTraceEnabled = false; local _return = false; -- check for error if errorCode == 0 then if tonumber(status) == 200 then local jsonTable = json.decode(response); if (jsonTable.success == true ) then Tk:trace("Get Disk Storage Status with success"); FreeboxObject._diskFreeBytes = jsonTable.result or {}; _return = true; else Tk:trace("Get Disk Storage Status failed"); end else Tk:trace("status: "..status); end else Tk:trace("Communication error"); end return _return; end Bien penser à rajouter la variable _diskFreeBytes au début du script Freebox. Puis ce code à rajouter dans le main pour rafraîchir le label : if (GetDiskFreeBytes()) then fibaro:call(FreeboxObject._selfId, "setProperty", "ui.lblDisk.value", math.floor(FreeboxObject._diskFreeBytes.partitions[1].free_bytes/1000000000,2).." Go libres sur "..math.floor(FreeboxObject._diskFreeBytes.partitions[1].total_bytes/1000000000,2).." Go"); end Une autre fonction pour monitorer la °C de la freebox : function GetTemperatures() local payload = [[ {"db":"temp", "fields":["temp1", "temp2", "temp3"], "precision":10} ]]; --Toolkit.Net.isTraceEnabled = true; local HttpClient = Toolkit.Net.HttpRequest(FreeboxObject._host, 80); HttpClient:setReadTimeout(1000); local response, status, errorCode = HttpClient:request("POST", "/api/v1/rrd/", { "User-Agent: FibaroHC2/1.0", "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8", "Accept-Language: fr,fr-fr;q=0.8,en-us;q=0.5,en;q=0.3", "Accept-Encoding: deflate", "Accept-Charset: utf-8", "X-Fbx-App-Auth: "..FreeboxObject._sessionToken, "X-Fbx-App-Id: plugin.freebox.fibaro" },payload); HttpClient:disconnect(); HttpClient:dispose(); HttpClient = nil; --Toolkit.Net.isTraceEnabled = false; local _return = false; -- check for error if errorCode == 0 then if tonumber(status) == 200 then local jsonTable = json.decode(response); if (jsonTable.success == true ) then Tk:trace("Getting Temperatures with success"); FreeboxObject._temperatures = jsonTable.result or {}; _return = true; else Tk:trace("Getting Temperatures failed"); end else Tk:trace("status: "..status); end else Tk:trace("Communication error"); end return _return; end Et pareil pour la variable _temperatures ainsi que le rafraîchissement du label : if (GetTemperatures()) then fibaro:call(FreeboxObject._selfId, "setProperty", "ui.lblTemperatures.value", (FreeboxObject._temperatures.data[1].temp1/10)..", "..(FreeboxObject._temperatures.data[1].temp2/10)..", "..(FreeboxObject._temperatures.data[1].temp3/10).."°C"); end Bien sà»r il faut rajouter les label dans avec les ID lblDisk et lblTemperatures Voilà ! Ah oui et sinon Krikroff, "failed", il n'y a qu'un "l" !
Krikroff Posté(e) le 30 janvier 2014 Signaler Posté(e) le 30 janvier 2014 Salut bbart, merci pour la coquille (avec 2 "l") et merci pour cette contribution . Mais... C'est dommage j'ai déjà implémenté la température du HDD et l 'espace libre au périphérique virtuel, mais il était trop tard pour faire les modifications sur l'article de Sébastien. En revanche un membre du fofo ici, i-magin pour ne pas le nommer est bêta testeur du VD. Je tiens d'ailleurs à le remercier pour sa disponibilité et sa gentillesse: Merci JJ Voici une capture de la version dans l'état actuel mais d'autres choses sont aussi en cours...
Moicphil Posté(e) le 30 janvier 2014 Auteur Signaler Posté(e) le 30 janvier 2014 Ok, testé et...approuvé ! Au fait à quoi sert "wifi dev1" et "wifi dev2" ? Vous nous tenez au courant pour la prochaine release ?
Krikroff Posté(e) le 30 janvier 2014 Signaler Posté(e) le 30 janvier 2014 Il faut renseigner dans le code LUA l'adresse mac d'un périphérique wifi + un seuil d'inactivité (ici threshold), ensuite les boutons Wifi dev 1 et Wifi dev 2 permettent de vérifier si ces périphériques sont listés comme actifs ou pas (ex: smartphone, tablette, objet connecté). Dans la version à venir des variables globales serviront pour persister l'état. le code ressemble à cela: _wifiDevice = { { -- Wifi device #1 which can be searched mac = "60:FA:44:95:7B:22", threshold = 1200, lastActivity = 0 } } Tu seras le premier informé
Moicphil Posté(e) le 31 janvier 2014 Auteur Signaler Posté(e) le 31 janvier 2014 à‡a correspond à un "Ping" ou c'est différent ? Une idée pour une future release : Afficher le numéro du dernier appelant.
Krikroff Posté(e) le 31 janvier 2014 Signaler Posté(e) le 31 janvier 2014 Non ce n'est pas du ping c'est vraiment une interrogation de la liste des périphériques réseau (Wif-Fi ici les baux actifs) de la Freebox, en revanche toujours le problème avec IOS qui sort du réseau rapidement après une veille. Bonne idée l'affichage du dernier appelant .
jltthierry Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 Bonjour, J'essaye d'intégré ce modul, j'ai une erreur je pense de type 403 :
Moicphil Posté(e) le 6 février 2014 Auteur Signaler Posté(e) le 6 février 2014 Tu as bien renseigné l'adresse Ip de la freebox dans le VD?
Krikroff Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 L'adresse pour le freebox serveur c'est soit mafreebox.freebox.fr ou freebox-server.local ou l'adresse IP ... Bien vérifier si le plugin est autorisé sur la freebox
jltthierry Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 Bon, merci à vous de m'avoir répondu, mais a priori j'arrive toujours pas à me connecter au serveur. J'ai essayé les différentes adresse données ci-dessus, même l'IP que j'ai retrouvé dans les paramètres d'accès distant de ma freebox, avec ou sans port. J'ai mis ces adresse dans l'onglet Adresse IP : 78.247.6.** je suis retourné voir mes variables, mais j'ai rien trouvé...il doit y avoir un truc que j'ai dà» loupé.
Moicphil Posté(e) le 6 février 2014 Auteur Signaler Posté(e) le 6 février 2014 Remet les variables à0 et recommence du départ.
Krikroff Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 ...l'adresse en 78.xxx.xxx.xxx.xxx c'est ton adresse publique, il faut utiliser mafreebox.freebox.fr ou ton adresse en loc. qui doit être un truc comme 192.168.1.254 pour la freexbox. As tu vérifié depuis l'interface de la free si le plug est bien identifié ?
jltthierry Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 oui j'ai rectifier c'est bien 192.168.1.254, je vois bien le plugin , il me semble que j'ai bien validé sur l'écran de la box, mais sur l'interface pc ça me mets authentification en cours?
jltthierry Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 En fait c'est moi qui fait pas ce qu'il faut quand ca me demande la connection au serveur, àchaque fois je le loupe.
jltthierry Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 ok c'est fait, seulement rien ne s'affiche sur le module, aucunes données, il est bien reconnu par la freebox et j'ai bien activés toutes les options.
Krikroff Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 soit tu attends la loop ou simplement tu cliques sur la disquette pour enregistrer le VD histoire de le rafraichir...
jltthierry Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 ok Merci, beau boulot, çàfonctionne, prêt pour de nouvelles expériences, mais quel boulet je suis....qd même.
Krikroff Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 Super que ça marche ! En même temps c'est vrai que la procédure est un peu lourde, vivement les plugins de la V4, enfin j'espère... Bientôt une nouvelle release .
jltthierry Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 il suffirait simplement de dire on l'on met son Ip local de la freebox, dans le code Lua de "main loop" ainsi que la ligne. Car pour un débutant c'est pas évident. Un autre phénomène, sur iphone je ne vois toutes les données, elles sont partiellement masquées. Celles des données débit :
lolomail Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 Pour info un peu hors sujet car pas liée au plugin mais interessant: depuis le dernier firmware du freebox player, la commande power est envoyée àla TV via l'HDMI quand on allumer le player avec la télécommande, du coup en ayant un virtual device avec les commandes de la télécommande on peut envisager une petite scène pour le matin au ptit dej, style allume les lumières, fait chauffer l'eau, allumer la télé
BenjyNet Posté(e) le 6 février 2014 Signaler Posté(e) le 6 février 2014 Moi j'attends la freebox v7. Me faire payer 90€ pour avoir la révolution alors que je viens d'être dégroupé, ça me fait chier, surtout que Niel est dans les starting-blocks pour annoncer mieux qu'une révolution parait-il ! Krikroff je compte sur toi pour développer un plugin pour la v7 hein
Moicphil Posté(e) le 6 février 2014 Auteur Signaler Posté(e) le 6 février 2014 @Lolomail, on pouvait déjàfaire ça avec une TV compatible CEC il me semble...
Messages recommandés