Aller au contenu
Lazer

Graph De Température, Humidité, Consommation...sur Nas

Recommended Posts

Le 06/07/2020 à 20:44, henri-allauch a dit :

Salut, si c'est l'ordre du sélecteur de graphique en bas à gauche que tu veux modifier, c'est dans index.php que  tu change l'ordre dans <select id="update"> ca devrait le faire 

Mais le concepteur est @Lazer il pourra confirmer

non ce n'ai pas le sélecteur, ça c'est bon j'ai reussi

C'est la page par défaut quant on ouvre la page web que je veut changer

Par défaut c'est celle de la T°, or je voudrais que cela soit celle de la puissance qui soit la page par défaut a l'ouverture de la page web

Merci

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonjour.

J’avais installé en 2015 DOMOCHARTS V5.0 (merci Lazer pour cet outil) sur un NAS QNAP 210.

Je remplace aujourd’hui ce NAS par un SYNOLOGY DS220+  (DSM 6.2.3-25426 update 2 avec PhpMyAdmin et MariaDB_Version du serveur : 5.5.62- •      Version de PHP : 7.2.29) et réinstalle DOMOCHARTS V5.0 suivant le tuto de Lazer en page 1   

 

Les graphs  des  types supportés notamment  temperature, power et humidity fonctionnent parfaitement.

Je ne suis pas équipé de capteur tels que  co2, , light pressure, noise, rain, wind.

Par contre , pour les « variables » tel que « water », l’écran reste noir avec le message « Loading please wait ». mais doivent fonctionner pour water-day & water-month, mais je ne les utilisent pas.

Je voulais dupliquer  ce fonctionnement pour les infos « ampere » d’un module HEM3Gen 5 d’Aeon Labs connectés sur tri phasé « français » en dupliquant la table « water » et modification en table « ampere » en m’aidant du tuto de Sakkho page   44

 

 

Dans le ZIP Domocharts v5.0 de la page 1, et dans le fichier index.php extrait, la table « water » était absente et les tables « water_day » & « water_month » sont en commentaires et dans js/config.js, manquait  la ligne type « water ».

J’ai effectué les modifs dans les fichiers

 

dans index.php:

            <option value="water">Eau [L]</option>

et supprimer les caractères commentaires pour les 2 autres tables

            <option value="water_day">Eau [L] (moyenne journalière)</option>

            <option value="water_month">Eau [L] (moyenne mensuelle)</option>  

idem pour « ampere »

          <option value="ampere">Ampere [A] </option>

 

dans /graph/js/config.js :

            {type:'water', title: "Consommation d'eau", yaxis: 'Eau (Litres)', tooltip: 'l', min: 0},

            {type:'water_day', title: "Historique de consommation d'eau (total journalier)", yaxis: 'Eau (Litres)', tooltip: 'l', min: 0},

            {type:'water_month', title: "Historique de consommation d'eau (total mensuel)", yaxis: 'Eau (Litres)', tooltip: 'l', min: 0},

           

            {type:'ampere', title: "Ampere", yaxis: 'Ampere (A)', tooltip: 'A', min: 0},

 

 

Puis j’ai ajouté les variables « water & ampere » dans le VD bouton DEVICES & bouton SENSORS. Les tables sontt bien créées dans PhpMyadmin et elles se remplissent.

De même, les tables Devices & Devices_Type prennent en compte ces devices « water » & « ampere » voir fichier pdf joint.

Je ne vois pas ce qui bloque, merci d’avance pour votre aide.

Je vais re-testé en utilisant la table water-day.

 

Pb courbes sur VG DOMOCHARTS.pdf

Partager ce message


Lien à poster
Partager sur d’autres sites

Les mesures de courant en ampère existeront dans le QuickApp pour Home Center 3, mais là franchement, je ne suis pas motivé du tout pour replonger dans le module virtuel pour HC2, c'est trop galère à maintenir

 

indice : tu peux utiliser la console des messages et les outils de développement dans ton navigateur web pour voir les messages d'erreur au moment de la génération du graph, ça te donnera peut être une piste.

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer

Bonjour et merci pour ta réponse.

Au cas où, les réponses ci-dessous te permettrai de me mettre sur de nouveaux indices.

En demandant dans Domocharts, le graph EAU(L) j’obtiens le message d’erreur suivant

Console développement

graph.js:69 Uncaught TypeError: Cannot read property 'min' of null

    at createChart (graph.js:69)

    at Object.success (graph.js:198)

    at j (jquery-2.1.4.min.js:2)

    at Object.fireWith [as resolveWith] (jquery-2.1.4.min.js:2)

    at x (jquery-2.1.4.min.js:4)

    at XMLHttpRequest.<anonymous> (jquery-2.1.4.min.js:4)

 

fichier graph.js  lignes 68 à 75

yAxis: {

                                               min: getChartConfig(currentSensorType).min,

                                               minPadding: 0,

                                               max: getChartConfig(currentSensorType).max,

                                               maxPadding: 0,

                                               title: {

                                                               text: getChartConfig(currentSensorType).yaxis

                                               },

 

 

Alors que si je demande dans Domocharts le graph Eau (L) moyenne journalière , j’obtiens

Load data from type : water_day

graph.js:176 Load data from device : 0 2001,water Consommation,

graph.js:176 Load data from device : 1 2002,water2 Consommation EAU,

graph.js:34 Courbe water Consommation: type = line

graph.js:34 Courbe water2 Consommation EAU: type = line

graph.js:57 Chart loaded

graph.js:141 display chart

 

Autrement, dans PhpMyAdmin, je remarque que dans la structure de la base « water », le device_id n’est pas renseigné

 

Structure table water.jpg

Partager ce message


Lien à poster
Partager sur d’autres sites

là où tu as indiqué que le device_id n'est pas renseigné, ce sont les indexes, qui permettent d'optimiser les requêtes, cela impacte uniquement les performances.

En fait, il y est, mais groupé avec le champ time car les 2 servent ensemble lors des requêtes pour extraire les infos.

 

Dans la structure de la table, le champ device_id existe bel et bien, de type smallint, dans la partie supérieure de ton screenshot.

 

 

Par contre tu parles de NULL, tu devrais regarder le contenu de la table, tu as peut être des value NULL pour 1 ou plusieurs enregistrements

 

Partager ce message


Lien à poster
Partager sur d’autres sites

je viens de vider la table water, et ne garder qu'un seul device water dans le VD, la table se remplit , mais j'ai toujours la même erreur dans la console.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

 

Nouvelle manip :

1)      Dans HC2, mise en Pause de la scene « DOMOCHARTS »

2)      Dans PhpMyAdmin, chager la table « domotique » en « domotique_old »

3)      Vérification que les fichiers « index.php » & « config.js » sont paramétrés avec la table « water » active

4)      Dans navigateur lancement de la cde  192.168.xx.yy/graph/install.php   pour création auto de la table « domotique » , les tables sont créées mais j’ai des erreurs d’index dupliqués

ALTER TABLE `domotique_light_day` ADD KEY `device_id` (`device_id`)
MySQL Error #1061 : SQLSTATE[42000] Duplicate key name 'device_id'
ALTER TABLE `domotique_noise` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_noise_day` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_noise_day` ADD UNIQUE KEY `device_date` (`date`,`device_id`)
MySQL Error #1061 : SQLSTATE[42000] Duplicate key name 'device_date'
ALTER TABLE `domotique_power` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_power_day` ADD KEY `device_id` (`device_id`)
MySQL Error #1061 : SQLSTATE[42000] Duplicate key name 'device_id'
ALTER TABLE `domotique_pressure` ADD KEY `device` (`device_id`,`time`)
MySQL Error #1061 : SQLSTATE[42000] Duplicate key name 'device'
ALTER TABLE `domotique_temperature` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_temperature` ADD KEY `device` (`device_id`,`time`)
MySQL Error #1061 : SQLSTATE[42000] Duplicate key name 'device'
ALTER TABLE `domotique_temperature_month` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_temperature_month` ADD UNIQUE KEY `device_date` (`device_id`,`year`,`month`)
MySQL Error #1061 : SQLSTATE[42000] Duplicate key name 'device_date'
ALTER TABLE `domotique_water` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_water_day` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_water_day` ADD UNIQUE KEY `device_date` (`date`,`device_id`)
MySQL Error #1061 : SQLSTATE[42000] Duplicate key name 'device_date'
ALTER TABLE `domotique_wind` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_wind_day` ADD PRIMARY KEY (`id`)
MySQL Error #1068 : SQLSTATE[42000] Multiple primary key defined
ALTER TABLE `domotique_wind_day` ADD KEY `device_id` (`device_id`)
MySQL Error #1061 : SQLSTATE[42000] Duplicate key name 'device_id'
Finished

5)      Action sur bouton « device » du VD

6)      Remise en production de la scène

7)      Verif dans PHPMyAdmin, les tables se remplissent

8)      Http://192.168.xx.yy/graph   OK pour graph Temperature , Power, mais toujours même erreur sur Water

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer.

Désolé pour t'avoir fait perdre du temps sur mon problème de table water.

Je me suis soudain rappelé que le cache de Chrome n'était pas toujours notre ami.

Un petit nettoyage et le Graph water fonctionne.

Milles excuses.

 

Partager ce message


Lien à poster
Partager sur d’autres sites

It should be OK.

I personally don't host it on a NAS (I made the Synology tutorial only for other peoples)

I don't know formex.com, but I used OVH (public web hosting) for several years, before migrating to my home server (Apache and MariaDB).

 

It is just standard PHP language and MySQL/MariaDB database, so it could theoretically run on any platform (even Windows), but you may have to adjust some parameters depending on your server. You will discover that during the installation depending on the error message you see (if any).

Partager ce message


Lien à poster
Partager sur d’autres sites

@Lazer As I understand the Charts_V4.1 folder is for a web server? Sorry, I have a couple of stupid questions. Inside the button of the virtual device, I specify the IP address of the web server. But in the settings of the VD I need to specify the address of the HC2 or web server? And also I need to specify the port 22 or? Merci beaucoup pour votre aide!

Opera Снимок_2021-01-15_104857_192.168.0.126.png

Partager ce message


Lien à poster
Partager sur d’autres sites

Charts_V4.1 is for the web server of course
Inside the virtual device, you must specify the address of your web server and the port (it should be 80)

 

By the way, if you have never installed a web server, you should really stick to the tutorial, which means use a Synology NAS and just follow the steps described on first page.

Because configuring a public web server is a bit more complicated.... not to mention security concerns.

 

  • Thanks 1

Partager ce message


Lien à poster
Partager sur d’autres sites

Bonsoir,

 

@Lazer: petite question: est-ce compatible HC3 ?

 

En te remerciant

Partager ce message


Lien à poster
Partager sur d’autres sites

Non.... Il faudra encore patienter pour cela.

Partager ce message


Lien à poster
Partager sur d’autres sites

Salut à tous, 

Je suis un peu en galère sur la mise en place de domocharts.

Alors je suis sur Syno pour le serveur web la phase de Mep de la base de donnée est faite. La création c'est bien déroulé en auto, la scène et le VD sont en place.

Par contre les devices ne remonte pas dans la base. Dans l'interface du VD si je fais un appuie bouton sur "DEVICE"  le VD remonte le message erreur, mais en mode debug tout semble ok.

J'ai comme l'impression que la HC2 ne communique pas avec ma base, pouvez me dire comment je peux confirmer ce point, ou si vous avez une autre piste car je sèche depuis 3jours.

 

(Pour info j'ai mis la modif "Patch Netatmo", j'ai attendu une nuit pour la remontée des devices.)

 

D'avance Merci

Partager ce message


Lien à poster
Partager sur d’autres sites

De quel message d'erreur remonté par le VD parles-tu ?

 

Par ailleurs, si tu as phpMyAdmin sur ton NAS, tu peux aller voir dans la base de données s'il y a des données dans les tables temperature, devices, etc

Partager ce message


Lien à poster
Partager sur d’autres sites

Dans la base je n'ai aucune données remonté.

Pour ce qui est de l'erreur image.png.ca82f4e8aef43f374e34608c70b55f50.png elle s'affiche sur le VD à chaque appui bouton (lancé en manuel ou par la scène).

Par contre si je met le debug sur True sur chaque bouton je n'ai aucune erreur visible ..

 

Merci de ton aide. 

Partager ce message


Lien à poster
Partager sur d’autres sites

OK, mais "True", ça ne marchera pas.

La syntaxe est EXACTEMENT la suivante :

local debug = true

Ensuite, l'affichage des messages s'affiche dans la fenêtre de debug de chaque bouton du module virtuel (l'icône de la page principale, que tu as mis en capture d'écran, ne nous permet pas d'en savoir plus)

 

Sans message d'erreur, tu comprends bien que je ne peux pas comprendre ce qui se passe, donc t'aider.

Partager ce message


Lien à poster
Partager sur d’autres sites

Oui je comprend bien, j'ai bien utilisé la bonne syntaxe et j'ai le défilement de mes devices mais pas d'erreur. Ci contre la copie du debug sur Device.

Aucune ligne d'erreur ne s'affiche.

image.png.abfbe1d061a2b9c3d9c950d9e8aa5965.png

 

Partager ce message


Lien à poster
Partager sur d’autres sites

Est ce que l'erreur afficher sur le VD peux venir d'un soucis présent dans les fichiers du serveur (syno) ?  

Partager ce message


Lien à poster
Partager sur d’autres sites

Encore une fois, je suis désolé, mais sans message d'erreur je suis bien incapable de te dire où se situe l'erreur.


Mais si l'affichage du log du bouton Device se passe bien (= sans erreur), on peut supposer que tu as des données dans la table devices, est-ce le cas ?

 

Et tu n'as aucun affichage dans les autres boutons, même avec debug = true ?

Là ce ne serait pas possible, et généralement le signe d'un bug d'interface chaise clavier ;)

 

Partager ce message


Lien à poster
Partager sur d’autres sites

C'est bien la ou je ne comprend pas, j'ai aucun log avec erreur, sur aucun des boutons du VD et pourtant les bases sont vides...

 

Je vais tout reprendre ce week end, on verra !

Partager ce message


Lien à poster
Partager sur d’autres sites

Euh... mais rassures moi... tu as bien mis en place la scène, avec l'ID de ton module virtuel ?

Partager ce message


Lien à poster
Partager sur d’autres sites

×