From 7677f23cf777cb96ed2a39aa3b3d8930570bc801 Mon Sep 17 00:00:00 2001 From: Beta-User <> Date: Sat, 28 Dec 2019 19:10:02 +0000 Subject: [PATCH] mqtt2.template: add tasmota rgbw and rgbwct git-svn-id: https://svn.fhem.de/fhem/trunk/fhem@20844 2b470e98-0d58-463d-a4d8-8e2adae1ed80 --- FHEM/98_RandomTimer.pm | 4 +- FHEM/lib/AttrTemplate/mqtt2.template | 60 ++++++++++++++++++++++++++++ MAINTAINER.txt | 2 +- 3 files changed, 63 insertions(+), 3 deletions(-) diff --git a/FHEM/98_RandomTimer.pm b/FHEM/98_RandomTimer.pm index 383cbb819..eeaff7426 100644 --- a/FHEM/98_RandomTimer.pm +++ b/FHEM/98_RandomTimer.pm @@ -382,8 +382,8 @@ sub RandomTimer_setState($) { my ($hash) = @_; if (RandomTimer_isDisabled($hash)) { - #$hash->{STATE} = "disabled"; - readingsSingleUpdate ($hash, "state", "disabled", 0); + my $dotrigger = ReadingsVal($hash->{NAME},"state","none") ne "disabled" ? 1 : 0; + readingsSingleUpdate ($hash, "state", "disabled", $dotrigger); } else { my $state = $hash->{helper}{active} ? "on" : "off"; readingsSingleUpdate ($hash, "state", $state, 1); diff --git a/FHEM/lib/AttrTemplate/mqtt2.template b/FHEM/lib/AttrTemplate/mqtt2.template index 0a8d6eac0..db7a64c2f 100644 --- a/FHEM/lib/AttrTemplate/mqtt2.template +++ b/FHEM/lib/AttrTemplate/mqtt2.template @@ -1047,6 +1047,66 @@ attr DEVICE stateFormat POWER1 attr DEVICE webCmd Color:Color ff0000:Color 00ff00:Color 0000ff:toggle:on:off attr DEVICE model tasmota_rgb_led_controller +name:tasmota_rgbw_led +filter:TYPE=MQTT2_DEVICE:FILTER=readingList=.*(tele|cmnd|stat).* +desc:Tasmota RGBW bulb or RGBW LED controller +order:A_05a1 +set DEVICE attrTemplate tasmota_basic_state_power1 +par:CMNDTOPIC;Command topic prefix, without trailing /;{ AttrVal("DEVICE","readingList","") =~ m,([^:]*)\b(tele|cmnd|stat)(/.*)?/LWT:, ? "${1}cmnd$3" : undef } +par:TELETOPIC;info topic prefix, without trailing /;{ AttrVal("DEVICE","readingList","") =~ m,([^:]*)\b(tele|cmnd|stat)(/.*)?/LWT:, ? "${1}tele$3" : undef } +par:STATTOPIC;ack topic prefix, without trailing /;{ AttrVal("DEVICE","readingList","") =~ m,([^:]*)\b(tele|cmnd|stat)(/.*)?/LWT:, ? "${1}stat$3" : undef } +par:ICON;ICON as set, defaults to light_control;{ AttrVal("DEVICE","icon","light_control") } +attr DEVICE icon ICON +deletereading -q DEVICE (?!associatedWith).* +attr DEVICE setList\ + off:noArg CMNDTOPIC/POWER1 0\ + on:noArg CMNDTOPIC/POWER1 1\ + toggle:noArg CMNDTOPIC/POWER1 2\ + Color:colorpicker,RGB CMNDTOPIC/COLOR\ + pct:colorpicker,BRI,0,5,100 CMNDTOPIC/DIMMER\ + white:colorpicker,BRI,0,5,100 { "CMNDTOPIC/COLOR ". sprintf("000000%02X",$EVTPART1*2.55) } +attr DEVICE readingList \ + TELETOPIC/LWT:.* LWT\ + TELETOPIC/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\ + TELETOPIC/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\ + TELETOPIC/INFO.:.* { json2nameValue($EVENT,'',$JSONMAP) }\ + TELETOPIC/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }\ + STATTOPIC/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\ + STATTOPIC/POWER1:.* state +attr DEVICE jsonMap POWER1:state Dimmer:pct Channel_4:white Channel_1:0 Channel_2:0 Channel_3:0 HSBColor:0 +attr DEVICE webCmd pct:white:Color +attr DEVICE webCmdLabel Helligkeit\ +:Weiss\ +:Farbe: +attr DEVICE devStateIcon {Color::devStateIcon($name,"rgb","Color","pct","state")} +attr DEVICE setStateList on off toggle +attr DEVICE model tasmota_rgbw_led + +name:tasmota_rgbwct_led +filter:TYPE=MQTT2_DEVICE:FILTER=readingList=.*(tele|cmnd|stat).* +desc:Tasmota RGBW bulb with CT option like LSC Smart Connect Candle 400lm RGBW +order:A_05a2 +set DEVICE attrTemplate tasmota_basic_state_power1 +set DEVICE attrTemplate tasmota_rgbw_led +par:CMNDTOPIC;Command topic prefix, without trailing /;{ AttrVal("DEVICE","readingList","") =~ m,([^:]*)\b(tele|cmnd|stat)(/.*)?/LWT:, ? "${1}cmnd$3" : undef } +par:TELETOPIC;info topic prefix, without trailing /;{ AttrVal("DEVICE","readingList","") =~ m,([^:]*)\b(tele|cmnd|stat)(/.*)?/LWT:, ? "${1}tele$3" : undef } +par:STATTOPIC;ack topic prefix, without trailing /;{ AttrVal("DEVICE","readingList","") =~ m,([^:]*)\b(tele|cmnd|stat)(/.*)?/LWT:, ? "${1}stat$3" : undef } +attr DEVICE setList\ + off:noArg CMNDTOPIC/POWER1 0\ + on:noArg CMNDTOPIC/POWER1 1\ + toggle:noArg CMNDTOPIC/POWER1 2\ + Color:colorpicker,RGB CMNDTOPIC/COLOR\ + pct:colorpicker,BRI,0,5,100 CMNDTOPIC/DIMMER\ + white:colorpicker,BRI,0,5,100 { "CMNDTOPIC/COLOR ". sprintf("000000%02X",$EVTPART1*2.55) }\ + CT:colorpicker,CT,153,5,500 CMNDTOPIC/CT +attr DEVICE jsonMap POWER1:state Dimmer:pct Channel_4:white Channel_1:0 Channel_2:0 Channel_3:0 HSBColor:0 Channel_5:0 +attr DEVICE webCmd pct:white:Color:CT +attr DEVICE webCmdLabel Helligkeit\ +:Weiss\ +:Farbe\ +:Temp +attr DEVICE model tasmota_rgbwct_led + #source post: https://forum.fhem.de/index.php/topic,105364.0.html name:tasmota_TuyaMCU_dimmer filter:TYPE=MQTT2_DEVICE:FILTER=readingList=.*(tele|cmnd|stat).* diff --git a/MAINTAINER.txt b/MAINTAINER.txt index 13ac12202..a3d26f03c 100644 --- a/MAINTAINER.txt +++ b/MAINTAINER.txt @@ -490,7 +490,7 @@ FHEM/98_GAEBUS.pm jamesgo Heizungssteuerung/Raumklima FHEM/98_GEOFANCY.pm loredo Unterstützende Dienste FHEM/98_GoogleAuth.pm betateilchen Unterstützende Dienste FHEM/98_GOOGLECAST.pm dominikkarall Multimedia -FHEM/98_Heating_Control.pm igami/Beta-User Unterstützende Dienste +FHEM/98_Heating_Control.pm Beta-User Unterstützende Dienste FHEM/98_help.pm betateilchen Sonstiges FHEM/98_HMinfo.pm martinp876 HomeMatic FHEM/98_HourCounter.pm john MAX