diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL.patch b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL.patch new file mode 100644 index 0000000000..bacad02a54 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL.patch @@ -0,0 +1,184 @@ +--- occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl +@@ -91,6 +91,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) 0 +--- occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl +@@ -91,6 +91,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) 0 +--- occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl +@@ -91,6 +91,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) 0 +--- occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl.orig ++++ occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl +@@ -91,6 +91,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_MODE) 0 + set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} + set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +--- occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl +@@ -107,6 +107,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl +@@ -107,6 +107,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl +@@ -100,6 +100,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl.orig ++++ occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl +@@ -98,6 +98,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_MODE) 0 + set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} + set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +@@ -170,6 +171,7 @@ + set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_4(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_4(SHORT_ON_TIME_MODE) 0 + set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +--- occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_TRANSCEIVER.tcl +@@ -93,6 +93,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl +@@ -93,6 +93,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/PRESENCEDETECTOR_TRANSCEIVER.tcl +@@ -93,6 +93,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/WATER_DETECTION_TRANSMITTER.tcl.orig ++++ occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/WATER_DETECTION_TRANSMITTER.tcl +@@ -94,6 +94,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_MODE) 0 + set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} + set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +@@ -167,6 +168,7 @@ + set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_4(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_4(SHORT_ON_TIME_MODE) 0 + set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +--- occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_TRANSCEIVER.tcl +@@ -105,6 +105,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl +@@ -105,6 +105,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig ++++ occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/PRESENCEDETECTOR_TRANSCEIVER.tcl +@@ -99,6 +99,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} + set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} + set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +--- occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/WATER_DETECTION_TRANSMITTER.tcl.orig ++++ occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/WATER_DETECTION_TRANSMITTER.tcl +@@ -94,6 +94,7 @@ + set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_2(SHORT_ON_TIME_MODE) 0 + set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} + set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +@@ -167,6 +168,7 @@ + set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} ++set PROFILE_4(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} + set PROFILE_4(SHORT_ON_TIME_MODE) 0 + set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} + set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl new file mode 100755 index 0000000000..12eeed1728 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl @@ -0,0 +1,259 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/getSoundSelector.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) 0.100000 +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 2 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 3 +set PROFILE_2(SHORT_JT_RAMPOFF) 3 +set PROFILE_2(SHORT_JT_RAMPON) 3 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..b649ca35dd --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl.orig @@ -0,0 +1,258 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/getSoundSelector.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) 0.100000 +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 2 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 3 +set PROFILE_2(SHORT_JT_RAMPOFF) 3 +set PROFILE_2(SHORT_JT_RAMPON) 3 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl new file mode 100755 index 0000000000..12eeed1728 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl @@ -0,0 +1,259 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/getSoundSelector.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) 0.100000 +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 2 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 3 +set PROFILE_2(SHORT_JT_RAMPOFF) 3 +set PROFILE_2(SHORT_JT_RAMPON) 3 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..b649ca35dd --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig @@ -0,0 +1,258 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/getSoundSelector.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) 0.100000 +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 2 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 3 +set PROFILE_2(SHORT_JT_RAMPOFF) 3 +set PROFILE_2(SHORT_JT_RAMPON) 3 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl new file mode 100755 index 0000000000..1b4af785a2 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl @@ -0,0 +1,257 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/getSoundSelector.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 7} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) 0.100000 +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 2 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 3 +set PROFILE_2(SHORT_JT_RAMPOFF) 3 +set PROFILE_2(SHORT_JT_RAMPON) 3 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..51342b162a --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig @@ -0,0 +1,256 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/getSoundSelector.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 7} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) 0.100000 +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 2 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 3 +set PROFILE_2(SHORT_JT_RAMPOFF) 3 +set PROFILE_2(SHORT_JT_RAMPON) 3 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl new file mode 100755 index 0000000000..26aed7a371 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl @@ -0,0 +1,378 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/getSoundSelector.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${dimmer_off}" +set PROFILES_MAP(4) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(LONG_COND_VALUE_LO) 50 +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_ON) {0 1 2 4} +set PROFILE_1(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) 0.100000 +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + +set PROFILE_2(LONG_COND_VALUE_LO) 50 +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_ON) {2 0 1 4} +set PROFILE_2(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 3 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 0 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(LONG_COND_VALUE_LO) 50 +set PROFILE_3(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_3(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_3(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_ON) {2 0 1 4} +set PROFILE_3(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_3(SHORT_JT_OFF) 6 +set PROFILE_3(SHORT_JT_OFFDELAY) 6 +set PROFILE_3(SHORT_JT_ON) 4 +set PROFILE_3(SHORT_JT_ONDELAY) 6 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 5 +set PROFILE_3(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_3(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_3(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_3(UI_DESCRIPTION) "" +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +set PROFILE_4(SHORT_JT_OFF) 0 +set PROFILE_4(SHORT_JT_ON) 0 +set PROFILE_4(SHORT_JT_OFFDELAY) 0 +set PROFILE_4(SHORT_JT_ONDELAY) 0 +set PROFILE_4(SHORT_JT_RAMPOFF) 0 +set PROFILE_4(SHORT_JT_RAMPON) 0 +set PROFILE_4(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_4(UI_TEMPLATE) $PROFILE_4(UI_DESCRIPTION) +set PROFILE_4(UI_HINT) 4 + +# hier folgen die eventuellen Subsets + +# "humidity" +set SUBSET_1(NAME) "\${subset_1}" +set SUBSET_1(SUBSET_OPTION_VALUE) 1 +set SUBSET_1(SHORT_CT_OFF) 4 +set SUBSET_1(SHORT_CT_OFFDELAY) 4 +set SUBSET_1(SHORT_CT_ON) 4 +set SUBSET_1(SHORT_CT_ONDELAY) 4 +set SUBSET_1(SHORT_CT_RAMPOFF) 4 +set SUBSET_1(SHORT_CT_RAMPON) 4 + +# "water" +set SUBSET_2(NAME) "\${subset_2}" +set SUBSET_2(SUBSET_OPTION_VALUE) 2 +set SUBSET_2(SHORT_CT_OFF) 1 +set SUBSET_2(SHORT_CT_OFFDELAY) 1 +set SUBSET_2(SHORT_CT_ON) 1 +set SUBSET_2(SHORT_CT_ONDELAY) 1 +set SUBSET_2(SHORT_CT_RAMPOFF) 1 +set SUBSET_2(SHORT_CT_RAMPON) 1 + +# "humidity OR water" +set SUBSET_3(NAME) "\${subset_3}" +set SUBSET_3(SUBSET_OPTION_VALUE) 3 +set SUBSET_3(SHORT_CT_OFF) 0 +set SUBSET_3(SHORT_CT_OFFDELAY) 0 +set SUBSET_3(SHORT_CT_ON) 0 +set SUBSET_3(SHORT_CT_ONDELAY) 0 +set SUBSET_3(SHORT_CT_RAMPOFF) 0 +set SUBSET_3(SHORT_CT_RAMPON) 0 + +# "absolutely dry" +set SUBSET_4(NAME) "\${subset_4}" +set SUBSET_4(SUBSET_OPTION_VALUE) 4 +set SUBSET_4(SHORT_CT_OFF) 2 +set SUBSET_4(SHORT_CT_OFFDELAY) 2 +set SUBSET_4(SHORT_CT_ON) 2 +set SUBSET_4(SHORT_CT_ONDELAY) 2 +set SUBSET_4(SHORT_CT_RAMPOFF) 2 +set SUBSET_4(SHORT_CT_RAMPON) 2 + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + +#2 Dimmer EIN + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#3 Dimmer AUS + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#4 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl.orig new file mode 100755 index 0000000000..f244530d1b --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl.orig @@ -0,0 +1,377 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/ACOUSTIC_SIGNAL_VIRTUAL_RECEIVER/getSoundSelector.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${dimmer_off}" +set PROFILES_MAP(4) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(LONG_COND_VALUE_LO) 50 +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_ON) {0 1 2 4} +set PROFILE_1(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) 0.100000 +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + +set PROFILE_2(LONG_COND_VALUE_LO) 50 +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_ON) {2 0 1 4} +set PROFILE_2(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 3 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 0 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(LONG_COND_VALUE_LO) 50 +set PROFILE_3(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_3(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_3(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_ON) {2 0 1 4} +set PROFILE_3(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_3(SHORT_JT_OFF) 6 +set PROFILE_3(SHORT_JT_OFFDELAY) 6 +set PROFILE_3(SHORT_JT_ON) 4 +set PROFILE_3(SHORT_JT_ONDELAY) 6 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 5 +set PROFILE_3(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 255} +set PROFILE_3(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_3(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_3(UI_DESCRIPTION) "" +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +set PROFILE_4(SHORT_JT_OFF) 0 +set PROFILE_4(SHORT_JT_ON) 0 +set PROFILE_4(SHORT_JT_OFFDELAY) 0 +set PROFILE_4(SHORT_JT_ONDELAY) 0 +set PROFILE_4(SHORT_JT_RAMPOFF) 0 +set PROFILE_4(SHORT_JT_RAMPON) 0 +set PROFILE_4(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_4(UI_TEMPLATE) $PROFILE_4(UI_DESCRIPTION) +set PROFILE_4(UI_HINT) 4 + +# hier folgen die eventuellen Subsets + +# "humidity" +set SUBSET_1(NAME) "\${subset_1}" +set SUBSET_1(SUBSET_OPTION_VALUE) 1 +set SUBSET_1(SHORT_CT_OFF) 4 +set SUBSET_1(SHORT_CT_OFFDELAY) 4 +set SUBSET_1(SHORT_CT_ON) 4 +set SUBSET_1(SHORT_CT_ONDELAY) 4 +set SUBSET_1(SHORT_CT_RAMPOFF) 4 +set SUBSET_1(SHORT_CT_RAMPON) 4 + +# "water" +set SUBSET_2(NAME) "\${subset_2}" +set SUBSET_2(SUBSET_OPTION_VALUE) 2 +set SUBSET_2(SHORT_CT_OFF) 1 +set SUBSET_2(SHORT_CT_OFFDELAY) 1 +set SUBSET_2(SHORT_CT_ON) 1 +set SUBSET_2(SHORT_CT_ONDELAY) 1 +set SUBSET_2(SHORT_CT_RAMPOFF) 1 +set SUBSET_2(SHORT_CT_RAMPON) 1 + +# "humidity OR water" +set SUBSET_3(NAME) "\${subset_3}" +set SUBSET_3(SUBSET_OPTION_VALUE) 3 +set SUBSET_3(SHORT_CT_OFF) 0 +set SUBSET_3(SHORT_CT_OFFDELAY) 0 +set SUBSET_3(SHORT_CT_ON) 0 +set SUBSET_3(SHORT_CT_ONDELAY) 0 +set SUBSET_3(SHORT_CT_RAMPOFF) 0 +set SUBSET_3(SHORT_CT_RAMPON) 0 + +# "absolutely dry" +set SUBSET_4(NAME) "\${subset_4}" +set SUBSET_4(SUBSET_OPTION_VALUE) 4 +set SUBSET_4(SHORT_CT_OFF) 2 +set SUBSET_4(SHORT_CT_OFFDELAY) 2 +set SUBSET_4(SHORT_CT_ON) 2 +set SUBSET_4(SHORT_CT_ONDELAY) 2 +set SUBSET_4(SHORT_CT_RAMPOFF) 2 +set SUBSET_4(SHORT_CT_RAMPON) 2 + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + +#2 Dimmer EIN + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#3 Dimmer AUS + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#4 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl new file mode 100755 index 0000000000..eca485fff2 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl @@ -0,0 +1,396 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 + +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# set PROFILE_2(SHORT_CT_OFF) 2 +# set PROFILE_2(SHORT_CT_OFFDELAY) 2 +# set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +# set PROFILE_2(SHORT_CT_ONDELAY) 2 + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + set ch $dev_descr_sender(INDEX) + set isBSL20 false + + set Fw [getReceiverFw] + set fwMajor [lindex $Fw 0] + # set fwMinor [lindex $Fw 1] + # set fwPatch [lindex $Fw 2] + + if {($dev_descr_receiver(PARENT_TYPE) == "HmIP-BSL") && ($fwMajor >= 2)} { + set isBSL20 true + } + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..88711986eb --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_TRANSCEIVER.tcl.orig @@ -0,0 +1,395 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 + +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# set PROFILE_2(SHORT_CT_OFF) 2 +# set PROFILE_2(SHORT_CT_OFFDELAY) 2 +# set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +# set PROFILE_2(SHORT_CT_ONDELAY) 2 + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + set ch $dev_descr_sender(INDEX) + set isBSL20 false + + set Fw [getReceiverFw] + set fwMajor [lindex $Fw 0] + # set fwMinor [lindex $Fw 1] + # set fwPatch [lindex $Fw 2] + + if {($dev_descr_receiver(PARENT_TYPE) == "HmIP-BSL") && ($fwMajor >= 2)} { + set isBSL20 true + } + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl new file mode 100755 index 0000000000..a2576cbf78 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl @@ -0,0 +1,398 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 + +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# set PROFILE_2(SHORT_CT_OFF) 2 +# set PROFILE_2(SHORT_CT_OFFDELAY) 2 +# set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +# set PROFILE_2(SHORT_CT_ONDELAY) 2 + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + set ch $dev_descr_sender(INDEX) + set isBSL20 false + + set Fw [getReceiverFw] + set fwMajor [lindex $Fw 0] + # set fwMinor [lindex $Fw 1] + # set fwPatch [lindex $Fw 2] + + if {($dev_descr_receiver(PARENT_TYPE) == "HmIP-BSL") && ($fwMajor >= 2)} { + set isBSL20 true + } + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..adc009548f --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig @@ -0,0 +1,397 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 + +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# set PROFILE_2(SHORT_CT_OFF) 2 +# set PROFILE_2(SHORT_CT_OFFDELAY) 2 +# set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +# set PROFILE_2(SHORT_CT_ONDELAY) 2 + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + set ch $dev_descr_sender(INDEX) + set isBSL20 false + + set Fw [getReceiverFw] + set fwMajor [lindex $Fw 0] + # set fwMinor [lindex $Fw 1] + # set fwPatch [lindex $Fw 2] + + if {($dev_descr_receiver(PARENT_TYPE) == "HmIP-BSL") && ($fwMajor >= 2)} { + set isBSL20 true + } + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl new file mode 100755 index 0000000000..313c4aa318 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl @@ -0,0 +1,370 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0 2} +set PROFILE_1(SHORT_CT_ON) {3 0 2} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Dimmer mindestens für die eingestellte Zeit eingeschaltet." +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) {3 2} +set PROFILE_2(SHORT_CT_ON) {3 2} +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Dimmer mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet." +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + set ch $dev_descr_sender(INDEX) + set isBSL20 false + + set Fw [getReceiverFw] + set fwMajor [lindex $Fw 0] + # set fwMinor [lindex $Fw 1] + # set fwPatch [lindex $Fw 2] + + if {($dev_descr_receiver(PARENT_TYPE) == "HmIP-BSL") && ($fwMajor >= 2)} { + set isBSL20 true + } + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..45e2bcac1d --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig @@ -0,0 +1,369 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0 2} +set PROFILE_1(SHORT_CT_ON) {3 0 2} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_OFF_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Dimmer mindestens für die eingestellte Zeit eingeschaltet." +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) {3 2} +set PROFILE_2(SHORT_CT_ON) {3 2} +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Dimmer mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet." +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + set ch $dev_descr_sender(INDEX) + set isBSL20 false + + set Fw [getReceiverFw] + set fwMajor [lindex $Fw 0] + # set fwMinor [lindex $Fw 1] + # set fwPatch [lindex $Fw 2] + + if {($dev_descr_receiver(PARENT_TYPE) == "HmIP-BSL") && ($fwMajor >= 2)} { + set isBSL20 true + } + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl new file mode 100755 index 0000000000..6199416cd3 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl @@ -0,0 +1,570 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${dimmer_off}" +set PROFILES_MAP(4) "\${blink}" +set PROFILES_MAP(5) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(LONG_COND_VALUE_LO) 50 +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_ON) {0 1 2 4} +set PROFILE_1(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + +set PROFILE_2(LONG_COND_VALUE_LO) 50 +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_ON) {2 0 1 4} +set PROFILE_2(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} + +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(LONG_COND_VALUE_LO) 50 +set PROFILE_3(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_3(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_3(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_ON) {2 0 1 4} +set PROFILE_3(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_3(SHORT_JT_OFF) 6 +set PROFILE_3(SHORT_JT_OFFDELAY) 6 +set PROFILE_3(SHORT_JT_ON) 4 +set PROFILE_3(SHORT_JT_ONDELAY) 6 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 5 +set PROFILE_3(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_3(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_3(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_3(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +set PROFILE_4(LONG_COND_VALUE_LO) 51 +set PROFILE_4(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_4(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_4(SHORT_CT_OFF) {0 2 1 4} +set PROFILE_4(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_ON) {0 1 2 4} +set PROFILE_4(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_4(SHORT_JT_OFF) 1 +set PROFILE_4(SHORT_JT_OFFDELAY) 2 +set PROFILE_4(SHORT_JT_ON) 3 +set PROFILE_4(SHORT_JT_ONDELAY) 2 +set PROFILE_4(SHORT_JT_RAMPOFF) 2 +set PROFILE_4(SHORT_JT_RAMPON) 2 +set PROFILE_4(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_4(SHORT_ON_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_OFF_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_4(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_4(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_4(UI_TEMPLATE) $PROFILE_4(UI_DESCRIPTION) +set PROFILE_4(UI_HINT) 4 + +set PROFILE_5(SHORT_JT_OFF) 0 +set PROFILE_5(SHORT_JT_ON) 0 +set PROFILE_5(SHORT_JT_OFFDELAY) 0 +set PROFILE_5(SHORT_JT_ONDELAY) 0 +set PROFILE_5(SHORT_JT_RAMPOFF) 0 +set PROFILE_5(SHORT_JT_RAMPON) 0 +set PROFILE_5(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_5(UI_TEMPLATE) $PROFILE_5(UI_DESCRIPTION) +set PROFILE_5(UI_HINT) 5 + +# hier folgen die eventuellen Subsets + +# "humidity" +set SUBSET_1(NAME) "\${subset_1}" +set SUBSET_1(SUBSET_OPTION_VALUE) 1 +set SUBSET_1(SHORT_CT_OFF) 4 +set SUBSET_1(SHORT_CT_OFFDELAY) 4 +set SUBSET_1(SHORT_CT_ON) 4 +set SUBSET_1(SHORT_CT_ONDELAY) 4 +set SUBSET_1(SHORT_CT_RAMPOFF) 4 +set SUBSET_1(SHORT_CT_RAMPON) 4 + +# "water" +set SUBSET_2(NAME) "\${subset_2}" +set SUBSET_2(SUBSET_OPTION_VALUE) 2 +set SUBSET_2(SHORT_CT_OFF) 1 +set SUBSET_2(SHORT_CT_OFFDELAY) 1 +set SUBSET_2(SHORT_CT_ON) 1 +set SUBSET_2(SHORT_CT_ONDELAY) 1 +set SUBSET_2(SHORT_CT_RAMPOFF) 1 +set SUBSET_2(SHORT_CT_RAMPON) 1 + +# "humidity OR water" +set SUBSET_3(NAME) "\${subset_3}" +set SUBSET_3(SUBSET_OPTION_VALUE) 3 +set SUBSET_3(SHORT_CT_OFF) 0 +set SUBSET_3(SHORT_CT_OFFDELAY) 0 +set SUBSET_3(SHORT_CT_ON) 0 +set SUBSET_3(SHORT_CT_ONDELAY) 0 +set SUBSET_3(SHORT_CT_RAMPOFF) 0 +set SUBSET_3(SHORT_CT_RAMPON) 0 + +# "absolutely dry" +set SUBSET_4(NAME) "\${subset_4}" +set SUBSET_4(SUBSET_OPTION_VALUE) 4 +set SUBSET_4(SHORT_CT_OFF) 2 +set SUBSET_4(SHORT_CT_OFFDELAY) 2 +set SUBSET_4(SHORT_CT_ON) 2 +set SUBSET_4(SHORT_CT_ONDELAY) 2 +set SUBSET_4(SHORT_CT_RAMPOFF) 2 +set SUBSET_4(SHORT_CT_RAMPON) 2 + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + +#2 Dimmer EIN + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#3 Dimmer AUS + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#4 Dimmer BLINK + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" +#5 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl.orig new file mode 100755 index 0000000000..42995e6a5c --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/DIMMER_VIRTUAL_RECEIVER/WATER_DETECTION_TRANSMITTER.tcl.orig @@ -0,0 +1,568 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${dimmer_off}" +set PROFILES_MAP(4) "\${blink}" +set PROFILES_MAP(5) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(LONG_COND_VALUE_LO) 50 +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_ON) {0 1 2 4} +set PROFILE_1(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + +set PROFILE_2(LONG_COND_VALUE_LO) 50 +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_ON) {2 0 1 4} +set PROFILE_2(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} + +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} + +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(LONG_COND_VALUE_LO) 50 +set PROFILE_3(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_3(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_3(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_ON) {2 0 1 4} +set PROFILE_3(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_3(SHORT_JT_OFF) 6 +set PROFILE_3(SHORT_JT_OFFDELAY) 6 +set PROFILE_3(SHORT_JT_ON) 4 +set PROFILE_3(SHORT_JT_ONDELAY) 6 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 5 +set PROFILE_3(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_3(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_3(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_3(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +set PROFILE_4(LONG_COND_VALUE_LO) 51 +set PROFILE_4(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_4(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_4(SHORT_CT_OFF) {0 2 1 4} +set PROFILE_4(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_ON) {0 1 2 4} +set PROFILE_4(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_4(SHORT_JT_OFF) 1 +set PROFILE_4(SHORT_JT_OFFDELAY) 2 +set PROFILE_4(SHORT_JT_ON) 3 +set PROFILE_4(SHORT_JT_ONDELAY) 2 +set PROFILE_4(SHORT_JT_RAMPOFF) 2 +set PROFILE_4(SHORT_JT_RAMPON) 2 +set PROFILE_4(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_ON_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_OFF_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_4(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_4(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_4(UI_TEMPLATE) $PROFILE_4(UI_DESCRIPTION) +set PROFILE_4(UI_HINT) 4 + +set PROFILE_5(SHORT_JT_OFF) 0 +set PROFILE_5(SHORT_JT_ON) 0 +set PROFILE_5(SHORT_JT_OFFDELAY) 0 +set PROFILE_5(SHORT_JT_ONDELAY) 0 +set PROFILE_5(SHORT_JT_RAMPOFF) 0 +set PROFILE_5(SHORT_JT_RAMPON) 0 +set PROFILE_5(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_5(UI_TEMPLATE) $PROFILE_5(UI_DESCRIPTION) +set PROFILE_5(UI_HINT) 5 + +# hier folgen die eventuellen Subsets + +# "humidity" +set SUBSET_1(NAME) "\${subset_1}" +set SUBSET_1(SUBSET_OPTION_VALUE) 1 +set SUBSET_1(SHORT_CT_OFF) 4 +set SUBSET_1(SHORT_CT_OFFDELAY) 4 +set SUBSET_1(SHORT_CT_ON) 4 +set SUBSET_1(SHORT_CT_ONDELAY) 4 +set SUBSET_1(SHORT_CT_RAMPOFF) 4 +set SUBSET_1(SHORT_CT_RAMPON) 4 + +# "water" +set SUBSET_2(NAME) "\${subset_2}" +set SUBSET_2(SUBSET_OPTION_VALUE) 2 +set SUBSET_2(SHORT_CT_OFF) 1 +set SUBSET_2(SHORT_CT_OFFDELAY) 1 +set SUBSET_2(SHORT_CT_ON) 1 +set SUBSET_2(SHORT_CT_ONDELAY) 1 +set SUBSET_2(SHORT_CT_RAMPOFF) 1 +set SUBSET_2(SHORT_CT_RAMPON) 1 + +# "humidity OR water" +set SUBSET_3(NAME) "\${subset_3}" +set SUBSET_3(SUBSET_OPTION_VALUE) 3 +set SUBSET_3(SHORT_CT_OFF) 0 +set SUBSET_3(SHORT_CT_OFFDELAY) 0 +set SUBSET_3(SHORT_CT_ON) 0 +set SUBSET_3(SHORT_CT_ONDELAY) 0 +set SUBSET_3(SHORT_CT_RAMPOFF) 0 +set SUBSET_3(SHORT_CT_RAMPON) 0 + +# "absolutely dry" +set SUBSET_4(NAME) "\${subset_4}" +set SUBSET_4(SUBSET_OPTION_VALUE) 4 +set SUBSET_4(SHORT_CT_OFF) 2 +set SUBSET_4(SHORT_CT_OFFDELAY) 2 +set SUBSET_4(SHORT_CT_ON) 2 +set SUBSET_4(SHORT_CT_ONDELAY) 2 +set SUBSET_4(SHORT_CT_RAMPOFF) 2 +set SUBSET_4(SHORT_CT_RAMPON) 2 + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + +#2 Dimmer EIN + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#3 Dimmer AUS + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#4 Dimmer BLINK + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" +#5 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_TRANSCEIVER.tcl new file mode 100755 index 0000000000..21a08c80d1 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_TRANSCEIVER.tcl @@ -0,0 +1,324 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..a6017e6352 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_TRANSCEIVER.tcl.orig @@ -0,0 +1,323 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl new file mode 100755 index 0000000000..21a08c80d1 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl @@ -0,0 +1,324 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..a6017e6352 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig @@ -0,0 +1,323 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/PRESENCEDETECTOR_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/PRESENCEDETECTOR_TRANSCEIVER.tcl new file mode 100755 index 0000000000..627ecb73e1 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/PRESENCEDETECTOR_TRANSCEIVER.tcl @@ -0,0 +1,302 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 2 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..de78053ba0 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig @@ -0,0 +1,301 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) 0 +set PROFILE_1(SHORT_CT_OFFDELAY) 0 +set PROFILE_1(SHORT_CT_ON) 0 +set PROFILE_1(SHORT_CT_ONDELAY) 0 +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 2 +set PROFILE_2(SHORT_CT_ON) 2 +set PROFILE_2(SHORT_CT_ONDELAY) 2 +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/WATER_DETECTION_TRANSMITTER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/WATER_DETECTION_TRANSMITTER.tcl new file mode 100755 index 0000000000..3bff6fdd8e --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/WATER_DETECTION_TRANSMITTER.tcl @@ -0,0 +1,540 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${dimmer_off}" +set PROFILES_MAP(4) "\${blink}" +set PROFILES_MAP(5) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(LONG_COND_VALUE_LO) 50 +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_ON) {0 1 2 4} +set PROFILE_1(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + +set PROFILE_2(LONG_COND_VALUE_LO) 50 +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_ON) {2 0 1 4} +set PROFILE_2(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(LONG_COND_VALUE_LO) 50 +set PROFILE_3(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_3(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_3(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_ON) {2 0 1 4} +set PROFILE_3(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_3(SHORT_JT_OFF) 6 +set PROFILE_3(SHORT_JT_OFFDELAY) 6 +set PROFILE_3(SHORT_JT_ON) 4 +set PROFILE_3(SHORT_JT_ONDELAY) 6 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 5 +set PROFILE_3(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_3(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_3(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_3(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +set PROFILE_4(LONG_COND_VALUE_LO) 51 +set PROFILE_4(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_4(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_4(SHORT_CT_OFF) {0 2 1 4} +set PROFILE_4(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_ON) {0 1 2 4} +set PROFILE_4(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_4(SHORT_JT_OFF) 1 +set PROFILE_4(SHORT_JT_OFFDELAY) 2 +set PROFILE_4(SHORT_JT_ON) 3 +set PROFILE_4(SHORT_JT_ONDELAY) 2 +set PROFILE_4(SHORT_JT_RAMPOFF) 2 +set PROFILE_4(SHORT_JT_RAMPON) 2 +set PROFILE_4(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_4(SHORT_ON_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_OFF_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_4(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_4(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_4(UI_TEMPLATE) $PROFILE_4(UI_DESCRIPTION) +set PROFILE_4(UI_HINT) 4 + +set PROFILE_5(SHORT_JT_OFF) 0 +set PROFILE_5(SHORT_JT_ON) 0 +set PROFILE_5(SHORT_JT_OFFDELAY) 0 +set PROFILE_5(SHORT_JT_ONDELAY) 0 +set PROFILE_5(SHORT_JT_RAMPOFF) 0 +set PROFILE_5(SHORT_JT_RAMPON) 0 +set PROFILE_5(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_5(UI_TEMPLATE) $PROFILE_5(UI_DESCRIPTION) +set PROFILE_5(UI_HINT) 5 + +# hier folgen die eventuellen Subsets + +# "humidity" +set SUBSET_1(NAME) "\${subset_1}" +set SUBSET_1(SUBSET_OPTION_VALUE) 1 +set SUBSET_1(SHORT_CT_OFF) 4 +set SUBSET_1(SHORT_CT_OFFDELAY) 4 +set SUBSET_1(SHORT_CT_ON) 4 +set SUBSET_1(SHORT_CT_ONDELAY) 4 +set SUBSET_1(SHORT_CT_RAMPOFF) 4 +set SUBSET_1(SHORT_CT_RAMPON) 4 + +# "water" +set SUBSET_2(NAME) "\${subset_2}" +set SUBSET_2(SUBSET_OPTION_VALUE) 2 +set SUBSET_2(SHORT_CT_OFF) 1 +set SUBSET_2(SHORT_CT_OFFDELAY) 1 +set SUBSET_2(SHORT_CT_ON) 1 +set SUBSET_2(SHORT_CT_ONDELAY) 1 +set SUBSET_2(SHORT_CT_RAMPOFF) 1 +set SUBSET_2(SHORT_CT_RAMPON) 1 + +# "humidity OR water" +set SUBSET_3(NAME) "\${subset_3}" +set SUBSET_3(SUBSET_OPTION_VALUE) 3 +set SUBSET_3(SHORT_CT_OFF) 0 +set SUBSET_3(SHORT_CT_OFFDELAY) 0 +set SUBSET_3(SHORT_CT_ON) 0 +set SUBSET_3(SHORT_CT_ONDELAY) 0 +set SUBSET_3(SHORT_CT_RAMPOFF) 0 +set SUBSET_3(SHORT_CT_RAMPON) 0 + +# "absolutely dry" +set SUBSET_4(NAME) "\${subset_4}" +set SUBSET_4(SUBSET_OPTION_VALUE) 4 +set SUBSET_4(SHORT_CT_OFF) 2 +set SUBSET_4(SHORT_CT_OFFDELAY) 2 +set SUBSET_4(SHORT_CT_ON) 2 +set SUBSET_4(SHORT_CT_ONDELAY) 2 +set SUBSET_4(SHORT_CT_RAMPOFF) 2 +set SUBSET_4(SHORT_CT_RAMPON) 2 + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + +#2 Dimmer EIN + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#3 Dimmer AUS + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#4 Dimmer BLINK + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" +#5 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/WATER_DETECTION_TRANSMITTER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/WATER_DETECTION_TRANSMITTER.tcl.orig new file mode 100755 index 0000000000..a81409d564 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_ACTOR/WATER_DETECTION_TRANSMITTER.tcl.orig @@ -0,0 +1,538 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${dimmer_off}" +set PROFILES_MAP(4) "\${blink}" +set PROFILES_MAP(5) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(LONG_COND_VALUE_LO) 50 +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_ON) {0 1 2 4} +set PROFILE_1(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + +set PROFILE_2(LONG_COND_VALUE_LO) 50 +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_ON) {2 0 1 4} +set PROFILE_2(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(LONG_COND_VALUE_LO) 50 +set PROFILE_3(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_3(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_3(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_ON) {2 0 1 4} +set PROFILE_3(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_3(SHORT_JT_OFF) 6 +set PROFILE_3(SHORT_JT_OFFDELAY) 6 +set PROFILE_3(SHORT_JT_ON) 4 +set PROFILE_3(SHORT_JT_ONDELAY) 6 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 5 +set PROFILE_3(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_3(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_3(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_3(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +set PROFILE_4(LONG_COND_VALUE_LO) 51 +set PROFILE_4(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_4(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_4(SHORT_CT_OFF) {0 2 1 4} +set PROFILE_4(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_ON) {0 1 2 4} +set PROFILE_4(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_4(SHORT_JT_OFF) 1 +set PROFILE_4(SHORT_JT_OFFDELAY) 2 +set PROFILE_4(SHORT_JT_ON) 3 +set PROFILE_4(SHORT_JT_ONDELAY) 2 +set PROFILE_4(SHORT_JT_RAMPOFF) 2 +set PROFILE_4(SHORT_JT_RAMPON) 2 +set PROFILE_4(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_ON_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_OFF_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_OUTPUT_BEHAVIOUR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_4(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_4(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_4(UI_TEMPLATE) $PROFILE_4(UI_DESCRIPTION) +set PROFILE_4(UI_HINT) 4 + +set PROFILE_5(SHORT_JT_OFF) 0 +set PROFILE_5(SHORT_JT_ON) 0 +set PROFILE_5(SHORT_JT_OFFDELAY) 0 +set PROFILE_5(SHORT_JT_ONDELAY) 0 +set PROFILE_5(SHORT_JT_RAMPOFF) 0 +set PROFILE_5(SHORT_JT_RAMPON) 0 +set PROFILE_5(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_5(UI_TEMPLATE) $PROFILE_5(UI_DESCRIPTION) +set PROFILE_5(UI_HINT) 5 + +# hier folgen die eventuellen Subsets + +# "humidity" +set SUBSET_1(NAME) "\${subset_1}" +set SUBSET_1(SUBSET_OPTION_VALUE) 1 +set SUBSET_1(SHORT_CT_OFF) 4 +set SUBSET_1(SHORT_CT_OFFDELAY) 4 +set SUBSET_1(SHORT_CT_ON) 4 +set SUBSET_1(SHORT_CT_ONDELAY) 4 +set SUBSET_1(SHORT_CT_RAMPOFF) 4 +set SUBSET_1(SHORT_CT_RAMPON) 4 + +# "water" +set SUBSET_2(NAME) "\${subset_2}" +set SUBSET_2(SUBSET_OPTION_VALUE) 2 +set SUBSET_2(SHORT_CT_OFF) 1 +set SUBSET_2(SHORT_CT_OFFDELAY) 1 +set SUBSET_2(SHORT_CT_ON) 1 +set SUBSET_2(SHORT_CT_ONDELAY) 1 +set SUBSET_2(SHORT_CT_RAMPOFF) 1 +set SUBSET_2(SHORT_CT_RAMPON) 1 + +# "humidity OR water" +set SUBSET_3(NAME) "\${subset_3}" +set SUBSET_3(SUBSET_OPTION_VALUE) 3 +set SUBSET_3(SHORT_CT_OFF) 0 +set SUBSET_3(SHORT_CT_OFFDELAY) 0 +set SUBSET_3(SHORT_CT_ON) 0 +set SUBSET_3(SHORT_CT_ONDELAY) 0 +set SUBSET_3(SHORT_CT_RAMPOFF) 0 +set SUBSET_3(SHORT_CT_RAMPON) 0 + +# "absolutely dry" +set SUBSET_4(NAME) "\${subset_4}" +set SUBSET_4(SUBSET_OPTION_VALUE) 4 +set SUBSET_4(SHORT_CT_OFF) 2 +set SUBSET_4(SHORT_CT_OFFDELAY) 2 +set SUBSET_4(SHORT_CT_ON) 2 +set SUBSET_4(SHORT_CT_ONDELAY) 2 +set SUBSET_4(SHORT_CT_RAMPOFF) 2 +set SUBSET_4(SHORT_CT_RAMPON) 2 + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + +#2 Dimmer EIN + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#3 Dimmer AUS + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#4 Dimmer BLINK + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" +#5 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_TRANSCEIVER.tcl new file mode 100755 index 0000000000..02b9340945 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_TRANSCEIVER.tcl @@ -0,0 +1,339 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 + +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# set PROFILE_2(SHORT_CT_OFF) 2 +# set PROFILE_2(SHORT_CT_OFFDELAY) 2 +# set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +# set PROFILE_2(SHORT_CT_ONDELAY) 2 + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..143056c47a --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_TRANSCEIVER.tcl.orig @@ -0,0 +1,338 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 + +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# set PROFILE_2(SHORT_CT_OFF) 2 +# set PROFILE_2(SHORT_CT_OFFDELAY) 2 +# set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +# set PROFILE_2(SHORT_CT_ONDELAY) 2 + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl new file mode 100755 index 0000000000..02b9340945 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl @@ -0,0 +1,339 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 + +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# set PROFILE_2(SHORT_CT_OFF) 2 +# set PROFILE_2(SHORT_CT_OFFDELAY) 2 +# set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +# set PROFILE_2(SHORT_CT_ONDELAY) 2 + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..143056c47a --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/MOTIONDETECTOR_VIRTUAL_TRANSCEIVER.tcl.orig @@ -0,0 +1,338 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 + +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# set PROFILE_2(SHORT_CT_OFF) 2 +# set PROFILE_2(SHORT_CT_OFFDELAY) 2 +# set PROFILE_2(SHORT_CT_ON) 5 ;# SPHM-248 +# set PROFILE_2(SHORT_CT_ONDELAY) 2 + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 2 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/PRESENCEDETECTOR_TRANSCEIVER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/PRESENCEDETECTOR_TRANSCEIVER.tcl new file mode 100755 index 0000000000..ed49c1ad82 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/PRESENCEDETECTOR_TRANSCEIVER.tcl @@ -0,0 +1,312 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig new file mode 100755 index 0000000000..e4fb604633 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/PRESENCEDETECTOR_TRANSCEIVER.tcl.orig @@ -0,0 +1,311 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/motionDetectorOnTimeHint.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${light_stairway}" +set PROFILES_MAP(3) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_1(SHORT_CT_OFF) {2 0} +set PROFILE_1(SHORT_CT_OFFDELAY) {3 0} +set PROFILE_1(SHORT_CT_ON) {3 0} +set PROFILE_1(SHORT_CT_ONDELAY) {2 0} + +set PROFILE_1(SHORT_CT_RAMPOFF) 0 +set PROFILE_1(SHORT_CT_RAMPON) 0 +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMPON_TIME_BASE) 0 +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) 5 +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + + +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} + +# SPHM-833 +set PROFILE_2(SHORT_CT_OFF) 2 +set PROFILE_2(SHORT_CT_OFFDELAY) 3 +set PROFILE_2(SHORT_CT_ON) 3 +set PROFILE_2(SHORT_CT_ONDELAY) 2 + +set PROFILE_2(SHORT_CT_RAMPOFF) 2 +set PROFILE_2(SHORT_CT_RAMPON) 2 +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_OFF_TIME_MODE) 0 +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_BASE) {5 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_MODE) {0 1} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(SHORT_JT_OFF) 0 +set PROFILE_3(SHORT_JT_ON) 0 +set PROFILE_3(SHORT_JT_OFFDELAY) 0 +set PROFILE_3(SHORT_JT_ONDELAY) 0 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 0 +set PROFILE_3(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +# hier folgen die eventuellen Subsets + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_GE_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + + #2 Treppenhauslicht + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + incr pref + # Brightness + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_LO help_active_LT_LO + incr pref + EnterBrightnessHmIP $prn $pref ${special_input_id} ps ps_descr SHORT_COND_VALUE_HI help_active_LT_LO HI + +#3 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/WATER_DETECTION_TRANSMITTER.tcl b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/WATER_DETECTION_TRANSMITTER.tcl new file mode 100755 index 0000000000..a48e953947 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/WATER_DETECTION_TRANSMITTER.tcl @@ -0,0 +1,540 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${dimmer_off}" +set PROFILES_MAP(4) "\${blink}" +set PROFILES_MAP(5) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(LONG_COND_VALUE_LO) 50 +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_ON) {0 1 2 4} +set PROFILE_1(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + +set PROFILE_2(LONG_COND_VALUE_LO) 50 +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_ON) {2 0 1 4} +set PROFILE_2(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(LONG_COND_VALUE_LO) 50 +set PROFILE_3(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_3(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_3(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_ON) {2 0 1 4} +set PROFILE_3(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_3(SHORT_JT_OFF) 6 +set PROFILE_3(SHORT_JT_OFFDELAY) 6 +set PROFILE_3(SHORT_JT_ON) 4 +set PROFILE_3(SHORT_JT_ONDELAY) 6 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 5 +set PROFILE_3(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_3(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_3(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_3(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +set PROFILE_4(LONG_COND_VALUE_LO) 51 +set PROFILE_4(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_4(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_4(SHORT_CT_OFF) {0 2 1 4} +set PROFILE_4(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_ON) {0 1 2 4} +set PROFILE_4(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_4(SHORT_JT_OFF) 1 +set PROFILE_4(SHORT_JT_OFFDELAY) 2 +set PROFILE_4(SHORT_JT_ON) 3 +set PROFILE_4(SHORT_JT_ONDELAY) 2 +set PROFILE_4(SHORT_JT_RAMPOFF) 2 +set PROFILE_4(SHORT_JT_RAMPON) 2 +set PROFILE_4(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_4(SHORT_ON_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_OFF_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_4(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_4(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_4(UI_TEMPLATE) $PROFILE_4(UI_DESCRIPTION) +set PROFILE_4(UI_HINT) 4 + +set PROFILE_5(SHORT_JT_OFF) 0 +set PROFILE_5(SHORT_JT_ON) 0 +set PROFILE_5(SHORT_JT_OFFDELAY) 0 +set PROFILE_5(SHORT_JT_ONDELAY) 0 +set PROFILE_5(SHORT_JT_RAMPOFF) 0 +set PROFILE_5(SHORT_JT_RAMPON) 0 +set PROFILE_5(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_5(UI_TEMPLATE) $PROFILE_5(UI_DESCRIPTION) +set PROFILE_5(UI_HINT) 5 + +# hier folgen die eventuellen Subsets + +# "humidity" +set SUBSET_1(NAME) "\${subset_1}" +set SUBSET_1(SUBSET_OPTION_VALUE) 1 +set SUBSET_1(SHORT_CT_OFF) 4 +set SUBSET_1(SHORT_CT_OFFDELAY) 4 +set SUBSET_1(SHORT_CT_ON) 4 +set SUBSET_1(SHORT_CT_ONDELAY) 4 +set SUBSET_1(SHORT_CT_RAMPOFF) 4 +set SUBSET_1(SHORT_CT_RAMPON) 4 + +# "water" +set SUBSET_2(NAME) "\${subset_2}" +set SUBSET_2(SUBSET_OPTION_VALUE) 2 +set SUBSET_2(SHORT_CT_OFF) 1 +set SUBSET_2(SHORT_CT_OFFDELAY) 1 +set SUBSET_2(SHORT_CT_ON) 1 +set SUBSET_2(SHORT_CT_ONDELAY) 1 +set SUBSET_2(SHORT_CT_RAMPOFF) 1 +set SUBSET_2(SHORT_CT_RAMPON) 1 + +# "humidity OR water" +set SUBSET_3(NAME) "\${subset_3}" +set SUBSET_3(SUBSET_OPTION_VALUE) 3 +set SUBSET_3(SHORT_CT_OFF) 0 +set SUBSET_3(SHORT_CT_OFFDELAY) 0 +set SUBSET_3(SHORT_CT_ON) 0 +set SUBSET_3(SHORT_CT_ONDELAY) 0 +set SUBSET_3(SHORT_CT_RAMPOFF) 0 +set SUBSET_3(SHORT_CT_RAMPON) 0 + +# "absolutely dry" +set SUBSET_4(NAME) "\${subset_4}" +set SUBSET_4(SUBSET_OPTION_VALUE) 4 +set SUBSET_4(SHORT_CT_OFF) 2 +set SUBSET_4(SHORT_CT_OFFDELAY) 2 +set SUBSET_4(SHORT_CT_ON) 2 +set SUBSET_4(SHORT_CT_ONDELAY) 2 +set SUBSET_4(SHORT_CT_RAMPOFF) 2 +set SUBSET_4(SHORT_CT_RAMPON) 2 + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + +#2 Dimmer EIN + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#3 Dimmer AUS + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#4 Dimmer BLINK + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" +#5 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor diff --git a/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/WATER_DETECTION_TRANSMITTER.tcl.orig b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/WATER_DETECTION_TRANSMITTER.tcl.orig new file mode 100755 index 0000000000..48396f6968 --- /dev/null +++ b/buildroot-external/patches/occu/0188-WebUI-Fix-MissingEasymodeSHORT_ON_MIN_LEVEL/occu/WebUI/www/config/easymodes/UNIVERSAL_LIGHT_RECEIVER_PWM/WATER_DETECTION_TRANSMITTER.tcl.orig @@ -0,0 +1,538 @@ +#!/bin/tclsh + +source [file join $env(DOCUMENT_ROOT) config/easymodes/em_common.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/EnterFreeValue.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/options.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/hmip_helper.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/etc/uiElements.tcl] +source [file join $env(DOCUMENT_ROOT) config/easymodes/DIMMER_VIRTUAL_RECEIVER/getColorElement.tcl] + +set PROFILES_MAP(0) "\${expert}" +set PROFILES_MAP(1) "\${dimmer_toggle}" +set PROFILES_MAP(2) "\${dimmer_on}" +set PROFILES_MAP(3) "\${dimmer_off}" +set PROFILES_MAP(4) "\${blink}" +set PROFILES_MAP(5) "\${no_action}" + +set PROFILE_0(UI_HINT) 0 +set PROFILE_0(UI_DESCRIPTION) "Expertenprofil" +set PROFILE_0(UI_TEMPLATE) "Expertenprofil" + +# hier folgen die verschiedenen Profile + +set PROFILE_1(LONG_COND_VALUE_LO) 50 +set PROFILE_1(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_1(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_1(SHORT_CT_OFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_ON) {0 1 2 4} +set PROFILE_1(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_1(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_1(SHORT_DIM_MAX_LEVEL) 1.000000 +set PROFILE_1(SHORT_DIM_MIN_LEVEL) 0.000000 +set PROFILE_1(SHORT_DIM_STEP) 0.050000 +set PROFILE_1(SHORT_JT_OFF) 1 +set PROFILE_1(SHORT_JT_OFFDELAY) 5 +set PROFILE_1(SHORT_JT_ON) 4 +set PROFILE_1(SHORT_JT_ONDELAY) 2 +set PROFILE_1(SHORT_JT_RAMPOFF) 6 +set PROFILE_1(SHORT_JT_RAMPON) 3 +set PROFILE_1(SHORT_MULTIEXECUTE) 0 +set PROFILE_1(SHORT_OFFDELAY_BLINK) {0 1} +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OFFDELAYLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_BLINK_PERIOD_OLDLEVEL) 4 +set PROFILE_1(SHORT_OFFDELAY_STEP) 0.050000 +set PROFILE_1(SHORT_OFFDELAY_TIME_BASE) 0 +set PROFILE_1(SHORT_OFFDELAY_TIME_FACTOR) 0 +set PROFILE_1(SHORT_OFF_LEVEL) 0.000000 +set PROFILE_1(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_OFF_TIME_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_MODE) 0 +set PROFILE_1(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_1(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_1(SHORT_ON_MIN_LEVEL) {0.1 range 0.0 - 1.0} +set PROFILE_1(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_1(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_1(SHORT_ON_TIME_MODE) 0 +set PROFILE_1(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_1(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_1(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_1(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_1(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_1(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_1(SHORT_RAMP_START_STEP) 0.050000 +set PROFILE_1(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit eingeschaltet. Ist eine Einschaltverzögerungszeit eingestellt, so wird der Schalter erst nach Ablauf dieser Zeit eingeschaltet.
" +set PROFILE_1(UI_TEMPLATE) $PROFILE_1(UI_DESCRIPTION) +set PROFILE_1(UI_HINT) 1 + +set PROFILE_2(LONG_COND_VALUE_LO) 50 +set PROFILE_2(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_2(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_2(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_ON) {2 0 1 4} +set PROFILE_2(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_2(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_2(SHORT_JT_OFF) 1 +set PROFILE_2(SHORT_JT_OFFDELAY) 3 +set PROFILE_2(SHORT_JT_ON) 3 +set PROFILE_2(SHORT_JT_ONDELAY) 1 +set PROFILE_2(SHORT_JT_RAMPOFF) 2 +set PROFILE_2(SHORT_JT_RAMPON) 2 +set PROFILE_2(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_TIME_BASE) {7 range 0 - 7} +set PROFILE_2(SHORT_ON_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_2(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_2(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_2(SHORT_ON_TIME_MODE) 0 +set PROFILE_2(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_2(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_2(SHORT_PROFILE_REPETITIONS) {0 range 0 - 255} +set PROFILE_2(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_2(SHORT_RAMPON_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_2(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_2(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_2(UI_TEMPLATE) $PROFILE_2(UI_DESCRIPTION) +set PROFILE_2(UI_HINT) 2 + +set PROFILE_3(LONG_COND_VALUE_LO) 50 +set PROFILE_3(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_3(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_3(SHORT_CT_OFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_OFFDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_ON) {2 0 1 4} +set PROFILE_3(SHORT_CT_ONDELAY) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPOFF) {2 0 1 4} +set PROFILE_3(SHORT_CT_RAMPON) {2 0 1 4} +set PROFILE_3(SHORT_JT_OFF) 6 +set PROFILE_3(SHORT_JT_OFFDELAY) 6 +set PROFILE_3(SHORT_JT_ON) 4 +set PROFILE_3(SHORT_JT_ONDELAY) 6 +set PROFILE_3(SHORT_JT_RAMPOFF) 0 +set PROFILE_3(SHORT_JT_RAMPON) 5 +set PROFILE_3(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_3(SHORT_OFF_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_3(SHORT_OFF_TIME_BASE) {7 range 0 - 7} +set PROFILE_3(SHORT_OFF_TIME_FACTOR) {31 range 0 - 31} +set PROFILE_3(SHORT_OFF_TIME_MODE) 0 +set PROFILE_3(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_3(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_3(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_3(SHORT_RAMPOFF_TIME_FACTOR) {5 range 0 - 31} +set PROFILE_3(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_3(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_3(UI_TEMPLATE) $PROFILE_3(UI_DESCRIPTION) +set PROFILE_3(UI_HINT) 3 + +set PROFILE_4(LONG_COND_VALUE_LO) 51 +set PROFILE_4(SHORT_COND_VALUE_HI) {150 range 0 - 255} +set PROFILE_4(SHORT_COND_VALUE_LO) {50 range 0 - 255} +set PROFILE_4(SHORT_CT_OFF) {0 2 1 4} +set PROFILE_4(SHORT_CT_OFFDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_ON) {0 1 2 4} +set PROFILE_4(SHORT_CT_ONDELAY) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPOFF) {0 1 2 4} +set PROFILE_4(SHORT_CT_RAMPON) {0 1 2 4} +set PROFILE_4(SHORT_JT_OFF) 1 +set PROFILE_4(SHORT_JT_OFFDELAY) 2 +set PROFILE_4(SHORT_JT_ON) 3 +set PROFILE_4(SHORT_JT_ONDELAY) 2 +set PROFILE_4(SHORT_JT_RAMPOFF) 2 +set PROFILE_4(SHORT_JT_RAMPON) 2 +set PROFILE_4(SHORT_MULTIEXECUTE) {0 false} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_ON_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_ONDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_ONDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_ON_LEVEL) {1.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_ON_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_BASE) {1 range 0 - 7} +set PROFILE_4(SHORT_OFF_TIME_FACTOR) {1 range 0 - 31} +set PROFILE_4(SHORT_OFF_TIME_MODE) 0 +set PROFILE_4(SHORT_OFFDELAY_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_OFDELAY_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_OFF_LEVEL) {0.0 range 0.0 - 1.005} +set PROFILE_4(SHORT_OUTPUT_BEHAVIOUR) {0 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_COLOR) {7 range 0 - 7} +set PROFILE_4(SHORT_OPTICAL_SIGNAL_BEHAVIOUR) {1 range 0 - 12} +set PROFILE_4(SHORT_RAMPON_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPON_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_RAMPOFF_TIME_BASE) {0 range 0 - 7} +set PROFILE_4(SHORT_RAMPOFF_TIME_FACTOR) {0 range 0 - 31} +set PROFILE_4(SHORT_PROFILE_ACTION_TYPE) 1 +set PROFILE_4(UI_DESCRIPTION) "Beim Auslösen des Sensors wird der Schalter mindestens für die eingestellte Zeit ohne Verzögerung eingeschaltet.
" +set PROFILE_4(UI_TEMPLATE) $PROFILE_4(UI_DESCRIPTION) +set PROFILE_4(UI_HINT) 4 + +set PROFILE_5(SHORT_JT_OFF) 0 +set PROFILE_5(SHORT_JT_ON) 0 +set PROFILE_5(SHORT_JT_OFFDELAY) 0 +set PROFILE_5(SHORT_JT_ONDELAY) 0 +set PROFILE_5(SHORT_JT_RAMPOFF) 0 +set PROFILE_5(SHORT_JT_RAMPON) 0 +set PROFILE_5(UI_DESCRIPTION) "Der Bewegungsmelder ist außer Betrieb." +set PROFILE_5(UI_TEMPLATE) $PROFILE_5(UI_DESCRIPTION) +set PROFILE_5(UI_HINT) 5 + +# hier folgen die eventuellen Subsets + +# "humidity" +set SUBSET_1(NAME) "\${subset_1}" +set SUBSET_1(SUBSET_OPTION_VALUE) 1 +set SUBSET_1(SHORT_CT_OFF) 4 +set SUBSET_1(SHORT_CT_OFFDELAY) 4 +set SUBSET_1(SHORT_CT_ON) 4 +set SUBSET_1(SHORT_CT_ONDELAY) 4 +set SUBSET_1(SHORT_CT_RAMPOFF) 4 +set SUBSET_1(SHORT_CT_RAMPON) 4 + +# "water" +set SUBSET_2(NAME) "\${subset_2}" +set SUBSET_2(SUBSET_OPTION_VALUE) 2 +set SUBSET_2(SHORT_CT_OFF) 1 +set SUBSET_2(SHORT_CT_OFFDELAY) 1 +set SUBSET_2(SHORT_CT_ON) 1 +set SUBSET_2(SHORT_CT_ONDELAY) 1 +set SUBSET_2(SHORT_CT_RAMPOFF) 1 +set SUBSET_2(SHORT_CT_RAMPON) 1 + +# "humidity OR water" +set SUBSET_3(NAME) "\${subset_3}" +set SUBSET_3(SUBSET_OPTION_VALUE) 3 +set SUBSET_3(SHORT_CT_OFF) 0 +set SUBSET_3(SHORT_CT_OFFDELAY) 0 +set SUBSET_3(SHORT_CT_ON) 0 +set SUBSET_3(SHORT_CT_ONDELAY) 0 +set SUBSET_3(SHORT_CT_RAMPOFF) 0 +set SUBSET_3(SHORT_CT_RAMPON) 0 + +# "absolutely dry" +set SUBSET_4(NAME) "\${subset_4}" +set SUBSET_4(SUBSET_OPTION_VALUE) 4 +set SUBSET_4(SHORT_CT_OFF) 2 +set SUBSET_4(SHORT_CT_OFFDELAY) 2 +set SUBSET_4(SHORT_CT_ON) 2 +set SUBSET_4(SHORT_CT_ONDELAY) 2 +set SUBSET_4(SHORT_CT_RAMPOFF) 2 +set SUBSET_4(SHORT_CT_RAMPON) 2 + +proc set_htmlParams {iface address pps pps_descr special_input_id peer_type} { + + global url receiver_address sender_address dev_descr_sender dev_descr_receiver + upvar PROFILES_MAP PROFILES_MAP + upvar HTML_PARAMS HTML_PARAMS + upvar PROFILE_PNAME PROFILE_PNAME + upvar $pps ps + upvar $pps_descr ps_descr + + + # set sender_addr $sender_address + # puts "" + + # array set dev_ps [xmlrpc $url getParamset $sender_address MASTER] + + # set min_interval 4 + + foreach pro [array names PROFILES_MAP] { + upvar PROFILE_$pro PROFILE_$pro + } + + + set cur_profile [get_cur_profile2 ps PROFILES_MAP PROFILE_TMP $peer_type] + + #global SUBSETS + set name "x" + set i 1 + while {$name != ""} { + upvar SUBSET_$i SUBSET_$i + array set subset [array get SUBSET_$i] + set name "" + catch {set name $subset(NAME)} + array_clear subset + incr i + } + +# die Texte der Platzhalter einlesen + puts "" + puts "" + + set prn 0 + append HTML_PARAMS(separate_$prn) "
" + +#1 Switch toggle + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + + +#2 Dimmer EIN + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#3 Dimmer AUS + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" + +#4 Dimmer BLINK + incr prn + if {$cur_profile == $prn} then {array set PROFILE_$prn [array get ps]} + append HTML_PARAMS(separate_$prn) "
" +#5 + incr prn + append HTML_PARAMS(separate_$prn) "
" + +} + +constructor