Aller au contenu

Sakkhho

Membres confirmés
  • Compteur de contenus

    3 699
  • Inscription

  • Dernière visite

  • Jours gagnés

    17

Tout ce qui a été posté par Sakkhho

  1. oui c'est dommage, car bien pratique. J'en ai 1 et une 2nde aurait été pas de trop. tant pis
  2. un check toutes les 5mns serait suffisant à mon avis. c'est le pooling qu'il faut modifier c'est ca ? pollingMs = 5*60*1000 EDIT : ok, c'est bien ca. Peut être plus explicite sur le poste 1 , car au lieu de durée des traitements c'est plutôt intervalle d'interrogation du site waze Donc c 'est tout bon, reste juste le "parsing error" au lancement pour être nickel. merci encore
  3. oui bravo. J'avais le meme besoin mais pas réussi à faire en sorte qu'il évite le péage, donc l'alternative de calculer 3 itinéraires est top Edit : j'ai mis la scene en route mais j'ai un [DEBUG] 08:41:06: parsing error au debut, mais sans gêner l'executer de la scene tu sais dire ?
  4. ha oui pas cool, j'avais presque envie d'en prendre un autre pour l'étage. Ca veut dire plus de suivi du coup il faut basculer le Roowifi http://www.roowifi.com
  5. Right now it is hard to define some dead line for it. It depends what feedback we get from Beta which will be available before stable version. I suppose that it may take about one month.
  6. A ma question "Pouvez vous inclure les icônes dans les backups" La réponse du support. "We will introduce such possibility in near future. Probably next stable software version will provide you such feature" Donc ma question suivante a été : When is the next release ? Wait and see
  7. Sakkhho

    Fibaro Wall Plug

    mes wallplugs sont plutôt sur des lampes donc pas de risque chez moi la plus grosse charge c'est pour le lave linge, ca peut monter un peu mais sur une tres courte période
  8. Quand je suis passé en 4.110 j'ai eut une interface vide ... (mais à la différence de toi j'avais accès à l'interface) J'ai lancé le "recovery" - mais la box est passé dans un mode entre les 2 car tout est revenu, icones compris etc... mais c'etait la meme chose, GEA ok etc...
  9. Sakkhho

    Support Gea

    20 secondes non mais 30 oui du style ; je ne connais pas les fonctions du ZXT car j'ai en pas mais par exemple avec mes TT LC13 ca donne GEA.add({id["OUV_FENETRE_EMMA"],Chauffage}, 60, "Chauffage Emmma coupé", {{"function", function() fibaro:call(id["TT_CHAMBRE_EMMA"], "setTargetLevel",16) end}})
  10. Sakkhho

    Support Gea

    Perso Non, mon bouton à une scene dédiée pour 4 actions différentes.
  11. Sakkhho

    Plus de push :-)

    effectivement, c'est une bonne idée, ca éviter de modifier toutes ces scenes. d'ailleurs la scene de @Steven ne récupère pas ces ID, une amélioration?
  12. La TT est mal inclus c'est sur. j'en ai 8 chez moi et tout va bien Fait un reset usine Retirez une des piles, maintenez le bouton "point" enfoncé pendant 5 s environ, réinsérer la pile. ensuite Exclusion / Inclusion proche de la box Laisse bien le temps - au bout d'1 minutes tu peux réveiller la TT si tu est encore sans template, alors tu fais un reconfiguration complete (configuration par défaut)
  13. Sakkhho

    Northq Gaz

    Petit retour sur ce device après 1 semaine La donnée au compteur et la donnée remontée/calculée est presque 100% indique. donc je suis très satisfait. le VD du fofo officiel un peu modifié, et la remontée des données dans DOmocharts complete le tout (voir ma signature) Bref je conseil
  14. Ouch .... pas WAF du tout ca
  15. Sakkhho

    Support Gea

    local detection = GEA.add( {id["MOTION_ESCALIER"],{"Value-", id["DETECTEUR_LUX_ESCALIER"], 260}}, -1,"", {{"turnOn", id["ECL__ESCALIER"]}, {"RestartTask", extinction}})
  16. J'ai modifié le tuto en csq et rajouté 2-3 infos.
  17. Sakkhho

    Support Gea

    tu as bien mis l'id du motion dans l'entête ? car moi j'ai cette ligne et elle fonctionne tres bien GEA.add({id["MOV_ENTREE"],{"Value-", id["LUM_SALON"], 10},Soir}, 30, "#time# - Eclairage Salon", {{"Time", "17:00", "19:00"},{"turnOn",id["ECL_SALON_PHARE"]}}) -- Eclairaige Salon si Luminosité trop faible quand on rentre le soir edit : une parentheses de trop au debut sur ta ligne (que je t'ai donné)
  18. Sakkhho

    Support Gea

    tu rajouter la condition local detection = GEA.add( {{id["MOTION_ESCALIER"]},{"Value-", id["DETECTEUR_LUX_ESCALIER"], 260}, -1,"", {{"turnOn", id["ECL__ESCALIER"]}, {"RestartTask", extinction}})
  19. Sakkhho

    Support Gea

    reboot ton tel ou box...
  20. voici les étapes que j'ai suivi pour avoir le révélé de gaz du NorthQ dans Domocharts 1/ Via phpadmin, Dupliquer les tables Water, water_day, water_month, en gaz, gaz_day, gaz_month Passer la donnée value en décimale 5,2 et modifier les entrées de la table day et month de facon à avoir cela table gaz table gaz_day 2/ Modification index.php en rajoutant les lignes suivantes <option value="gaz">Gaz [m3] </option> --> <option value="gaz_day">Gaz [m3] (moyenne journalière)</option> --> <option value="gaz_month">Gaz [m3] (moyenne mensuelle)</option> --> 3/ Modification config.js en rajoutant {type:'gaz', title: "Consommation de gaz", yaxis: 'Gaz (m3)', tooltip: 'm3', min: 0}, {type:'gaz_day', title: "Historique de consommation de gaz (total journalier)", yaxis: 'Gaz (m3)', tooltip: 'm3', min: 0}, {type:'gaz_month', title: "Historique de consommation de gaz (total mensuel)", yaxis: 'Gaz (m3)', tooltip: 'm3', min: 0}, 4/ VD bouton device, rajouter local variables = { { ["type"] = "gaz", ["id"] = 7999, ["name"] = "Gaz", ["room"] = 11 -- Jardin } } "id" = un numero qui ne rentrera pas en conflit avec vos autres devices "room" = un id d'une piece de votre HC2 Ajouter dans le VD un nouveau bouton "Gaz" avec le code suivant -------------------------------------------------- -- Button : 7 => Gaz : -- Author : Lazer -- Version : 5.0 -- Date : Feb 2017 -------------------------------------------------- -- User Global Variables local variables = { { ["type"] = "gaz", ["id"] = 7999, ["name"] = "gasHour" } } -- System variables local debug = false local selfID = fibaro:getSelfId() local ip = fibaro:get(selfID, 'IPAddress') local port = fibaro:get(selfID, 'TCPPort') local NAS = Net.FHttp(ip, tonumber(port)) local erreur = 0 local sensors = {} -- Send data to NAS (SQL DB) function SendDataNAS (datas) if debug then fibaro:debug(json.encode(datas)) end if #datas > 0 then local payload = "/graph/data_post.php" local response, status, errorCode = NAS:POST(payload, json.encode(datas)) if tonumber(errorCode) == 0 and tonumber(status) == 200 and response ~= nil and response ~= "" then jsonTable = json.decode(response); if jsonTable.success ~= true then erreur = erreur + 1 fibaro:debug('<span style="display:inline;color:red;">Error '..(jsonTable.error and jsonTable.error.code or "???")..' : '..(jsonTable.error and jsonTable.error.message or "???")..'</span>') elseif debug then fibaro:debug('<span style="display:inline;color:green;">OK : '..(jsonTable.rowcount or "???")..' lines inserted in DB</span>') end else erreur = erreur + 1 fibaro:debug('<span style="display:inline;color:red;">Error : Can not connect to NAS, errorCode='..errorCode..', status='..status..', payload='..payload..', response='..(response or "")..'</span>') end end end -- Get HC2 software version local HC2 = Net.FHttp("127.0.0.1", 11111) payload = "/api/settings/info" response, status, errorCode = HC2:GET(payload) if tonumber(errorCode) == 0 and tonumber(status) == 200 and response ~= nil and response ~= "" then jsonTable = json.decode(response) if tonumber(jsonTable.softVersion) >= 4 then version = 4 else version = 3 end if debug then fibaro:debug("v"..version) end end -- Get User Variable list (updated from FHEM through API) datas = nil local datas = {} for i = 1, #variables do payload = "/graph/data_post_" .. variables[i].type .. ".php?id=" .. variables[i].id .. "&value=" .. fibaro:getGlobalValue(variables[i].name) datas[#datas+1] = {} datas[#datas].id = variables[i].id datas[#datas].timestamp = 'NULL' datas[#datas].type = variables[i].type datas[#datas].value = fibaro:getGlobalValue(variables[i].name) end -- Send data to NAS SendDataNAS(datas) if erreur > 0 then fibaro:log("Erreur") else fibaro:log("Gas uploaded") end 5/ Ensuite il faut modifier la scene graph en modifiant la partie suivante -- Actions to perform every new hour local newhour = os.date('%H') if newhour ~= hour then fibaro:debug('New hour') fibaro:call(VirtualDeviceID, "pressButton", "7"); -- Gaz 6/ data_post.php, rajouter case 'gaz': if ($timestamp) { $SQLqueries[$type] = 'INSERT IGNORE INTO domotique_'.$type.' (time, device_id, value) VALUES '; $SQLvalues[$type]['timestamp'.$key] = $timestamp; $SQLvalues[$type]['id' .$key] = $id; $SQLrows[$type][] = '(FROM_UNIXTIME(:timestamp'.$key.'),:id'.$key.',:value'.$key.')'; } elseif ($date) { //$SQLqueries[$type] = 'INSERT INTO domotique_'.$type.'_day (date, device_id, value) VALUES '; $SQLqueries[$type] = 'INSERT IGNORE INTO domotique_'.$type.'_day (date, device_id, sum_value) VALUES '; $SQLvalues[$type]['date'.$key] = $date; $SQLvalues[$type]['id' .$key] = $id; $SQLrows[$type][] = '(:date'.$key.',:id'.$key.',:value'.$key.')'; } else throw new Exception('No date value for gaz data type', 7); if ( isset($row->value) && is_numeric($row->value) ) $SQLvalues[$type]['value'.$key] = $row->value; else throw new Exception('Invalid JSON data', 5); break; 7/ Data_get.php rajouter dans la partie "day" elseif ( $type == 'gaz_day' ) $query = 'SELECT UNIX_TIMESTAMP(date)*1000 AS time, sum_value FROM domotique_'.$type.' WHERE device_id = :device ORDER BY time'; et dans la partie "month" elseif ( $type == 'gaz_month' ) $query = "SELECT UNIX_TIMESTAMP(CONCAT(year,'-',month,'-01 00:00:00'))*1000 AS time, sum_value FROM domotique_".$type.' WHERE device_id = :device ORDER BY time'; 8/ et enfin dans le generate_trends.php rajouter //*** Gaz $bdd->prepare(" INSERT INTO domotique_gaz_day (date, device_id, min_value, sum_value, max_value) SELECT DATE(time) AS date, device_id as device_id, MIN(value) AS min_value, SUM(value) AS sum_value, MAX(value) AS max_value FROM domotique_gaz WHERE DATE(time) > ( SELECT COALESCE(MAX(`date`), '0001-01-01') FROM domotique_gaz_day ) AND DATE(time) < CURDATE() GROUP BY date, device_id ")->execute(); $bdd->prepare("DELETE FROM domotique_gaz WHERE DATE(time) < SUBDATE(CURDATE(), 21)")->execute(); $bdd->prepare("OPTIMIZE TABLE domotique_gaz")->execute(); $bdd->prepare(" INSERT INTO domotique_gaz_month (year, month, device_id, min_value, min_day_value, sum_value, max_day_value, max_value) SELECT YEAR(DATE), MONTH(date), device_id, MIN(min_value), MIN(avg_value), SUM(avg_value), MAX(avg_value), MAX(max_value) FROM domotique_gaz_day WHERE date > (SELECT COALESCE(MAX(LAST_DAY(STR_TO_DATE(CONCAT(year,',',month,',',1),'%Y,%m,%d'))), '0001-01-01') FROM domotique_gaz_month) AND date < DATE_FORMAT(CURRENT_DATE, '%Y/%m/01') GROUP BY YEAR(DATE), MONTH(date), device_id ")->execute(); 9/ Importer le VD ci dessous (credit JOOMBA sur le fofo officiel) que j'ai modifié/simplifié à ma sauce suffit de mettre l'ID du northQ dedans, et le champ IP de la HC2 "127.0.0.1" 10/ Enfin GEA ... GEA.add(true , 60, "",{{"VirtualDevice", id["CONSOMMATION_GAZ"], 5},{"Repeat"}}) -- Remontée Conso Gaz Merci à Lazer. VD : Consommation_Gaz.vfib
  21. bon j'ai regardé un peu partout je comprends pas pourquoi j'arrive pas à affiche le graph_day comment je vois ce qu'il va chercher; car est ce qu'il tenterait de prendre le graph_month ? c'était ta remarque de l'autre jour quand j'avais une erreur dans la console tu disais, tu tente d'afficher le graph-day alors que c'était le celui du jour donc si ici je tente de plotter gprah_month, ca expliquerai qu'il y a rien car j'ai pas de values dans la table ...
  22. Toujours un truc que j ai du mal à comprendre. Il t a semblé hier que je voulais affiché gaz_day mais ç était gaz J ai quand même fait la modif dans le get data et ç était ok. Donc j ai du mal à saisir.
  23. oué c'est la ou je comprends plus; cf discussion d'hier j'avais deja ca dans le get data.php //*** Get data if ( isset($_GET['query']) && $_GET['query']=='dataserie' ) { $type = filter_input(INPUT_GET, 'type', FILTER_SANITIZE_STRING); $device = filter_input(INPUT_GET, 'device', FILTER_SANITIZE_NUMBER_INT); if (substr($type, -4) == '_day') { if ( $type == 'gaz_day' ) $query = 'SELECT UNIX_TIMESTAMP(date)*1000 AS time, sum_value FROM domotique_'.$type.' WHERE device_id = :device ORDER BY time'; if ( $type == 'water_day' ) $query = 'SELECT UNIX_TIMESTAMP(date)*1000 AS time, sum_value FROM domotique_'.$type.' WHERE device_id = :device ORDER BY time'; mais ca marche pas la console JS Load data from type : gaz_day graph.js:176 Load data from device : 0 7999,Gaz Jardin, graph.js:34 Courbe Gaz Jardin: type = line graph.js:57 Chart loaded graph.js:141 display chart 192.168.0.91/:1 Error in event handler for (unknown): TypeError: Cannot read property 'database' of undefined at chrome-extension://dbpclfjlnaeaejebnjdeadlafkmkldgl/contentscript.bin.js:500:33
  24. bon alors petit retour sur la partie gaz_day j'ai bien les données dans la table gaz_day (2 données) mais la somme est ok par contre sur l'affichage j'ai un page blanche - j'ai pas le please wait, mais juste le titre, gaz en ordonnée et une ligne en abscisse mais pas mes données grave docteur ?
×
×
  • Créer...