[ZiHome] Interface web pour la Zibase

Le projet ZiHome a désormais beaucoup d'adeptes. Je vous propose une nouvelle section pour faciliter le support autour de ce projet.

Re: Interface web pour la Zibase

Messagede thebest28 » 27 Oct 2013, 18:43

Voici le code modifié pour que cela fonctionne dans wamp :
Code: Tout sélectionner
<?php

include("./pages/conf_zibase.php");
include("zibase.php");
$zibase = new ZiBase($ipzibase);
if(isset($_POST['VALIDER'])) {


$cal = new ZbCalendar();

for ($j = 0; $j < 24; $j++) {
if($_POST[$j] == 'on'){
$val = 1;
} else {
$val = 0;
}
$cal->hour[$j] = $val;
//echo $j;
//echo '=';
//echo $cal->hour[$j];
}
if($_POST['lundi'] == 'on'){
$lundi = 1;
} else {
$lundi = 0;
}
if($_POST['mardi'] == 'on'){
$mardi = 1;
} else {
$mardi = 0;
}
if($_POST['mercredi'] == 'on'){
$mercredi = 1;
} else {
$mercredi = 0;
}
if($_POST['jeudi'] == 'on'){
$jeudi = 1;
} else {
$jeudi = 0;
}
if($_POST['vendredi'] == 'on'){
$vendredi = 1;
} else {
$vendredi = 0;
}
if($_POST['samedi'] == 'on'){
$samedi = 1;
} else {
$samedi = 0;
}
if($_POST['dimanche'] == 'on'){
$dimanche = 1;
} else {
$dimanche = 0;
}
$cal->day['lundi'] = $lundi;
$cal->day['mardi'] = $mardi;
$cal->day['mercredi'] = $mercredi;
$cal->day['jeudi'] = $jeudi;
$cal->day['vendredi'] = $vendredi;
$cal->day['samedi'] = $samedi;
$cal->day['dimanche'] = $dimanche;
$zibase->setCalendar($_POST['id'],$cal);
}
if(isset($_POST['Modifier_vcj'])) {
$zibase->setVariable($_POST['id'],$_POST['temperature']*10);
}
if(isset($_POST['Modifier_vcn'])) {
$zibase->setVariable($_POST['id'],$_POST['temperature']*10);
}
if(isset($_POST['Modifier_mode'])) {
$zibase->setVariable($_POST['id'],$_POST['mode']);
}

$thermostat=$zibase->getThermostat($idzibase,$tokenzibase);
$thermostatnb = count($thermostat);
$i = 1;
while($i <= $thermostatnb) {

echo "<p align=center>".$thermostat[$i]['0']."</p>";

echo "<p align=center>Temperature d'entree : ".(($zibase->getVariable($thermostat[$i]['3']))/10)."&deg;</p>";
?> <FORM method="post" action=""> <?php
echo "<p align=center>Consigne de jour : ".(($zibase->getVariable($thermostat[$i]['4']))/10)."&deg; ";
?>
<INPUT TYPE="HIDDEN" NAME="id" VALUE="<?php echo $thermostat[$i]['4']; ?>">
<INPUT TYPE="text" size="3" NAME="temperature" VALUE="<?php echo (($zibase->getVariable($thermostat[$i]['4']))/10); ?>">
<INPUT TYPE="SUBMIT" NAME="Modifier_vcj" VALUE="Modifier">
</p></FORM>
<FORM method="post" action="">
<?php
echo "<p align=center>Consigne de nuit : ".(($zibase->getVariable($thermostat[$i]['6']))/10)."&deg; ";
?>
<INPUT TYPE="HIDDEN" NAME="id" VALUE="<?php echo $thermostat[$i]['6']; ?>php">
<INPUT TYPE="text" size="3" NAME="temperature" VALUE="<?php echo (($zibase->getVariable($thermostat[$i]['6']))/10); ?>">
<INPUT TYPE="SUBMIT" NAME="Modifier_vcn" VALUE="Modifier">
</p></FORM>
<?php
echo "<p align=center>Hysteresis : ".$thermostat[$i]['8']."</p>";
echo "<p align=center>Actif : ".(($zibase->getVariable($thermostat[$i]['10']))/10)."</p>";
echo "<center><p align=center>Mode : <br>";
?>
<FORM method="post" action="./index.php?page=thermostat">
<input type="radio" name="mode" value="0"<?php if($zibase->getVariable($thermostat[$i]['5']) == "0") { echo " checked"; } ?>>Auto |
<input type="radio" name="mode" value="16"<?php if($zibase->getVariable($thermostat[$i]['5']) == "16") { echo " checked"; } ?>>Jour |
<input type="radio" name="mode" value="32"<?php if($zibase->getVariable($thermostat[$i]['5']) == "32") { echo " checked"; } ?>>Jour temporaire |
<input type="radio" name="mode" value="6"<?php if($zibase->getVariable($thermostat[$i]['5']) == "6") { echo " checked"; } ?>>Hor gel |
<input type="radio" name="mode" value="48"<?php if($zibase->getVariable($thermostat[$i]['5']) == "48") { echo " checked"; } ?>>Nuit |
<input type="radio" name="mode" value="64"<?php if($zibase->getVariable($thermostat[$i]['5']) == "64") { echo " checked"; } ?>>Nuit temporaire |
<input type="radio" name="mode" value="5"<?php if($zibase->getVariable($thermostat[$i]['5']) == "5") { echo " checked"; } ?>>Stop
<INPUT TYPE="HIDDEN" NAME="id" VALUE="<?php echo $thermostat[$i]['5']; ?>">
<INPUT TYPE="SUBMIT" NAME="Modifier_mode" VALUE="Modifier">
</FORM></p></center>
<?php
for ($k = 0; $k < 3; $k++) {
$calendrier=$zibase->getCalendar($thermostat[$i]['7']+$k);
echo "<center>Calendrier Numero ".($thermostat[$i]['7']+$k)."</center>";
?>
<center><p align="center"><form method="post" action="">
<?php
for ($j = 0; $j < 24; $j++) {
if($j > 0 && $j <> 13) { echo " | "; }
if($j == 13) { echo "<br>"; }
?>
<?php echo $j; ?>h <input type="checkbox" name="<?php echo $j;?>"<?php if($calendrier->hour[$j] == "1") {echo "checked";} ?>>
<?php } ?>
<BR>
Lundi <input type="checkbox" name="lundi"<?php if($calendrier->day['lundi'] == "1") { echo "checked"; } ?>>
| Mardi <input type="checkbox" name="mardi"<?php if($calendrier->day['mardi'] == "1") { echo "checked"; } ?>>
| Mercredi <input type="checkbox" name="mercredi"<?php if($calendrier->day['mercredi'] == "1") {echo "checked";} ?>>
| Jeudi <input type="checkbox" name="jeudi"<?php if($calendrier->day['jeudi'] == "1") {echo "checked";} ?>>
| Vendredi <input type="checkbox" name="vendredi"<?php if($calendrier->day['vendredi'] == "1") {echo "checked";} ?>>
| Samedi <input type="checkbox" name="samedi"<?php if($calendrier->day['samedi'] == "1") {echo "checked";} ?>>
| Dimanche <input type="checkbox" name="dimanche"<?php if($calendrier->day['dimanche'] == "1") {echo "checked";} ?>>
<INPUT TYPE="HIDDEN" NAME="id" VALUE="<?php echo $thermostat[$i]['7']+$k; ?>">
<br>
<INPUT TYPE="SUBMIT" NAME="VALIDER" VALUE="VALIDER">
</form></p></center>
<?php
}
$i++;
}

?>


Et pour eviter les erreurs de "Undefined offset:" qui vont s'afficher sur la page lors de la validation d'un post , il faut modifier le fichier php.ini et remplacer cette ligne : error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
par error_reporting = E_ALL & ~E_NOTICE.
_________________
RF 642 / 4 detect mvt CH54503 chacon /
detect mvt exterieur chacon / VISONIC - NEXTK985MCW / douille coco / cod18 / sd18
1 télécommande kr18 / dio chacon / 5 prise chacon 3500W / 3 tyxia delta dore 461 / 3 module ON/OFF chacon 1000W / sirène FOCUS MD-214R / 2 oregon scientific THGR810
/ cam edimax 7010ptz / itach ir wifi / logiciel HC-SKIPPER / Zibase / Roomba 780
thebest28
Dieu de domotique
 
Messages: 1261
Inscription: 20 Juil 2011, 14:16
Localisation: Liège

Re: Interface web pour la Zibase

Messagede patmtp35 » 27 Oct 2013, 20:07

Superbe le graphique pour le vent du coup je vais devoir m'acheter une sonde !
Zibase Pro + Chacon + XDD + Oregon + CM119 +Z-Wave
Imperihome => asus ME103K + Cdisplay YAste
4 Foscam => Videostation
RPI => Teleinfo
RPI => RASPBMC
RPI => OPENELEC
RPI => SQUEEZEPLAYER
Proliant N54l => Esxi 5.5 + Xpenology DSM4.3 => (WEB + PHPMYADMIN + Videostation) + 2008R2 => (Supervision => WSUS) + Xpenology DSM5.0 (Multimedia) + JEEDOM VM
NAS Thecus N0503 => Sauvegarde
patmtp35
Dieu de domotique
 
Messages: 465
Inscription: 19 Mar 2012, 21:43

Re: Interface web pour la Zibase

Messagede Cmoi20 » 28 Oct 2013, 15:58

Bonjour,

Au menu du jour :
- mise en place d'un curseur pour les actionneurs dimables
- correction d'un bug d'affichage du titre des pièces du plan
- correction d'un bug d'affichage des icĂ´nes du plan sur IE avec un cadre bleu
- corrections pour la compatibilité Windows WAMP
- création des .bat nécessaires a la mise en place sous windows
- correction de la récupération OWL pour fonctionner sous Windows WAMP
- mise a jour de la documentation d'installation et correction d'erreurs de texte (carractères manquants)
- mise a jour du code pour prendre en compte la fonction "application WEB" sous iOS
- correction d'un bug sur le graphique du vent "rose des vents"
- débogage divers

n'hésitez pas a me faire vos retour ou demande d'évolution / correction.

Cordialement,

Cmoi20
1 JeeDom mini = RFXCOM en esclave | 1 OWL CM180 | 1 Prolian ML350 G5 avec JeeDom maitre | 1 DAS HP MSA20
3 modules Fibaro FGBS321 avec 12 sondes 1Wire DS18B20 cablés en RJ45 (sonde sertie directement dans la tete RJ45)
7 contacts sec Fibaro FGS211 | 1 double contact sec Fibaro FGS221 | 7 WallPlugs Fibaro | 5 dimmers Fibaro FGD-211
1 Anémomètre WGR800 et 1 Sonde Thermomètre Hygromètre THGN801 alimentés par Capteur solaire STC800
1 detecteur d'inondation Fibaro FGFS-101
Cmoi20
Dieu de domotique
 
Messages: 967
Inscription: 20 Juin 2013, 12:53
Localisation: Laventie

Re: Interface web pour la Zibase

Messagede thebest28 » 28 Oct 2013, 16:19

Ha déja , super je vais tester la version wamp :) :) :)

EDIT: Juste pour signaler que l'importation de la base zibase.sql ne fonctionne pas sur wamp: #1273 - Unknown collation: 'utf8_general_mysql500_ci'
J'ai mis Ă  la place : utf8_general_ci pour que cela fonctionne.
_________________
RF 642 / 4 detect mvt CH54503 chacon /
detect mvt exterieur chacon / VISONIC - NEXTK985MCW / douille coco / cod18 / sd18
1 télécommande kr18 / dio chacon / 5 prise chacon 3500W / 3 tyxia delta dore 461 / 3 module ON/OFF chacon 1000W / sirène FOCUS MD-214R / 2 oregon scientific THGR810
/ cam edimax 7010ptz / itach ir wifi / logiciel HC-SKIPPER / Zibase / Roomba 780
thebest28
Dieu de domotique
 
Messages: 1261
Inscription: 20 Juil 2011, 14:16
Localisation: Liège

Re: Interface web pour la Zibase

Messagede Cmoi20 » 29 Oct 2013, 10:56

Bonjour,

thebest28 a Ă©crit:Juste pour signaler que l'importation de la base zibase.sql ne fonctionne pas sur wamp: #1273 - Unknown collation: 'utf8_general_mysql500_ci'
J'ai mis Ă  la place : utf8_general_ci pour que cela fonctionne.


C'est étrange car je n'ai pas eu le soucis lors de mes tests. l'import s'est passé sans aucun problème.

j'ai testé avec un WAMP qui a été téléchargé il y a un mois sur un Windows 7 64 tout frais.

Cordialement,

Cmoi20
1 JeeDom mini = RFXCOM en esclave | 1 OWL CM180 | 1 Prolian ML350 G5 avec JeeDom maitre | 1 DAS HP MSA20
3 modules Fibaro FGBS321 avec 12 sondes 1Wire DS18B20 cablés en RJ45 (sonde sertie directement dans la tete RJ45)
7 contacts sec Fibaro FGS211 | 1 double contact sec Fibaro FGS221 | 7 WallPlugs Fibaro | 5 dimmers Fibaro FGD-211
1 Anémomètre WGR800 et 1 Sonde Thermomètre Hygromètre THGN801 alimentés par Capteur solaire STC800
1 detecteur d'inondation Fibaro FGFS-101
Cmoi20
Dieu de domotique
 
Messages: 967
Inscription: 20 Juin 2013, 12:53
Localisation: Laventie

Re: Interface web pour la Zibase

Messagede thebest28 » 29 Oct 2013, 16:39

Cmoi20 a Ă©crit:Bonjour,

thebest28 a Ă©crit:Juste pour signaler que l'importation de la base zibase.sql ne fonctionne pas sur wamp: #1273 - Unknown collation: 'utf8_general_mysql500_ci'
J'ai mis Ă  la place : utf8_general_ci pour que cela fonctionne.


C'est étrange car je n'ai pas eu le soucis lors de mes tests. l'import s'est passé sans aucun problème.

j'ai testé avec un WAMP qui a été téléchargé il y a un mois sur un Windows 7 64 tout frais.

Cordialement,

Cmoi20

J'ai une vieille version effectivement , merci ;)
_________________
RF 642 / 4 detect mvt CH54503 chacon /
detect mvt exterieur chacon / VISONIC - NEXTK985MCW / douille coco / cod18 / sd18
1 télécommande kr18 / dio chacon / 5 prise chacon 3500W / 3 tyxia delta dore 461 / 3 module ON/OFF chacon 1000W / sirène FOCUS MD-214R / 2 oregon scientific THGR810
/ cam edimax 7010ptz / itach ir wifi / logiciel HC-SKIPPER / Zibase / Roomba 780
thebest28
Dieu de domotique
 
Messages: 1261
Inscription: 20 Juil 2011, 14:16
Localisation: Liège

Re: Interface web pour la Zibase

Messagede Cmoi20 » 05 Nov 2013, 11:31

Bonjour,

Je désirais gérer les périphériques puis les scénario Zibase a partir de mon interface mais Zodianet m'a répondu que ce n'était pas possible avec les ZAPI. L'idée n'est pas de remplacer les serveurs de zodianet mais plutôt de piloter les données de ceux-ci a partir d'une interface personnalisée.

J'ai également ajouté un script qui réenregistre le serveur auprès de la zibase si nécessaire toute les 3 minutes pour ne pas perdre trop de messages suite a un redémarrage.

N'hésitez pas a faire vos retours ou demande d'évolution,

Cmoi20
1 JeeDom mini = RFXCOM en esclave | 1 OWL CM180 | 1 Prolian ML350 G5 avec JeeDom maitre | 1 DAS HP MSA20
3 modules Fibaro FGBS321 avec 12 sondes 1Wire DS18B20 cablés en RJ45 (sonde sertie directement dans la tete RJ45)
7 contacts sec Fibaro FGS211 | 1 double contact sec Fibaro FGS221 | 7 WallPlugs Fibaro | 5 dimmers Fibaro FGD-211
1 Anémomètre WGR800 et 1 Sonde Thermomètre Hygromètre THGN801 alimentés par Capteur solaire STC800
1 detecteur d'inondation Fibaro FGFS-101
Cmoi20
Dieu de domotique
 
Messages: 967
Inscription: 20 Juin 2013, 12:53
Localisation: Laventie

Re: Interface web pour la Zibase

Messagede Cmoi20 » 12 Nov 2013, 16:57

Bonjour,

J'ai modifié la gestion des styles css pour compatibilité android 2.1 et antérieur

Une meilleur gestion des utilisateurs va suivre rapidement pour gérer 2 niveaux de droits authentifiés (admin et utilisateur)

Cmoi20
1 JeeDom mini = RFXCOM en esclave | 1 OWL CM180 | 1 Prolian ML350 G5 avec JeeDom maitre | 1 DAS HP MSA20
3 modules Fibaro FGBS321 avec 12 sondes 1Wire DS18B20 cablés en RJ45 (sonde sertie directement dans la tete RJ45)
7 contacts sec Fibaro FGS211 | 1 double contact sec Fibaro FGS221 | 7 WallPlugs Fibaro | 5 dimmers Fibaro FGD-211
1 Anémomètre WGR800 et 1 Sonde Thermomètre Hygromètre THGN801 alimentés par Capteur solaire STC800
1 detecteur d'inondation Fibaro FGFS-101
Cmoi20
Dieu de domotique
 
Messages: 967
Inscription: 20 Juin 2013, 12:53
Localisation: Laventie

Re: Interface web pour la Zibase

Messagede Cmoi20 » 15 Nov 2013, 16:05

Bonjour,

J'ai ajouté une gestion utilisateur / administrateur au niveau des droits authentifiés de l'application.

Cmoi20
1 JeeDom mini = RFXCOM en esclave | 1 OWL CM180 | 1 Prolian ML350 G5 avec JeeDom maitre | 1 DAS HP MSA20
3 modules Fibaro FGBS321 avec 12 sondes 1Wire DS18B20 cablés en RJ45 (sonde sertie directement dans la tete RJ45)
7 contacts sec Fibaro FGS211 | 1 double contact sec Fibaro FGS221 | 7 WallPlugs Fibaro | 5 dimmers Fibaro FGD-211
1 Anémomètre WGR800 et 1 Sonde Thermomètre Hygromètre THGN801 alimentés par Capteur solaire STC800
1 detecteur d'inondation Fibaro FGFS-101
Cmoi20
Dieu de domotique
 
Messages: 967
Inscription: 20 Juin 2013, 12:53
Localisation: Laventie

Re: Interface web pour la Zibase

Messagede thebest28 » 16 Nov 2013, 21:02

hello ,
je voulais juste dire un grand merci a Cmoi20 pour son partage de son Ă©norme travail.
je n'ai eu besoin que de la page thermostat mais pour moi c'etait le seul truc que je ne savais pas faire.
Je peux enfin gerer mes calendriers des thermostats dans ed-win aprés un boulot monstre pour faire le lien entre le php et edwin.
Voici un screenshot du résultat pour les curieux : https://www.dropbox.com/s/xvziri2x1yhen ... .42.15.png

Vive le forum , vive Cmoi20 ;)
_________________
RF 642 / 4 detect mvt CH54503 chacon /
detect mvt exterieur chacon / VISONIC - NEXTK985MCW / douille coco / cod18 / sd18
1 télécommande kr18 / dio chacon / 5 prise chacon 3500W / 3 tyxia delta dore 461 / 3 module ON/OFF chacon 1000W / sirène FOCUS MD-214R / 2 oregon scientific THGR810
/ cam edimax 7010ptz / itach ir wifi / logiciel HC-SKIPPER / Zibase / Roomba 780
thebest28
Dieu de domotique
 
Messages: 1261
Inscription: 20 Juil 2011, 14:16
Localisation: Liège

Re: Interface web pour la Zibase

Messagede Cmoi20 » 18 Nov 2013, 11:06

Bonjour,

Merci pour ce message Ă©logieux.

Peut-être qu'un partage des sources permettrait a chacun de se créer une interface personnalisée s'il le désire.

Aurais tu réussis a gérer les périphériques et les scénario a partir de ton interface, si oui, cela m'intéresse grandement. Je recherche la meilleur méthode pour le faire. (ou une méthode pour le faire)

Cordialement,

Cmoi20
1 JeeDom mini = RFXCOM en esclave | 1 OWL CM180 | 1 Prolian ML350 G5 avec JeeDom maitre | 1 DAS HP MSA20
3 modules Fibaro FGBS321 avec 12 sondes 1Wire DS18B20 cablés en RJ45 (sonde sertie directement dans la tete RJ45)
7 contacts sec Fibaro FGS211 | 1 double contact sec Fibaro FGS221 | 7 WallPlugs Fibaro | 5 dimmers Fibaro FGD-211
1 Anémomètre WGR800 et 1 Sonde Thermomètre Hygromètre THGN801 alimentés par Capteur solaire STC800
1 detecteur d'inondation Fibaro FGFS-101
Cmoi20
Dieu de domotique
 
Messages: 967
Inscription: 20 Juin 2013, 12:53
Localisation: Laventie

Re: Interface web pour la Zibase

Messagede thebest28 » 18 Nov 2013, 13:42

Cmoi20 a Ă©crit:Bonjour,

Merci pour ce message Ă©logieux.

Peut-être qu'un partage des sources permettrait a chacun de se créer une interface personnalisée s'il le désire.

Aurais tu réussis a gérer les périphériques et les scénario a partir de ton interface, si oui, cela m'intéresse grandement. Je recherche la meilleur méthode pour le faire. (ou une méthode pour le faire)

Cordialement,

Cmoi20


Hello ,

Je gère le lancement des scénario et périphériques juste avec des commandes post :
http://192.168.1.X/cgi-bin/domo.cgi?cmd=LM%20[Circulateur%20ON]
http://192.168.1.X/cgi-bin/domo.cgi?cmd=OFF%20B2%20P10

j'utilise un le plugin que signalou (du forum ed-win) a développé mais je crois que c'est du C++.
Sinon ca doit fonctionner avec un file_get_contents je pense.

Edit : je me demande si c'etait bien ta question? si tu parle de la création de scénario et périphérique sans passer par le configurateur , je ne sais pas si c'est possible mais cela serait terrible de pouvoir le faire .c'est frustant d'etre coincé à ce niveau la :(
_________________
RF 642 / 4 detect mvt CH54503 chacon /
detect mvt exterieur chacon / VISONIC - NEXTK985MCW / douille coco / cod18 / sd18
1 télécommande kr18 / dio chacon / 5 prise chacon 3500W / 3 tyxia delta dore 461 / 3 module ON/OFF chacon 1000W / sirène FOCUS MD-214R / 2 oregon scientific THGR810
/ cam edimax 7010ptz / itach ir wifi / logiciel HC-SKIPPER / Zibase / Roomba 780
thebest28
Dieu de domotique
 
Messages: 1261
Inscription: 20 Juil 2011, 14:16
Localisation: Liège

PrécédenteSuivante

Retourner vers Le projet ZiHome

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité

Copyright © 2011 - Touteladomotique.com - Tous droits rĂ©servĂ©s
Les blogs partenaires : Abavala, Domo-Blog, Domotique34, Maison et Domotique