pilou87 Posté(e) le 9 février 2016 Auteur Signaler Posté(e) le 9 février 2016 C'est ok àprésent, j'avais installé une protection sans le vouloir,sur mon hébergement php ovh, et grace aux idées de Krikroff,j'ai solutionné le problème.
ebtjjn Posté(e) le 19 août 2017 Signaler Posté(e) le 19 août 2017 (modifié) Salut, je ne comprends pas mais j'ai un souci depuis quelques temps sur ce module qui fonctionnait effectivement à merveille jusqu'alors... Je ne m'inquiétais pas car nous étions en été... "j'avais le temps"... j'ai essayé de voir ce qui ne fonctionnait pas et je ne trouve pas. Pouvez vous m'aider svp ? Le diagnostic : le décompte des jours fonctionne toujours bien je crois : auj, il m'indique 84 jours bleus restants, 0 blanc, 0 rouge. Le pbe est sur les étiquettes "aujourd'hui" et "demain" qui indiquent : "userdata : (nil)". Le débug met : ERROR : line log("Acquisition en cours...")..."]:24 Ligne 24 , j'ai ça : local s = json.decode(result); Je comprends que userdata n'a pas de valeur mais j'ai cherché et pas trouvé... :-( pbe avec JSON ? là, je suis perdu... Pour info, j'ai changé de version pour passer en 4.130 il y a qqes temps mais je ne sais pas si ça a un rapport... Un de vous peut m'éclaircir svp ? Le code du bouton : fibaro:log("Acquisition en cours ...") --****************************************** -- EDF TEMPO -- -- Gestion mode énergie Bleu / Blanc / rouge -- Octobre 2015 - Jean-François CANE --****************************************** local Now = 'x'; local Tomorrow = 'x'; local TotalBleu = 'x'; local RestantBleu = 'x'; local TotalBlanc = 'x'; local RestantBlanc= 'x'; local TotalRouge = 'x'; local RestantRouge= 'x'; local iconBLEU = 19 local iconBLANC = 20 local iconROUGE = 77 local HC2 = Net.FHttp("irisnet.fr",80); local result = HC2:GET("/api/edf-tempo.php?Mode=TEMPO&Key=fibaro"); fibaro:sleep(2000); local s = json.decode(result); Now = s.TempoJour; Tomorrow = s.TempoDemain; TotalBleu = s.TotalBleu; RestantBleu = s.RestantBleu; TotalBlanc = s.TotalBlanc; RestantBlanc= s.RestantBlanc; TotalRouge = s.TotalRouge; RestantRouge= s.RestantRouge; fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Now.value", Now); fibaro:call(fibaro:getSelfId(), "setProperty", "ui.Tomorrow.value", Tomorrow); fibaro:call(fibaro:getSelfId(), "setProperty", "ui.InfoJourBleu.value", RestantBleu .. '/' .. TotalBleu); fibaro:call(fibaro:getSelfId(), "setProperty", "ui.InfoJourBlanc.value", RestantBlanc .. '/' .. TotalBlanc); fibaro:call(fibaro:getSelfId(), "setProperty", "ui.InfoJourRouge.value", RestantRouge .. '/' .. TotalRouge); -- Traitement des valeurs du JOUR local ValeurJour = 0; if ( Now == "ND") then ValeurJour = 0; fibaro:setGlobal("EdfTempoJour", 0); end if ( Now == "BLEU") then ValeurJour = 1; fibaro:setGlobal("EdfTempoJour", 1); fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", iconBLEU); end if ( Now == "BLANC") then ValeurJour = 2; fibaro:setGlobal("EdfTempoJour", 2); fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", iconBLANC); end if ( Now == "ROUGE") then ValeurJour = 3; fibaro:setGlobal("EdfTempoJour", 3); fibaro:call(fibaro:getSelfId(), "setProperty", "currentIcon", iconROUGE); end fibaro:debug('ValeurJour: '..ValeurJour); -- Traitement des valeurs de DEMAIN local ValeurDemain = 0; -- Transformation des variable if ( Tomorrow == "ND") then ValeurDemain = 0; fibaro:setGlobal("EdfTempoDemain", 0); end if ( Tomorrow == "BLEU") then ValeurDemain = 1; fibaro:setGlobal("EdfTempoDemain", 1); end if ( Tomorrow == "BLANC") then ValeurDemain = 2; fibaro:setGlobal("EdfTempoDemain", 2); end if ( Tomorrow == "ROUGE") then ValeurDemain = 3; fibaro:setGlobal("EdfTempoDemain", 3); end fibaro:debug('ValeurDemain :'..ValeurDemain); Modifié le 19 août 2017 par ebtjjn 1
ebtjjn Posté(e) le 23 août 2017 Signaler Posté(e) le 23 août 2017 c'est les vacances ici... :-) Un spécialiste du json decode pourrait-il m'aider svp ? :-)
pepite Posté(e) le 23 août 2017 Signaler Posté(e) le 23 août 2017 Bonjour, Et oui, le mois d'août, vive les vacances ;-) Le 19/08/2017 à 12:34, ebtjjn a dit : ERROR : line log("Acquisition en cours...")..."]:24 T'as essaye de commente la ligne fibaro:log ? sinon tu récuperes un json ou pas ? sous local s = json.decode(result) mets fibaro:debug (s) pour vérifier si tu récupères bien le json.
ebtjjn Posté(e) le 23 août 2017 Signaler Posté(e) le 23 août 2017 Salut Pepite, merci de ton aide. Malheureusement, ni l'un ni l'autre ne fonctionnent --> toujours le même message d'erreur. J'ai mis la partie ci-dessous dans une scène local HC2 = Net.FHttp("irisnet.fr",80); local result = HC2:GET("/api/edf-tempo.php?Mode=TEMPO&Key=fibaro"); fibaro:sleep(2000); local s = json.decode(result); et ça donne ça en debug... : [DEBUG] 15:01:54: line 8: attempt to index global 'Net' (a nil value) Ca te/vous parle ??
pepite Posté(e) le 23 août 2017 Signaler Posté(e) le 23 août 2017 Un peu ;-) Tu es dans une scene ou dans un VD ?
ebtjjn Posté(e) le 23 août 2017 Signaler Posté(e) le 23 août 2017 Mon dernier message, c'est dans une scène. Sinon, mon "vrai" problème, c'est dans un VD (le message initial)
pepite Posté(e) le 23 août 2017 Signaler Posté(e) le 23 août 2017 Si ton dernier message est dans une scène, le Net.FHttp ne fonctionne pas. D'où l'erreur. Cela ne fonctionne que dans un VD. ajoute le fibaro:debug(s) dans le bouton du VD qui correspond.
ebtjjn Posté(e) le 24 août 2017 Signaler Posté(e) le 24 août 2017 Intégré ça : local HC2 = Net.FHttp("irisnet.fr",80); local result = HC2:GET("/api/edf-tempo.php?Mode=TEMPO&Key=fibaro"); fibaro:sleep(2000); local s = json.decode(result); fibaro:debug(s) dans un bouton d'un VD (et rien mis dan le main loop); en debug, ça donne ça comme message d'erreur : [ERROR] 11:30:50: line 5: Expected value but found invalid token at character 1 Ligne 5, c'est la ligne : local s = json.decode(result)
pilou87 Posté(e) le 24 août 2017 Auteur Signaler Posté(e) le 24 août 2017 (modifié) Bonjour, J'ai la même erreur sur mon propre développement. :-( Je reviens vers vous dés que j'ai trouvé d'ou provient l'erreur JSON. C'est le parse json de Fibaro qui a du changé. J'ai déjà recontré cela sur des requêtes ajax jquery. Je regarde... Modifié le 24 août 2017 par pilou87
ebtjjn Posté(e) le 24 août 2017 Signaler Posté(e) le 24 août 2017 Je suspecte une modif dans une mise à jour logicielle de la HC2... ... mais j'y connais pas grand chose... :-)
pepite Posté(e) le 24 août 2017 Signaler Posté(e) le 24 août 2017 Ou pas, vus êtes sur que l'API cote edf n'a pas changé ? Vous l'atteignez directement depuis un navigateur ?
ebtjjn Posté(e) le 3 septembre 2017 Signaler Posté(e) le 3 septembre 2017 Alors pilou 87, tu patauges, tu progresses ou tu procrastines ?
Stéphane D Posté(e) le 17 septembre 2017 Signaler Posté(e) le 17 septembre 2017 Bonjour tout le monde. Je rencontre le même problème concernant ce VD. Avez vous trouvé la solution? Merci de votre aide.
ebtjjn Posté(e) le 17 octobre 2017 Signaler Posté(e) le 17 octobre 2017 (modifié) Salut, pas de réponse de @pilou87... Je l'ai relancé par mp mais pas de réponse non plus... :-( Est-ce qu'une âme charitable (mais surtout qq'un de suffisamment pointu!! :-P) pourrait nous donner un coup de pouce sur le sujet...??? L'hiver est là... (tiens ça me rappelle quelque chose...) Merci d'avance pour nos factures d'électricité !! :-) Modifié le 17 octobre 2017 par ebtjjn
pepite Posté(e) le 17 octobre 2017 Signaler Posté(e) le 17 octobre 2017 (modifié) Bonjour, Suis pas assez pointu, mais ceci te dit-il quelquechose ? C'est bien ce que tu souhaites avoir ? { "success":true, "TempoJour":"BLEU", "TempoDemain":"BLEU", "TotalBleu":300, "RestantBleu":293, "TotalBlanc":43, "RestantBlanc":43, "TotalRouge":22, "RestantRouge":22, "MonEmail":"jfcane@lc-network.fr" } je l'ai eu comme ceci dans un navigateur http://www.irisnet.fr/api/edf-tempo.php?Mode=TEMPO&Key=fibaro Modifié le 17 octobre 2017 par pepite
pilou87 Posté(e) le 17 octobre 2017 Auteur Signaler Posté(e) le 17 octobre 2017 Bonjour, je suis encore désolé de ne pas avoir répondu plus tôt à ces posts, mais je suis accaparé (et à fond) sur un logiciel de caisse en ligne et comme nous n'avons pas encore démarré le tempo blanc / rouge je ne me suis pas encore 'agacé' sur les routines EDF. Promis, juré, je m'en occupe bientôt. Effectivement des variantes ont été apportées suite au mise à jour de la HC2, mais je n'ai pas eu encore le temps de me plonger sur le problème. En tout cas je vais m'y mettre car cela me pose également un problème sur un dialogue entre la HC2 et un autre système que j'ai ( INDIGO sur MAC) 1
ebtjjn Posté(e) le 3 décembre 2017 Signaler Posté(e) le 3 décembre 2017 (modifié) Hello, @pepite : 1- je n'arrive pas à faire fonctionner la requête que tu indiques dans mon navigateur : message d'erreur "Internal serveur error : Please contact the server administrator at postmaster@www.irisnet.fr ". Pilou87 avait bien indiqué que c'était un pbe qu'il pensait pouvoir régler. 2- même si la requête fonctionnait je ne saurais pas comment récupérer les infos en lua... :-) Je refais donc appel aux bonnes âmes : pour m'aider/nous aider (je ne suis pas le seul j'imagine non?) Même une autre solution (si pas trop compliquée et que je trouvais ce VD juste parfait !) m'intéresse !! Des avis ? Modifié le 3 décembre 2017 par ebtjjn message initial incomplet
pepite Posté(e) le 4 décembre 2017 Signaler Posté(e) le 4 décembre 2017 Bonjour, C'est sur son serveur perso. Il doit y avoir un problème ou peut-etre l-a-t-il tout simplement éteint. Sinon, je n'ai pas recherché mais pas d'API pour ENGIE ?
Did Posté(e) le 4 décembre 2017 Signaler Posté(e) le 4 décembre 2017 Quel rapport avec Engie? Ce ne serait pas plutôt Enedis (ou Edf)?
pepite Posté(e) le 4 décembre 2017 Signaler Posté(e) le 4 décembre 2017 ah oui, me suis trompe ;-) lol
ebtjjn Posté(e) le 4 décembre 2017 Signaler Posté(e) le 4 décembre 2017 J'ai trouvé ça mais je n'ai aucune idée si cela est faisable...!! http://www.touteladomotique.com/forum/viewtopic.php?f=18&t=14699&start=144 Autant côté LUA je passe du temps à chercher mais quand il s'agit de json, je suis perdu.... (je n'ai pas encore compris ce que c'était le json et son fonctionnement... )
pepite Posté(e) le 5 décembre 2017 Signaler Posté(e) le 5 décembre 2017 (modifié) Bonjour, Le json est un format de fichier qui permet de stocker des données sous forme très lisible par un humain et une machine ;-) En LUA tu peux lire un fichier au format json. C'est assez simple (enfin, moi je galere des qu'l y a des tableaux dans le json, faut rajouter des chiffres pour le num du tableau mais c'est faisable ) Regarde a quoi cela ressemble avec ceci : https://codebeautify.org/online-json-editor Est-ce que ces URL sont mises à jour ? https://particulier.edf.fr/bin/edf_rc/servlets/ejptemponew?Date_a_remonter=2017-12-05&TypeAlerte=TEMPO https://particulier.edf.fr/bin/edf_rc/servlets/ejptempodaysnew?TypeAlerte=TEMPO https://particulier.edf.fr/services/rest/referentiel/historicTEMPOStore?dateBegin=2016&dateEnd=2017 Est-ce que cela correspond ? Si oui en LUA depuis une scène : il faut passer par un Net.HTTPClient() :-) Tu vas pouvoir faire des recherches LUA ;-) il y a plein d'exemples sur le forum. je te trouve ca http = net.HTTPClient() http:request("http://"..ipaddress..":"..port.."/"..zonename.."/stop", { options = { method = 'GET' }, success = function(p) fibaro:debug(p.status) fibaro:debug(p.data) end, error = function(err) fibaro:debug(err) end }) Modifié le 5 décembre 2017 par pepite
Did Posté(e) le 5 décembre 2017 Signaler Posté(e) le 5 décembre 2017 il y a 15 minutes, pepite a dit : Est-ce que ces URL sont mises à jour ? https://particulier.edf.fr/bin/edf_rc/servlets/ejptemponew?Date_a_remonter=2017-12-05&TypeAlerte=TEMPO https://particulier.edf.fr/bin/edf_rc/servlets/ejptempodaysnew?TypeAlerte=TEMPO https://particulier.edf.fr/services/rest/referentiel/historicTEMPOStore?dateBegin=2016&dateEnd=2017 Est-ce que cela correspond ? Les données retournées par le deuxième lien sont bonnes. PARAM_NB_J_BLEU 211 PARAM_NB_J_BLANC 38 PARAM_NB_J_ROUGE 20
pepite Posté(e) le 5 décembre 2017 Signaler Posté(e) le 5 décembre 2017 Merci @Did Qu'est-ce ? Le nombre de jours restants ?
Messages recommandés