Aller au contenu
flacon030

Eco-Divice Highcharts Requette

Recommended Posts

Bonjour a tous

 

J'avais installer graphique conso électrique teleinfo EDF avec Highcharts Et si mes souvenirs sont bon notre HC2 fait une requette a intervalle régulier pour interroger l'eco-divice pour envoyer les donner a une base MYSQL

Mais plus moyen de trouver le tuto qui permet de faire cette action

Merci de bien vouloir m'aider.

Partager ce message


Lien à poster
Partager sur d’autres sites

Hello perso j'ai fait un modul virtuel et GEA vient le clicher toute les 30 secondes mais je les envoie sur téléinfo-ed et pas sur domochartpost-1332-0-94948800-1468155612_thumb.png

Si ça peut t'aider

Partager ce message


Lien à poster
Partager sur d’autres sites

Merci c'est bien se que cherchais.

Petit probleme ma base mysql ne semble pas se remplir?

Partager ce message


Lien à poster
Partager sur d’autres sites

petit doute

la première ligne de code c'est pour l'adresse ip de l'eco-divice ou pour le NAS?

------------------------------------------------------------------------
-- NAME: Eco-Device-fibaro
-- AUTHOR: Zebk http://www.eb-home.eu
-- DATE  : 14/07/2013
-- COMMENT: Déclencher à  intervalle réguilier le stockage des données de
-- l'Eco-Device dans une base mySQL
------------------------------------------------------------------------

HC2 = Net.FHttp("192.168.1.9"), 8099
response = HC2:GET("/teleinfo-ed/ecod2sql.php")
local d = os.date("%Y-%m-%d %H:%M:%S",os.time())
    i = 1
while i  <= 120 do
fibaro:log("appel "..d)
fibaro:sleep(1000);
    i = i + 1
end
Modifié par flacon030

Partager ce message


Lien à poster
Partager sur d’autres sites

bon cela ne fonctionne toujours pas

J'ai ce message

Comment créer la base mysql?

Je pense que l'erreur est de ce coté.

jsontimestp = 1472313503, rec_date=20160827, rec_time=235823, T1_PTEC='HP', T1_PAPP=950, T1_HCHP=27597138, T1_HCHC=31524475, T1_BASE=0, T2_PTEC='--', T2_PAPP=0, T2_HCHP=, T2_HCHC=, T2_BASE=0, INDEX_C1=0, CUMUL_C1=0, INST_C1=0, INDEX_C2=0, CUMUL_C2=0, INST_C2=0Erreur dans la requète INSERT INTO teleinfov3 SET timestp = 1472313503, rec_date=20160827, rec_time=235823, T1_PTEC='HP', T1_PAPP=950, T1_HCHP=27597138, T1_HCHC=31524475, T1_BASE=0, T2_PTEC='--', T2_PAPP=0, T2_HCHP=, T2_HCHC=, T2_BASE=0, INDEX_C1=0, CUMUL_C1=0, INST_C1=0, INDEX_C2=0, CUMUL_C2=0, INST_C2=0 : 

Partager ce message


Lien à poster
Partager sur d’autres sites

je suis toujours a la recherche d'une solution si une personne pouvais m'aider.

Merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Je viens enfin de trouver le problème

Si vous n'utilisez par la 2éme entrée compteur de l'eco divice, le code qui se trouve dans le fichier ecod2sql.php doit être modifié.

En effet en ne câblant pas l'entrée deux de l'eco divice la base mysql attend une valeur, or il n'y a rien si l'entrée n'est pas cablé

 

$result=mysqli_query($link, $query) or die ("<b>Erreur</b> dans la requète <b>" . $query . "</b> : "  . mysqli_error());

if ($tarif_type =='BASE') {
  $T1_HCHP=0;
  $T1_HCHC=0;
  $T2_HCHP=0;
  $T2_HCHC=0;
} else {
  $T1_BASE=0;
  $T2_BASE=0;
  // si T2 actif commenter les deux lignes
  //print " inside HCHP";
  $T2_HCHP=0;
  $T2_HCHC=0;
}  

 

Modifié par flacon030

Partager ce message


Lien à poster
Partager sur d’autres sites

C'est un très vieux bug il me semble, tu es certain que tu as le dernier firmware de l'Eco Devices ?

Partager ce message


Lien à poster
Partager sur d’autres sites

oui je suis bien avec la dernière version sur mon eco divice

Mais je n'ai peut être pas la dernière version de teleinfo-ed

Modifié par flacon030

Partager ce message


Lien à poster
Partager sur d’autres sites

Apparemment, le dernière version c'est en novembre 2014, pas tout jeune :

http://www.eb-home.eu/blog-eb/graphiques-pour-eco-device-tutorial

 

 

De mon coté ça tourne sans problème depuis 3 ans, au début j'avais fait les mises à jour, mais je n'y ai pas touché depuis très longtemps, je serai bien incapable de remettre le nez dans le code maintenant.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

c'est bien celle que j'ai recupéré

Le principal c'est d'avoir trouvé une solution

Pour ceux qui serait dans le même cas que moi il suffit de modifier juste ces deux lignes

 

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai besoin d'aide, mon HC2 ayant rendu l'âme après 7 ans de bon et loyaux services, je viens de recevoir ma HC3 et je voulais refaire ma scène qui alimentait mes graphes de Conso, mais comme ça fait des année que je n'ai pas remis le nez dedans, j'ai des gros doutes sur la compatibilité Lua du script :

------------------------------------------------------------------------
-- NAME: Eco-Device-fibaro
-- AUTHOR: Zebk http://www.eb-home.eu
-- DATE  : 14/07/2013
-- COMMENT: Déclencher à  intervalle réguilier le stockage des données de
-- l'Eco-Device dans une base mySQL
------------------------------------------------------------------------

HC2 = Net.FHttp("192.168.1.9"), 8099
response = HC2:GET("/teleinfo-ed/ecod2sql.php")
local d = os.date("%Y-%m-%d %H:%M:%S",os.time())
    i = 1
while i  <= 120 do
fibaro:log("appel "..d)
fibaro:sleep(1000);
    i = i + 1
end

Quelqu'un pourrais m'aider pour l'adapter à la HC3 ?

 

D'avance merci

Partager ce message


Lien à poster
Partager sur d’autres sites

Sur la HC3, que ça soit pour les QuickApps ou pour les scènes, il faut utiliser net.HTTPClient() comme c'était déjà le cas pour les scènes sur la HC2

 

Voir la doc officielle : https://manuals.fibaro.com/home-center-3-quick-apps/

 

Ou ce mini tuto que j'avais fait à l'époque sur HC2 :

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour @Lazer, ton code a pourtant l'air clair, mais je rame a mort (ça fait plus de 8 ans que j'ai pas toucher du code et là, j'ai l'impression d'être un gros neuneu). Je pense qu'il y a des choses que je n'ai pas compris. Je te mets un screenshot de ma scène :

 

local http = net.HTTPClient()
http:request("http://192.168.0.101/teleinfo-ed/ecod2sql.php", {
    success = function(response)
        if response.status == 200 then
            fibaro:debug('OK, réponse : '.. response.data)
        else
            fibaro:debug("Erreur : status=" .. tostring(response.status))
        end
    end,
    error = function(err)
        fibaro:debug("Erreur : " .. err)
    end,
    options = {
        method = 'GET'
    }
})
 
local d = os.date("%Y-%m-%d %H:%M:%S",os.time())
= 1
while i  <= 120 do
fibaro.log("appel "..d)
fibaro.sleep(1000);
    i = i + 1
end

 

Autre question, il y a moyen de déclencher la scène toutes les minutes ?

 

Merci pour ton temps et ton aide

 

Alain

Capture d’écran 2020-09-20 à 12.47.07.png

Partager ce message


Lien à poster
Partager sur d’autres sites

J'ai l'impression que tu mélanges un peu les fonctions LUA sur HC2 et sur HC3.

Prend bien le temps de lire les docs Fibaro, car plusieurs fonctions ont changé, il faut que tu adaptes tout ton code, pas uniquement l'appel HTTP.

Idem pour les boucles, il faut plus utiliser sleep, mais settimeout à la place

 

Et si tu préfères utiliser une scène plutôt qu'un QuickApp, c'est cette doc qu'il faut lire : https://manuals.fibaro.com/home-center-3-lua-scenes/

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer Merci de ton aide, du coup j'ai mis ça dans ma scène, ça à l'air de fonctionner, mais j'avoue qu'il va falloir que je creuse et que je prenne mes marque sur la HC3 (elle est quand même très différente de la hc2)

 

 

Capture d’écran 2020-09-20 à 13.46.15.png

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui c'est très différent, il y a du travail pour adapter tout le code LUA, mais c'est tellement plus puissant que le jeu en vaut le chandelle.

Partager ce message


Lien à poster
Partager sur d’autres sites

×