Bonsoir Nico232
Non, ce n'est pas trop compliqué.
1/ Tu crées un device "etat" :
Configuration -> Ajouter ou supprimer un périphérique -> Ajouter un autre type de périphérique -> état -> Créer
Tu remplis le nom ("Index_debut_mois"), la pièce, l'unité ("wh" ou "kwh") et le type "nombre décimal"
Ensuite tu actives paramètres expert (en bas) et tu notes le code API (id1): 2840832 (pour moi)
Tu cliques sur sauver et l'état est créé.
- Etat.png (28.9 Kio) Consulté 4433 fois
2/Tu crées un device de calcul
Configuration -> Ajouter ou supprimer un périphérique -> Store eedomus -> calculator -> Créer
Dans VAR1 "device(id0)-device(id1)" (id0 : code API du compteur initial)
Il affichera la production depuis le début du mois.
3/ Il faut créer le dispositif qui permet le stockage automatique en début de mois
Soit on pourrait utiliser l'agenda en créant un type de journée "Début du mois" (je n'ai pas essayé)
soit utiliser un device de type "horloge" qui affiche le mois en cours (jan, fev...) ou le jour du mois (1..31) et mettre une règle qui sauvera la valeur du compteur de départ dans "index_debut_mois", donc si mois_en_cours change de valeur ou si jour du mois devient égal à 1.
Le plus simple serait de détourner le plugin "horloge" pour qu'il puisse indiquer au choix la date, le jour, le mois...
Pour cela, tu crées le device "horloge"
Configuration -> Ajouter ou supprimer un périphérique -> Store eedomus -> horloge -> Créer
ensuite tu modifies le nom, la pièce...
puis tu cliques sur éditer pour accéder au script et tu remplaces le fichier obtenu par le script ci-joint. Enfin tu cliques sur sauvegarder : il est probable qu'il râle et te demande de te connecter au site de secours, ce que tu fait et tu reviens au script horloge.php pour stocker le nouveau script.
enfin tu modifies le XPATH qui devient //mois ou //moislit ou //jourmois
//mois donnera [1..12], //moislit [Jan..Dec] et //jourmois [1..31]
Horloge modifié
- Code : Tout sélectionner
<?php
/*******************************************************************
* // Developpeur : eedomusbox pour forum.eedomus.com
* // Version : 1.0
* // Objectif : Récupérer l'heure
*******************************************************************/
$ete=date('I');
$gmt = date('G')-1-$ete;
if ($gmt<0) $gmt+=24;
sdk_header('text/xml');
$xml = '<?xml version="1.0" encoding="UTF-8"?>'.PHP_EOL;
$xml .= '<root>'.PHP_EOL;
$xml .= '<date>'.PHP_EOL;
$xml.= '<jourcomplet>' . date('Ymd'). '</jourcomplet>'.PHP_EOL;
$xml.= '<joursemainelit>' . date('D'). '</joursemainelit>'.PHP_EOL;
$xml.= '<joursemaine>' . date('w'). '</joursemaine>'.PHP_EOL;
$xml.= '<jourmois>' . date('d'). '</jourmois>'.PHP_EOL;
$xml.= '<nbjoursmoisrestants>'.(date('t')-date('d')).'</nbjoursmoisrestants>'.PHP_EOL;
$xml.= '<jourannee>' . date('z'). '</jourannee>'.PHP_EOL;
$xml.= '<nbjoursanneerestants>'.(365+date('L')-date('z')).'</nbjoursanneerestants>'.PHP_EOL;
$xml.= '<mois>' . date('m'). '</mois>'.PHP_EOL;
$xml.= '<moislit>' . date('M'). '</moislit>'.PHP_EOL;
$xml.= '<nbjoursmois>' . date('t'). '</nbjoursmois>'.PHP_EOL;
$xml.= '<annee>' . date('Y'). '</annee>'.PHP_EOL;
$xml.= '<anneebis>' . date('L'). '</anneebis>'.PHP_EOL;
$xml.= '<ete>' . $ete. '</ete>'.PHP_EOL;
$xml.= '</date>'.PHP_EOL;
$xml.= '<time>'.PHP_EOL;
$xml.= '<heure>' . date('Gi') .'</heure>'.PHP_EOL;
$xml.= '<heuremin>' . date('G:i') . '</heuremin>'.PHP_EOL;
$xml.= '<heures>' . date('G') . '</heures>'.PHP_EOL;
$xml.= '<heuresgmt>' . $gmt. '</heuresgmt>'.PHP_EOL;
$xml.= '<minutes>' . date('i') . '</minutes>'.PHP_EOL;
$xml.= '</time>'.PHP_EOL;
$xml.= '</root>'.PHP_EOL;
echo $xml;
?>
4/ tu ouvres le device "indice_debut_mois"
puis règles associées -> nouvelle règle
Tu mets un nom, autoriser le déclenchement "après une semaine"
critère : mois change de valeur
action : index_debut_mois [valeur autre periphérique] indexCompteur
- Regle.png (33.97 Kio) Consulté 4433 fois
Tu obtiens à peu près cela
- Result.png (28.8 Kio) Consulté 4433 fois
eedomus+, Zibase V1, RFP1000, RFXcom, RadioDriver CPL 630 X2D, capteurs puissance OWL, thermometres Oregon, téléinfo (USB Linky), detecteurs ouverture X2D, pilotage chauffage X2D, Ecoflow River PRO, PAC Shogun (Atlantic-Cozytouch)