Note de ce sujet :
  • Moyenne : 3 (1 vote(s))
  • 1
  • 2
  • 3
  • 4
  • 5
knxweb et base de données
#1
Brick 
Bonjour,
Je vais m'attaquer à une nouvelle partie de ma visu : les stats et information (électricité, eau, ...).
Pour ce faire, toutes mes infos seront dans une base de données mysql.
Je compte utiliser des outils type jpgraph mais franchement, je ne connais rien à PHP ou autres.
Est ce insurmontable ??? (je ne pense pas)
Quelqu'un aurait il des bout de code, tuto ou autre pour mise en place de ce type d'outils avec knxweb ?
Quand je dis que je debute ce sujet, c'est bien le cas car je ne sais mm pas comment fonctionne le module 'inserer du html' de knxweb...
Merci pour votre aide
Thierry
Répondre
#2
salut sprint95!

je vais suivre ton topic avec interet car je suis exactement dans le meme cas....
Répondre
#3
(30/08/2011, 13:09:21)jphmilitaire a écrit : salut sprint95!

je vais suivre ton topic avec interet car je suis exactement dans le meme cas....

Tu peux déjà aller sur le blog d'Anthony ou il y a plein d'info. Pour ma part,j'ai déjà bien regarder mais bon,tjrs aussi doué en php, il me faut tout de mm un tuto style :utilise highchart pour les nul avec knxweb...
Thierry
Répondre
#4
Bonjour,
tu auras quoi comme support ? 1 PC qui tourne 24/7j ? avec 1 VM linux ou bien une machine dédiée ?
As tu 1 debian squeeze installée ?

je peux te donner 1 script d'install sur 1 dockstar si besoin, qu'il faudra adapter.

a+
Arnaud
Mon installation parue dans le supplément Bricothème de SystemeD
Installation knx:Hager, Schneider
Supervision:EIBD/Linknx/KnxWeb;Archos10.1;LifeDomus
Audio:Russound CAM6.6T/sonos
Surveillance:Axis 210/Varuna 3/t24 Mobotix
Téléphonie:pap2t/Asterisk
Météo-températuresStation Météo Theben/1-Wire/PT100
Répondre
#5
(30/08/2011, 15:43:41)chtiloft a écrit : Bonjour,
tu auras quoi comme support ? 1 PC qui tourne 24/7j ? avec 1 VM linux ou bien une machine dédiée ?
As tu 1 debian squeeze installée ?

Mon serveur tourne sur un pogoplug sous squeeze debian.
En fait,j'ai trouver les scripts qu'a fait Anthony, mon pb, qui est tout con : comment j'insère ca dans knxweb, je ne sais mm pas comment on utilise les block html de knxweb, pour dire mon niveau Big Grin !!!
Thierry
Répondre
#6
tu copies tout le knxweb dans ton /var/www (ca doit etre ca).

ensuite http://tonip/knxweb/

et tout devrait rouler

par contre, faut paramétrer eibd/linknx comme il faut et les démarrer en préalable

a+.
Mon installation parue dans le supplément Bricothème de SystemeD
Installation knx:Hager, Schneider
Supervision:EIBD/Linknx/KnxWeb;Archos10.1;LifeDomus
Audio:Russound CAM6.6T/sonos
Surveillance:Axis 210/Varuna 3/t24 Mobotix
Téléphonie:pap2t/Asterisk
Météo-températuresStation Météo Theben/1-Wire/PT100
Répondre
#7
(30/08/2011, 16:50:21)chtiloft a écrit : tu copies tout le knxweb dans ton /var/www (ca doit etre ca).

ensuite http://tonip/knxweb/

Je crois qu'il doit y avoir une petite incompréhension. J'ai déjà un knxweb qui tourne sur mon pogoplug, que j'améliore peu à peu.
Mon sujet maintenant, est mettre en place des graphs avec des infos stockées en base.
Je ne sais pas trop comment on met en place la librairie highgraph ou jpgraph par ex dans knxweb, histoire d'avoir soit une page dediée, soit un bouton avec un popup et l'info que je veux visualisée graphiquement.
Thierry
Répondre
#8
a ok, j'avais effectivement pas compris dans ce sens :

http://penhard.anthony.free.fr/?p=93

Anthony a bien développé le sujet

Arnaud
Mon installation parue dans le supplément Bricothème de SystemeD
Installation knx:Hager, Schneider
Supervision:EIBD/Linknx/KnxWeb;Archos10.1;LifeDomus
Audio:Russound CAM6.6T/sonos
Surveillance:Axis 210/Varuna 3/t24 Mobotix
Téléphonie:pap2t/Asterisk
Météo-températuresStation Météo Theben/1-Wire/PT100
Répondre
#9
Salut,

je vois que ce que j'ai fait intéresse d'autres personnes pour les graphiques de température et conso EDF

en fait ce que j'ai décrit sur mon blog est pour gérer les graph un peu "en dehors" de knxweb car ce n'est pas un composant à proprement parlé

pour l'intégrer "complètement" il faut modifier du code dans knxweb
notamment rajouter jquery-ui et highcharts + les bouttons d'appels de graph ... c'est pas très "intuitif" ni "plug&play" ...

quels sont vos "besoins" ?
les températures sont stockées par les log linknx ?
ou des composant 1wire ?

c'est dans ma liste des TODO a intégrer en "standard" dans knxweb pouvoir générer un graph avec les log de linknx (fichiers et ou mysql) ... mais le temps me manque ...

@+
Anthony
Knxweb : http://www.knxweb.fr/
Dépot des sources : https://github.com/linknx/knxweb
Version de démo de Knxweb : http://www.knxweb.fr/demo/setup.php
Script install du trio : https://github.com/linknx/install
Export ETS génère le linknx.xml : http://www.knxweb.fr/ETS/index.php
Répondre
#10
Salut Anthony,

En ce qui me concerne, toutes les données (sensors KNX ou bien 1wires) seront en base de données mysql, donc les data pour les graphe viendront uniquement de là.
Ce que j'aimerai, avoir simplement un bouton m'envoyant sur une page web avec choix des sensors et affichages des graphs associés.
Comme ça, je pourrais choisir et agir en conséquence.
J'imagine que je dois pouvoir me débrouiller pour installer highgraph, après, c'est plutôt comment je fais pour intégrer ça ds knxweb.
C'est clair que le popup, c'est encore mieux ;-)
voila l'idée
Thierry
Répondre
#11
Salut,

en fait pour faire appel a une nouvelle page tu peux faire un truc du genre :

<control type="html" label="graphique" x="310" y="777">
<a href="graphique.php" target="_blank"><img src="images/graphique.png" alt="graphique"></a>
</control>

dans le design.xml de knxweb
c'est un composant html avec un lien sur une image qui ouvre dans un nouvel onglet

après la pop-up c'est "un peu" plus compliqué pour le décrire en quelques lignes ...

@+
Anthony
Répondre
#12
Salut,

Bin je vais me pencher sur tout ça et voir si j'y arrive. Je ne sais pas trop comment highchart s'installe et comment ça marche, je vais deja commencer par tout mettre dans une base (basé sur tes scripts) et ensuite, il y a des chances que tu me voies de temps en temps sur les forums ;-)

thierry
Répondre
#13
Alors,
Réutilisation et adaptation des scrips d'Anthony, j'ai mes infos en base de données MySQL. Premier pas franchit.
D'ailleurs, si quelqu'un peu m'expliquer pourquoi i-un _ID="11" se trouve transformé en valeur 9 dans la base de données, je prends.
A priori, ça ne bloque pas l'enregistrement des données.

Par contre, je vais recupérer les valeurs de mon compteur d'eau froide via KNX, est ce que je dois juste prendre la valeur et la stocker (c'est cumulatif) ou bien faire la différence pour ne stocker que la conse sur l'intervalle de temps entre 2 stockage ? (en fait, la question est plus est ce que highchart à besoin d'un cas ou de l'autre)

Thierry
Répondre
#14
Salut,
comment récupère tu les infos de ton compteur d'eau via knx ?
cela passe donc via linknx c'est lui qui stock en base ou via un script autre ?

la valeur que tu as besoin c'est la conso "instantanée" donc valeur depuis le dernier enregistrement je pense car cela doit être un compteur d'impulsions
sinon tu auras une courbe qui ne fait que monter ...

pour l'ID cela à l'air d'être une valeur non pas decimal peut-être en "Octal" (11 = 9 en decimal) cela doit être une config de la "colonne" de la table

@+
Anthony
Répondre
#15
En fait, bon nombres de mes capteurs vont (pas encore tout fait) être en 1-wire et j'ai pris le postula de tout remonter dans linknx (via script Lua).
Le compteur d'eau va me remonter une valeur (litres) et effectivement, tu confirmes, il vaut mieux faire une différence avec la valeur précédente pour avant de stocker.
Par contre, je suis nul en bash, script, java and co, je ne sais pas comment on fait ça.

Concernant les graph, j'ai repris ce que tu as mis à dispo sur ton blog, mais, heu comment dire, je ne sais pas trop comment cela doit être utilisé Blush ni mm intégrer dans knxweb....

Méa culpa, je me lande dans des choses sans compétences...
Thierry
Répondre
#16
(04/09/2011, 09:25:55)sprint95 a écrit : Concernant les graph, j'ai repris ce que tu as mis à dispo sur ton blog, mais, heu comment dire, je ne sais pas trop comment cela doit être utilisé Blush ni mm intégrer dans knxweb....

Méa culpa, je me lande dans des choses sans compétences...
Thierry

Moi je suis parti direct en knx...

mais comme toi, j'ai bien l'idée d'une méga usine a gaz...
Sauf que pour faire une simple ;condition dans linknx, ca me prend 8h de boulot et 36.000 recherches google!!Tongue

mais les graphs sont prévus....un jour....Blush

bon courage!
Répondre
#17
(04/09/2011, 09:29:08)jphmilitaire a écrit : mais comme toi, j'ai bien l'idée d'une méga usine a gaz...

Mais c'est pas une usine à gaz !!! Big Grin
Non sérieux, tout le réseau 1-wire se gère assez facilement, j'ai OWServeur sur le pogoplug, avec linknx et tout cause comme il faut donc c'est facilement gérable.
Comme tout ça cause avec une Varuna, on peut dire que j'ai un peu de tout Big Grin mais ça marche sans soucis.

Thierry
(04/09/2011, 09:13:36)Energy01 a écrit : pour l'ID cela à l'air d'être une valeur non pas decimal peut-être en "Octal" (11 = 9 en decimal) cela doit être une config de la "colonne" de la table

Je ne suis pas doué avec MySQL manifestement, j'ai beau changer le type pour Id, ce ne change rien dans les enregistrements, ou ai je faux ?
Dans la structure de la table, j'ai : Id : type decimal(10,0)
c'est bon ou pas ?

Thierry
Répondre
#18
(04/09/2011, 09:25:55)sprint95 a écrit : En fait, bon nombres de mes capteurs vont (pas encore tout fait) être en 1-wire et j'ai pris le postula de tout remonter dans linknx (via script Lua).
Le compteur d'eau va me remonter une valeur (litres) et effectivement, tu confirmes, il vaut mieux faire une différence avec la valeur précédente pour avant de stocker.
Par contre, je suis nul en bash, script, java and co, je ne sais pas comment on fait ça.

Concernant les graph, j'ai repris ce que tu as mis à dispo sur ton blog, mais, heu comment dire, je ne sais pas trop comment cela doit être utilisé Blush ni mm intégrer dans knxweb....

j'ai mis un script bash a dispo sur mon blog qui permet de remonter dans la base mysql les valeurs présente dans "persit" de linknx pour les objects souhaités
et donc tu n'utilise pas la log linknx via mysql si j'ai bien compris tu fait cela en "dehors" de linknx

(04/09/2011, 09:29:08)jphmilitaire a écrit : Moi je suis parti direct en knx...

mais comme toi, j'ai bien l'idée d'une méga usine a gaz...
Sauf que pour faire une simple ;condition dans linknx, ca me prend 8h de boulot et 36.000 recherches google!!Tongue

bon choix ...
pose la question ici ou sur le forum linknx tu gagnera surement du temps et cela pourrais en intéresser d'autres également
sinon pour les rules il y a le wiki linknx et l'aide lua pour faire les plus compliquer
sinon la version de knxweb sur le cvs permet de créer des rules de façon plus "intuitive" que en écrivant le xml directement ...


(04/09/2011, 09:33:39)sprint95 a écrit : Je ne suis pas doué avec MySQL manifestement, j'ai beau changer le type pour Id, ce ne change rien dans les enregistrements, ou ai je faux ?
Dans la structure de la table, j'ai : Id : type decimal(10,0)
c'est bon ou pas ?

moi j'ai in(5) ... ça doit être un paramètre quelque part ...

@+
Anthony
Répondre
#19
(04/09/2011, 13:24:31)Energy01 a écrit : j'ai mis un script bash a dispo sur mon blog qui permet de remonter dans la base mysql les valeurs présente dans "persit" de linknx pour les objects souhaités
et donc tu n'utilise pas la log linknx via mysql si j'ai bien compris tu fait cela en "dehors" de linknx

J'ai omis de le préciser, mais oui, j'utilise ton script pour mettre les data en base de données. Et du coup, je log toutes mes data par ce script (1wire ou knx)
J'ai pas de soucis pour la base elle même hormis le pb de format de l'Id.

Ensuite, pour les graphs, j'ai aussi récupérer tes scripts highgraph, apres, je ne sais pas trop comment les utiliser (c'est pas trivial quand on connait pas php and co ;-))
Donc là, j'ai un peu plus de mal, tout conseil est le bienvenue Big Grin

thierry
Répondre
#20
(04/09/2011, 13:59:01)sprint95 a écrit : J'ai omis de le préciser, mais oui, j'utilise ton script pour mettre les data en base de données. Et du coup, je log toutes mes data par ce script (1wire ou knx)
J'ai pas de soucis pour la base elle même hormis le pb de format de l'Id.

Ensuite, pour les graphs, j'ai aussi récupérer tes scripts highgraph, apres, je ne sais pas trop comment les utiliser (c'est pas trivial quand on connait pas php and co ;-))
Donc là, j'ai un peu plus de mal, tout conseil est le bienvenue Big Grin

en fait la seule chose que tu as a modifier c'est le fichier config.ini avec le user et mot de passe de la base mysql
en supposant que tu a respecter les noms des colonnes des tables mysql

@+
Anthony

Répondre
#21
(04/09/2011, 17:32:23)Energy01 a écrit : en fait la seule chose que tu as a modifier c'est le fichier config.ini avec le user et mot de passe de la base mysql
en supposant que tu a respecter les noms des colonnes des tables mysql

On en revient au début du poste, oui, je reutilise en modifiant au minimum, j'ai donc recréé les tables MySQL comme les tiennes.
J'ai aussi copié les fichiers highchart à la racine de knxweb, y a plus qu'a appeler (je suppose) Choix_graph.php mais là, je ne sais pas, ça veut pas !!!

mm eb appliquant ce que tu dis plus haut
faut il un librairie en plus ?
thierry
Répondre
#22
il n'y a en théorie rien de plus à modifier que les infos de l'accès à la base mysql dans le fichier "graph/config.ini"
et ensuite via un navigateur lancer "Choix_graph.php"
qu'est ce que cela t'affiche ? diffcile de savoir le ou les problèmes avec si peu d'éléments
es-tu sur d'avoir des données dans les tables mysql ?

PS : peut-être serais-ce mieux de comuniquer par mail en live et ne poster ici que "la solution" pour ne pas "polluer" le post
@+
Anthony.
Répondre
#23
(01/09/2011, 18:20:55)Energy01 a écrit : après la pop-up c'est "un peu" plus compliqué pour le décrire en quelques lignes ...

@+
Anthony

Le pop-up le pop-up, on veut le pop-up ;-)
plus sérieusement, je suis intéressé par les pop-up avec knxweb pour avoir des objets de communication un peu plus sophistiqués et/ou intuitifs. Par exemple un pop-up thermostat par pièce qui permet de sélectionnes visuellement le mode et la t°C de consigne.
Intégrateur Domotique et multimédias - KNX Partner n°26920 ADVANCED
http://www.ihabitation.com
Partenaire Lifedomus et SONOS
Répondre
#24
Mea culpa pour ce manque de clarté.
Tout marche très bien en fait, je n'ai simplement pas pensé à ouvrir le Choix_graph.php à part (nouvel onglet, fenêtre...)
Maintenant, je voudrais juste ouvrir ça via un bouton sous knxweb, je n'y arrive mm pas. Huh
Thierry

PS : en tout cas, merci pour tout ce boulot, ce temps que tu passes pour nous aider.

Répondre
#25
(04/09/2011, 20:53:03)ccaramel a écrit : Le pop-up le pop-up, on veut le pop-up ;-)
plus sérieusement, je suis intéressé par les pop-up avec knxweb pour avoir des objets de communication un peu plus sophistiqués et/ou intuitifs. Par exemple un pop-up thermostat par pièce qui permet de sélectionnes visuellement le mode et la t°C de consigne.

j'ai commencé a regarder comment faire une pop-up ...

sinon pourrais-tu détailler ton idée "d'objets de communication un peu plus sophistiqués et/ou intuitifs"
je suis preneur de toutes les propositions ...
si tu as des exemples ou même juste des idées


(04/09/2011, 20:56:47)sprint95 a écrit : Mea culpa pour ce manque de clarté.
Tout marche très bien en fait, je n'ai simplement pas pensé à ouvrir le Choix_graph.php à part (nouvel onglet, fenêtre...)
Maintenant, je voudrais juste ouvrir ça via un bouton sous knxweb, je n'y arrive mm pas. Huh

il y a pas de problème, c'est que avec peu de détail difficile de voir d'ou viens le problème ...
donc si c'est ok dans une page à part pour faire un boutton j'avais mis le code plus haut c'est ça :
il faut remplacer : images/graphique.png par une l'image quelconque qui servirra de "boutton"

<control type="html" label="graphique" x="310" y="777">
<a href="Choix_graph.php" target="_blank"><img src="images/graphique.png" alt="graphique"></a>
</control>

c'est un exemple du coup via l'interface edit de knxweb il faut un composant html et mettre le code suivant dedans :
<a href="Choix_graph.php" target="_blank"><img src="images/graphique.png" alt="graphique"></a>

ou sans image juste un lien "texte" :
<a href="Choix_graph.php" target="_blank">graphique température</a>

et donc ce n'est pas la pop-up ...

@+
Anthony.
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)