01/12/2011, 15:39:27
Hello à tous,
J'ai développé un nouveau composant pour knxweb qui permet d'effectuer un send value avec affichage d'un status (binaire).
Dans mon cas, il m'était nécessaire pour :
Envoyer une valeur numérique correspondant au mode timer que j'utilise (0 = Manuel, 1 = timer 1, 2 = timer 2) et avoir le feedback à l'aide d'un objet binaire (qui est calculé à l'aide d'une rule assez simple dans linknx).
Les deux fichiers de l'archive s'ajoutent donc dans /js et afin de les utiliser les lignes suivantes sont à ajouter :
dans design.html :
et dans designedit.html :
et
Pour info : je peux donc de la sorte mettre le chauffage sur mode timer 1, timer 2 ou manuel dans une pièce à l'aide de ceci :
Règles pour les timers
Règle pour les feedbacks
Enfin en gros, je pourrais soit contrôler la température en manuel soit selon deux configurations horaires définies.
J'aurais aimé pouvoir configurer les rules horaires directement via une interface user friendly (un peu comme un agenda) mais ça sera sûrement pour plus tard.
Qu'en pensez vous?
J'ai développé un nouveau composant pour knxweb qui permet d'effectuer un send value avec affichage d'un status (binaire).
Dans mon cas, il m'était nécessaire pour :
Envoyer une valeur numérique correspondant au mode timer que j'utilise (0 = Manuel, 1 = timer 1, 2 = timer 2) et avoir le feedback à l'aide d'un objet binaire (qui est calculé à l'aide d'une rule assez simple dans linknx).
Les deux fichiers de l'archive s'ajoutent donc dans /js et afin de les utiliser les lignes suivantes sont à ajouter :
dans design.html :
Code :
<script type="text/javascript" src="js/csendFB.js"></script>
et dans designedit.html :
Code :
<script type="text/javascript" src="js/csendFB.js"></script>
Code :
<script type="text/javascript" src="js/editcsendFB.js"></script>
Pour info : je peux donc de la sorte mettre le chauffage sur mode timer 1, timer 2 ou manuel dans une pièce à l'aide de ceci :
Code :
<objects>
<object type="5.xxx" id="heating_timeMode_Office" gad="13/7/1" init="persist">Mode time Bureau</object>
<object type="1.001" id="heating_timeMode1_Office" gad="13/6/1" init="request">Mode time 1 Bureau</object>
<object type="1.001" id="heating_timeMode2_Office" gad="13/6/51" init="request">Mode time 2 Bureau</object>
<object type="1.001" id="heating_timeModeManual_Office" gad="13/6/1" init="request">Mode time Manual Bureau</object>
...
...
<object type="1.001" id="mode_confort_Office" gad="13/1/1" init="request">Mode Confort Bureau
<listener gad="13/0/1" />
</object>
<object type="1.001" id="mode_night_Office" gad="13/3/1" init="request">Mode Nuit Bureau
<listener gad="13/2/1" />
</object>
</objects>
Règles pour les timers
Code :
<rules>
<!--Rule for timer-->
<rule id="heating_office_time1">
<condition type="and">
<condition type="object" id="heating_timeMode_Office" value="1" />
<condition type="or">
<condition type="timer" trigger="true">
<at hour="5" min="30" exception="no" wdays="12345" />
<until hour="8" min="0" />
</condition>
<condition type="timer" trigger="true">
<at hour="6" min="30" wdays="67" />
<until hour="11" min="0" />
</condition>
<condition type="timer" trigger="true">
<at hour="6" min="30" exception="yes" />
<until hour="11" min="0" />
</condition>
</condition>
</condition>
<actionlist>
<action type="set-value" id="mode_night_Office" value="off" />
<action type="set-value" id="mode_confort_Office" value="on" />
</actionlist>
<actionlist type="on-false">
<action type="set-value" id="mode_night_Office" value="on" />
<action type="set-value" id="mode_confort_Office" value="off" />
</actionlist>
</rule>
<rule id="heating_office_time2">
<condition type="and">
<condition type="object" id="heating_timeMode_Office" value="2" />
<condition type="or">
<condition type="timer" trigger="true">
<at hour="6" min="30" exception="no" wdays="1234567" />
<until hour="11" min="0" />
</condition>
</condition>
</condition>
<actionlist>
<action type="set-value" id="mode_night_Office" value="off" />
<action type="set-value" id="mode_confort_Office" value="on" />
</actionlist>
<actionlist type="on-false">
<action type="set-value" id="mode_night_Office" value="on" />
<action type="set-value" id="mode_confort_Office" value="off" />
</actionlist>
</rule>
Règle pour les feedbacks
Code :
<rule id="heating_timeMode1_Office_FB">
<condition type="object" id="heating_timeMode_Office" value="1" trigger="true" />
<actionlist>
<action type="set-value" id="heating_timeModeManual_Office" value="off" />
<action type="set-value" id="heating_timeMode2_Office" value="off" />
<action type="set-value" id="heating_timeMode1_Office" value="on" />
</actionlist>
</rule>
<rule id="heating_timeMode2_Office_FB">
<condition type="object" id="heating_timeMode_Office" value="2" trigger="true" />
<actionlist>
<action type="set-value" id="heating_timeModeManual_Office" value="off" />
<action type="set-value" id="heating_timeMode2_Office" value="on" />
<action type="set-value" id="heating_timeMode1_Office" value="off" />
</actionlist>
</rule>
<rule id="heating_timeModeManual_Office_FB">
<condition type="object" id="heating_timeMode_Office" value="1" trigger="true" />
<actionlist>
<action type="set-value" id="heating_timeModeManual_Office" value="on" />
<action type="set-value" id="heating_timeMode2_Office" value="off" />
<action type="set-value" id="heating_timeMode1_Office" value="off" />
</actionlist>
</rule>
Enfin en gros, je pourrais soit contrôler la température en manuel soit selon deux configurations horaires définies.
J'aurais aimé pouvoir configurer les rules horaires directement via une interface user friendly (un peu comme un agenda) mais ça sera sûrement pour plus tard.
Qu'en pensez vous?