Bonjour,
Je dois avoir du caca dans les yeux, je ne trouve pas cette info, tu peux m'indiquer ou la trouver ?
Eric
Bonjour,EchoVictor a écrit : ↑14 nov. 2018, 17:18Bonjour,
Je dois avoir du caca dans les yeux, je ne trouve pas cette info, tu peux m'indiquer ou la trouver ?
Eric
Inutile d'enlever ma modif. Il faut installer la nouvelle version du plugin Ecocompteur.
OK merci de ta réponse.
C'est le plugin qui récupère les infos de consommation par circuit chaque heure à cette URL http://IPecoCompteur/LOG2.CSV
C'est bon à savoir ça !!jpty a écrit : ↑07 janv. 2019, 23:09C'est le plugin qui récupère les infos de consommation par circuit chaque minute à cette URL http://IPecoCompteur/LOG2.CSV
L'EcoCompteur ne génére LOG2.CSV que chaque minute.
Pour les autres données, l'EcoCompteur peut être interrogé plus fréquemment. C'est ce qui est fait sur la page d'accueil de l'EcoCompteur pour afficher les puissances instantanées en dynamique. http://IPecoCompteur/inst.json.
Si l'EcoCompteur est relié au Linky pour la téléinfo, vous pouvez récupérer l'index du Linky en Wh sur http://IPecoCompteur/data.json par exemple toutes les 10 secondes et calculer si le seuil de déclenchement du Linky est atteint ou pas. Pour un abonnement 45A/9kVA, c'est environ 25Wh pour 10secondes.
En affichant http://IPecoCompteur/data.json dans votre navigateur et en faisant rafraichir (f5), on peut voir l'index du Linky évoluer.
JP
J'ai regardé cet am.iolo a écrit : ↑08 janv. 2019, 00:17Ton approche est intéressante jpty, car même en ne regardant ce compteur que toutes les minutes, ça serait déjà nettement plus précis que de faire ce que je fais (un échantillonnage de la conso instantanée toutes les minutes). Et toutes les 10s ça serait parfait.
As-tu implémenté quelque chose de ton coté ?
Code : Tout sélectionner
public function getData() {
$ValPrec=0;
$ConsoCmd = legrandecoCmd::byEqLogicIdAndLogicalId($this->getId(),'conso_base');
if (is_object($ConsoCmd)) $ValPrec=$ConsoCmd->getValue();
else {
$ConsoCmd = legrandecoCmd::byEqLogicIdAndLogicalId($this->getId(),'conso_hp');
if (is_object($ConsoCmd)) $ValPrec=$ConsoCmd->getValue();
else {
$ConsoCmd = legrandecoCmd::byEqLogicIdAndLogicalId($this->getId(),'conso_hc');
if (is_object($ConsoCmd)) $ValPrec=$ConsoCmd->getValue();
}
}
$devAddr = 'http://' . $this->getConfiguration('addr', '') . '/data.json';
$request_http = new com_http($devAddr);
$devResult = $request_http->exec(30);
log::add('legrandeco', 'debug', 'getInformations ' . $devAddr);
if ($devResult === false) {
log::add('legrandeco', 'info', 'problème de connexion ' . $devAddr);
} else {
$devResbis = utf8_encode($devResult);
$corrected = preg_replace('/\s+/', '', $devResbis);
$corrected = preg_replace('/\:0,/', ': 0,', $corrected);
$corrected = preg_replace('/\:[0]+/', ":", $corrected);
$devList = json_decode($corrected, true);
log::add('legrandeco', 'debug', print_r($devList, true));
if (json_last_error() == JSON_ERROR_NONE) {
$ValNext=0;
foreach($devList as $name => $value) {
if (strpos($name,'type_imp') !== false || strpos($name,'label_entree') !== false || strpos($name,'entree_imp') !== false) {
// pas de traitement sur ces données
} else {
$this->checkCmdOk('Teleinfo', $name, '<i class="fa fa-flash"></i>');
$this->checkAndUpdateCmd($name, $value);
if($name === 'conso_base' || $name === 'conso_hc' || $name === 'conso_hp' )
$ValNext += $value;
}
}
if (is_object($ConsoCmd)) {
$ConsoCmd->setValue($ValNext);
$ConsoCmd->save();
if ($ValPrec != 0) {
$this->checkCmdOk('Teleinfo', 'DiffIdxWh', '<i class="fa fa-flash"></i>');
$this->checkAndUpdateCmd('DiffIdxWh', $ValNext-$ValPrec);
}
}
}
}
$this->refreshWidget();
}
Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 1 invité