[Store] Tempo EDF

Lecture des compteurs EDF avec téléinformation

Re: Tempo EDF

Messagepar anne-marie » 21 Août 2015 22:27

la même chose que toi si je coche "transformer le json en xml"
Netatmo - Nabaztag2 - Karotz - Mirror - caméras IP - Zwave - RFXCOM - zigate - ecodevice - Enocean - orvibo - connexoon- google Home - Echo - yeelight etc....
anne-marie
 
Messages : 2473
Inscription : 19 Fév 2014
Localisation : 77

Re: Tempo EDF

Messagepar baltimore » 15 Oct 2015 09:25

Bonjour,

Pour ma part je viens d'essayer de récupérer la couleur du jour est cela ne fonctionne pas :-(
Voici ce que j'ai fait :

Tempo1.JPG
Configuration 1
Tempo1.JPG (49.19 Kio) Consulté 43839 fois


Tempo2.JPG
Configuration 2
Tempo2.JPG (29.06 Kio) Consulté 43839 fois


Message d'erreur de parsing du XML :

Tempo3.JPG
Erreur
Tempo3.JPG (21.3 Kio) Consulté 43839 fois


Résultat du test XPath (même résultat quand je coche la case "Transformer le JSON en XML") :

Tempo4.JPG
Test
Tempo4.JPG (46.11 Kio) Consulté 43839 fois


Si quelqu'un a une idée de la source de l'erreur je pense que l'on est plusieurs à être intéressé par la solution ;-)

Merci d'avance pour vos réponses.

A+
Baltimore
Sante des femmes www.viagrasansordonnancefr.com pharmacie de Paris
baltimore
 
Messages : 101
Inscription : 12 Juin 2013

Re: Tempo EDF

Messagepar ded is red » 18 Oct 2015 10:43

Bonjour,
exactement la même erreur pour moi, je ne comprend pas pourquoi ça ne marche pas.
J'ai vu sur l'article de Djmomo qu'il comptait mettre à jour son script EJP-et-Tempo-infos.
Vivement qu'il le fasse...
ded is red
 
Messages : 45
Inscription : 24 Juin 2014

Re: Tempo EDF

Messagepar ded is red » 28 Oct 2015 12:23

Bonjour,

les réponses sont ici : http://www.touteladomotique.com/forum/viewtopic.php?f=18&t=14699&p=136673#p136673.
Voici les URL pour les utilisateurs EJP:
Informations EJP : https://particulier.edf.fr/bin/edf_rc/s ... Alerte=EJP
Jours écoulés EJP : https://particulier.edf.fr/services/res ... chType=ejp

Les valeurs retournées par le JSON pour les infos EJP sont : NON_EJP, EST_EJP, ND


Pour les utilisateurs tempo :
Informations tempo : https://particulier.edf.fr/bin/edf_rc/s ... erte=TEMPO
Jours restants tempo : https://particulier.edf.fr/bin/edf_rc/s ... erte=TEMPO
Historique tempo par année : https://particulier.edf.fr/services/res ... teEnd=2016
Les chemins Xpath sont:
JourJ1 pour la couleur du lendemain
PARAM_NB_J_ROUGE pour le nombre de jour rouge restant...changer la couleur pour les 2 autres.
Pensez à cocher changer JSON en XML dans les paramètres expert.

Certaines URL ont besoin d'une date actualisée. Il faut utiliser les variables je pense. J'aurais besoin d'aide car je n'ai pas trouvé comment mettre la date de demain dans l'URL Informations tempo : https://particulier.edf.fr/bin/edf_rc/s ... _remonter=[TOMORROW]&TypeAlerte=TEMPO;
La date doit être au format aaaa-mm-jj.
Merci pour votre aide
ded is red
 
Messages : 45
Inscription : 24 Juin 2014

Re: Tempo EDF

Messagepar titi007 » 23 Nov 2015 09:34

même problématique que ded is red, une aide pour mettre les dates à jour automatiquement ?
est ce que l'on peut passer avec les variables [DATE] ou bien passer par un script php ?
merci pour vos réponses ;)
titi007
 
Messages : 116
Inscription : 19 Oct 2014

Re: Tempo EDF

Messagepar ded is red » 11 Déc 2015 19:06

Bonsoir, voilà la solution que j'ai mis en place:
1. copier/coller le fichier 'datexml.php' suivant sur votre serveur (je pense que l'eedomus peux convenir ; c'est le premier code que j'écris, je sais que ce n'est rien mais c'était une petite victoire pour moi :D ) :
Code : Tout sélectionner
<?php
 
header('content-type:application/xml');
 
echo '<?xml version="1.0" ?>'; // pour eviter l'interpretation par php
?>
<aujourdhui>
<?php
echo date('Y-m-d');
?>
   
</aujourdhui>

Pour tester, appeler le fichier dans votre navigateur internet, normalement ça vous renvoie la date du jour.

2. Dans l'eedomus créer un capteur http :
Image
Relever le code API de ce capteur.
Associer une règle qui mettra ce capteur à jour 1fois par jour à 00:02 par exemple.

3. Créer le capteur HTTP "couleur tempo du lendemain" :
Image
Donc dans l'URL vu plus haut dans ce post (https://particulier.edf.fr/bin/edf_rc/s ... erte=TEMPO), remplacer la date par [LAST_VALUE PERIPH_ID=XXXXXX] en remplaçant les X par le code API du capteur donnant la date.

Créer une règle mettant à jour ce capteur 1 fois par jour entre 11h et midi et le tour est joué.
ded is red
 
Messages : 45
Inscription : 24 Juin 2014

Re: Tempo EDF

Messagepar anne-marie » 13 Déc 2015 10:30

Merci pour cette explication. Ca marche impeccable :D
En revanche, l'eedomus n'a pas accepté le script et je l'ai donc mis sur mon Raspberry.
Netatmo - Nabaztag2 - Karotz - Mirror - caméras IP - Zwave - RFXCOM - zigate - ecodevice - Enocean - orvibo - connexoon- google Home - Echo - yeelight etc....
anne-marie
 
Messages : 2473
Inscription : 19 Fév 2014
Localisation : 77

Re: Tempo EDF

Messagepar dplein » 14 Déc 2015 09:24

Bonjour,

Merci pour les explications mais je n'y arrive pas car quand je teste cela me marque valeur lue vide. Si je coche la case transformer le son en xml, ça marche...

PS, je l'utilise pour l'EJP et j'attend comme réponse NON_EJP ou EST_EJP ou ND.


Merci pour votre aide.....
Irradié.... RAC v2
dplein
 
Messages : 1683
Inscription : 28 Oct 2012
Localisation : Lorraine

Re: Tempo EDF

Messagepar LoloBERT » 22 Déc 2015 21:44

anne-marie a écrit:Merci pour cette explication. Ca marche impeccable :D
En revanche, l'eedomus n'a pas accepté le script et je l'ai donc mis sur mon Raspberry.


bonjour,

essaie ce code pour injecter un fichier php directement dans la Eedomus et l'appeller par une règle sur des capteur HTTP de type "couleur du jour" & "Couleur de demain.
Code : Tout sélectionner
<?php

//Code par LoloB le geek médicament

$aujourdhui = date("Y-m-d");
$URL_tempo = "https://particulier.edf.fr/bin/edf_rc/servlets/ejptemponew?Date_a_remonter=".$aujourdhui."&TypeAlerte=TEMPO";

// Renvoie les couleurs TEMPO
$jsoncouleurtempo = httpQuery($URL_tempo);

// Formate les couleurs TEMPO
$xmlcouleurtempo = jsonToXML($jsoncouleurtempo);

// Ameliore la sortie xml pour la eedomus
sdk_header('text/xml');

echo $xmlcouleurtempo;


?>


Le resultat est déja formaté en XML et il n'y a plus qu'à préciser le chemin XPath "JourJ" et "JourJ1" pour récupérer les valeurs des couleurs.
a plus .
Dernière édition par LoloBERT le 14 Fév 2016 19:20, édité 1 fois.
LoloBERT
 
Messages : 23
Inscription : 21 Déc 2015

Re: Tempo EDF

Messagepar dplein » 23 Déc 2015 08:00

Merci pour ce script mais tu ne pourrais pas l'adapter stp pour les utilisateurs de l'EJP ???

Merci d'avance.... :D :D
Irradié.... RAC v2
dplein
 
Messages : 1683
Inscription : 28 Oct 2012
Localisation : Lorraine

Re: Tempo EDF

Messagepar manutea » 07 Fév 2016 10:08

Bonjour,

Depuis le 06/02/2016 j'ai un pb de "SSL connection timeout" sur ma requête :
https://particulier.edf.fr/bin/edf_rc/s ... _remonter=[LAST_VALUE PERIPH_ID=xxxxxxx]&TypeAlerte=EJP
Est ce que ce problème est général car jusqu'à samedi je n'avais aucune notification.

Merci de votre aide

manutea
Eedomus+ - caméras IP - modules Zwave - RFXCOM Usb - modules 433mhz -
manutea
 
Messages : 14
Inscription : 27 Déc 2015

Re: Tempo EDF

Messagepar LoloBERT » 14 Fév 2016 19:37

dplein a écrit:Merci pour ce script mais tu ne pourrais pas l'adapter stp pour les utilisateurs de l'EJP ???

Merci d'avance.... :D :D

Essaye cela et récupère les valeurs JourJ/Ejp_qui_t"intéresse & JourJ1/Ejp_qui_t"intéresse


Code : Tout sélectionner
<?php

$aujourdhui = date("Y-m-d");

$URL_ejp = "https://particulier.edf.fr/bin/edf_rc/servlets/ejptemponew?Date_a_remonter=".$aujourdhui."&TypeAlerte=EJP";

// Renvoie les injo EJP

$jsonejp = httpQuery($URL_ejp);

// Formate les injo EJP

$xmlejp = jsonToXML($jsonejp);

// Ameliore la sortie xml pour la eedomus
sdk_header('text/xml');

echo $xmlejp;


?>
Dernière édition par LoloBERT le 23 Fév 2016 16:46, édité 1 fois.
LoloBERT
 
Messages : 23
Inscription : 21 Déc 2015

Re: Tempo EDF

Messagepar dplein » 15 Fév 2016 07:03

Merci beaucoup Lolobert !!! :thumbup: :thumbup:

EDIT:
J'ai une erreur : Fatal error: Call to undefined function httpQuery() in /volume1/web/ejp/index.php on line 11
Irradié.... RAC v2
dplein
 
Messages : 1683
Inscription : 28 Oct 2012
Localisation : Lorraine

Re: Tempo EDF

Messagepar LoloBERT » 23 Fév 2016 16:45

dplein a écrit:Merci beaucoup Lolobert !!! :thumbup: :thumbup:

EDIT:
J'ai une erreur : Fatal error: Call to undefined function httpQuery() in /volume1/web/ejp/index.php on line 11

Bizarre cela...
j'ai tester aujourd'hui, directement au niveau de la box, connecté en local et voilà les valeurs qu'il me donne..
Code : Tout sélectionner
<root><JourJ><EjpOuest>
NON_EJP
</EjpOuest><EjpPaca>
NON_EJP
</EjpPaca><EjpNord>
NON_EJP
</EjpNord><EjpSud>
NON_EJP
</EjpSud></JourJ><JourJ1><EjpOuest>
NON_EJP
</EjpOuest><EjpPaca>
NON_EJP
</EjpPaca><EjpNord>
NON_EJP
</EjpNord><EjpSud>
NON_EJP
</EjpSud></JourJ1></root>

Lances tu le script depuis la box ?
LoloBERT
 
Messages : 23
Inscription : 21 Déc 2015

Re: Tempo EDF

Messagepar dplein » 24 Fév 2016 20:22

Merci ça marche enfin mais depuis la box seulement. Je ne comprends pas pourquoi ça ne marche pas depuis le syno. Pourtant ma météo est sur le syno...

Tu n'aurais pas le calcul des jours restant pour l'EJP stp ???

Merci pour tout !!!!
Irradié.... RAC v2
dplein
 
Messages : 1683
Inscription : 28 Oct 2012
Localisation : Lorraine

Re: Tempo EDF

Messagepar LoloBERT » 01 Mars 2016 22:39

Bonjour
Il est probable que la fonction httpquery n'existe pas en pure php mais je ne suis pas assez calé là dessus ..

Concernant les jours restant EJP, je ne sais pas, désolé ..

A plus
LoloBERT
 
Messages : 23
Inscription : 21 Déc 2015

Re: Tempo EDF

Messagepar gougol69 » 30 Mars 2016 15:52

Bonjour

En prenant en compte les 2 scripts et la demande d'EJP restant le script est le suivant :
A copier sur la box

Code : Tout sélectionner
<?php

$aujourdhui = date("Y-m-d");

$URL_tempo = "https://particulier.edf.fr/bin/edf_rc/servlets/ejptemponew?Date_a_remonter=".$aujourdhui."&TypeAlerte=TEMPO";
$URL_tempo_restant = "https://particulier.edf.fr/bin/edf_rc/servlets/ejptempodaysnew?TypeAlerte=TEMPO";

$URL_ejp = "https://particulier.edf.fr/bin/edf_rc/servlets/ejptemponew?Date_a_remonter=".$aujourdhui."&TypeAlerte=EJP";
$URL_ejp_histo = "https://particulier.edf.fr/services/rest/referentiel/historicEJPStore?searchType=ejp";

// Renvoie les valeurs TEMPO
$jsoncouleurtempo = httpQuery($URL_tempo);
$jsonrestanttempo = httpQuery($URL_tempo_restant);

// Formate les valeurs TEMPO
$xmlcouleurtempo = jsonToXML($jsoncouleurtempo);
$xmlrestanttempo = jsonToXML($jsonrestanttempo);

// Renvoie les valeurs EJP
$jsonejp = httpQuery($URL_ejp);
$jsonejp_histo = httpQuery($URL_ejp_histo);

// Formate les valeurs EJP
$xmlejp = jsonToXML($jsonejp);
$xmlejp_histo = jsonToXML($jsonejp_histo);

//Formate EJP restant
$ejpsud_restant = xpath($xmlejp_histo,'/root/SUD/Total');
$ejpsud_restant = 22 - $ejpsud_restant;

$ejpouest_restant = xpath($xmlejp_histo,'/root/OUEST/Total');
$ejpsouest_restant = 22 - $ejpouest_restant;

$ejppaca_restant = xpath($xmlejp_histo,'/root/PACA/Total');
$ejppaca_restant = 22 - $ejppaca_restant;

$ejpnord_restant = xpath($xmlejp_histo,'/root/NORD/Total');
$ejpnord_restant = 22 - $ejpnord_restant;


// Ameliore la sortie xml pour la eedomus
sdk_header('text/xml');

//Mise en forme du fichier de sortie
$xmlcouleurtempo = str_replace('</root>', '', $xmlcouleurtempo);

$xmlrestanttempo = str_replace('<root>', '', $xmlrestanttempo);
$xmlrestanttempo = str_replace('<?xml version="1.0" encoding="ISO-8859-1"?>', '<Restant>', $xmlrestanttempo);
$xmlrestanttempo = str_replace('</root>', '</Restant>', $xmlrestanttempo);

$xmlejp = str_replace('<root>', '', $xmlejp);
$xmlejp = str_replace('<?xml version="1.0" encoding="ISO-8859-1"?>', '<EJP>', $xmlejp);
$xmlejp = str_replace('</root>', '<Restant>', $xmlejp);
$xmlejp.='<NB_Sud>'.$ejpsud_restant.'</NB_Sud>';
$xmlejp.='<NB_Ouest>'.$ejpsud_restant.'</NB_Ouest>';
$xmlejp.='<NB_PACA>'.$ejppaca_restant.'</NB_PACA>';
$xmlejp.='<NB_Nord>'.$ejpnord_restant.'</NB_Nord>';
$xmlejp.='</Restant>';
$xmlejp.='</EJP>';
$xmlejp.='</root>';

echo $xmlcouleurtempo;
echo $xmlrestanttempo;
echo $xmlejp;

?>


Avec pour les Xpath par exemple :

Pour EJP demain : EJP/JourJ1/EjpSud
Pour EJP restant : EJP/Restant/NB_Sud
Pour tempo demain : JourJ1/Tempo
Pour Tempo rouge restant : Restant/PARAM_NB_J_ROUGE

Voila si ça intéresse encore du monde
gougol69
 
Messages : 19
Inscription : 14 Jan 2015

Re: Tempo EDF

Messagepar ctve » 28 Juil 2016 14:23

Bonjour,

Je déterre ce post un peu tard mais, oui ! ça interresse encore du monde.

Problème, le script s'exécute bien et je récupère bien le XML dans la fenêtre de test mais aucun des XPATH proposés ne fonctionne et .... la syntaxe XPATH ce n'est pas ma tasse de thé.

J'obtiens invariablement comme réponse : Valeur lue vide

Quelqu'un peut-il m'aider. Voici le XML récupéré lors du test ci-dessous :

Code : Tout sélectionner
   <?xml version="1.0" encoding="ISO-8859-1"?>
<root><JourJ>
<Tempo>
BLEU
</Tempo>
</JourJ>
<JourJ1>
<Tempo>
BLEU
</Tempo>
</JourJ1>
<Restant>
<PARAM_NB_J_BLEU>
34
</PARAM_NB_J_BLEU>
<PARAM_NB_J_BLANC>
0
</PARAM_NB_J_BLANC>
<PARAM_NB_J_ROUGE>
0
</PARAM_NB_J_ROUGE>
</Restant><EJP>
<JourJ>
<EjpOuest>
NON_EJP
</EjpOuest>
<EjpPaca>
NON_EJP
</EjpPaca>
<EjpNord>
NON_EJP
</EjpNord>
<EjpSud>
NON_EJP
</EjpSud>
</JourJ>
<JourJ1>
<EjpOuest>
NON_EJP
</EjpOuest>
<EjpPaca>
NON_EJP
</EjpPaca>
<EjpNord>
NON_EJP
</EjpNord>
<EjpSud>
NON_EJP
</EjpSud>
</JourJ1>
<Restant><NB_Sud>0</NB_Sud><NB_Ouest>0</NB_Ouest><NB_PACA>0</NB_PACA><NB_Nord>0</NB_Nord></Restant></EJP></root>
eedomus+ (après avoir essayé Domoticz, Jeedom et Fibaro HC2), divers modules Fibaro et Qubino, sondes météo Oregon via un RFXLAN, interrupteurs Edisio
ctve
 
Messages : 496
Inscription : 13 Nov 2015
Localisation : Toulon (Var)

Re: Tempo EDF

Messagepar titi007 » 11 Août 2016 09:23

désolé, peut être que la réponse est tardive, moi pour récupérer la valeur du lendemain, j'ai : JourJ1/EjpSud
titi007
 
Messages : 116
Inscription : 19 Oct 2014

Re: Tempo EDF

Messagepar ctve » 11 Août 2016 10:32

Merci pour ta réponse mais, avec JourJ1/EjpSud j'obtiens toujours Erreur : Valeur lue vide

Peux-tu me faire une copie de l'XML que tu obtiens en retour lorsque tu testes ton capteur http ou bien le comparer à celui que j'ai mis dans mon post précéedent ?

A priori je ne vois pas pourquoi ce serait différent de chez moi mais j'avoue que je m'arrache les cheveux.

J'ai essayé toutes les syntaxes XPATH possibles et imaginables et j'ai toujours comme réponse Valeur lue vide .... Et pourtant je récupère bien le XML grâce au script comme tu peux le voir dans mon post précédent.
eedomus+ (après avoir essayé Domoticz, Jeedom et Fibaro HC2), divers modules Fibaro et Qubino, sondes météo Oregon via un RFXLAN, interrupteurs Edisio
ctve
 
Messages : 496
Inscription : 13 Nov 2015
Localisation : Toulon (Var)

PrécédentSuivant

Retour vers Téléinformation

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 2 invité(s)