Created
April 3, 2021 18:04
-
-
Save florian-asche/4e434a10a580da50c742a23d432d19ca to your computer and use it in GitHub Desktop.
FHEM Archetype MQTT2 RGBWW
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
################### | |
# RGBWW - DEVICES # | |
################### | |
define dev_tasmota_rgbww_5411 MQTT2_DEVICE | |
attr dev_tasmota_rgbww_5411 archetypeFilter TASMOTA-RGBW | |
attr dev_tasmota_rgbww_5411 alias RGBW - Licht - Schlafzimmer - Bett | |
attr dev_tasmota_rgbww_5411 room Schlafzimmer | |
attr dev_tasmota_rgbww_5411 group Global-RGB | |
attr dev_tasmota_rgbww_5411 deviceID 5411 | |
################### | |
# EXAMPLE - RGBWW # | |
################### | |
define archetype_tasmota_rgbww archetype TYPE=MQTT2_DEVICE:FILTER=archetypeFilter=TASMOTA-RGBWW | |
attr archetype_tasmota_rgbww userattr userattr IODev DbLogExclude devStateIcon event-min-interval event-on-change-reading group icon jsonMap lightSceneParamsToSave retain setList readingList useSetExtensions webCmd widgetOverride setStateList userReadings | |
attr archetype_tasmota_rgbww IODev mqtt2server | |
attr archetype_tasmota_rgbww devStateIcon {\ | |
if(ReadingsVal("$name","presence","error") =~ /Online/i){\ | |
if(ReadingsVal("$name","White","error") eq "0"){\ | |
Color::devStateIcon($name,"rgb","RGBColor","Dimmer","state");;;;\ | |
}else{\ | |
Color::devStateIcon($name,"dimmer","undef","White","state");;;;\ | |
}\ | |
}else{\ | |
return("*:WLAN_Status.0");;;;\ | |
}\ | |
} | |
attr archetype_tasmota_rgbww event-min-interval (ENERGY.*|POWER|Vcc|Wifi_RSSI|state|presence|sensor|setup|result):1800 | |
attr archetype_tasmota_rgbww event-on-change-reading (ENERGY.*|POWER|Vcc|Wifi_RSSI|state|presence|sensor|setup|result) | |
attr archetype_tasmota_rgbww DbLogExclude .* | |
attr archetype_tasmota_rgbww group RGB-Einzeln | |
attr archetype_tasmota_rgbww icon light_led_stripe_rgb | |
attr archetype_tasmota_rgbww jsonMap POWER:state | |
attr archetype_tasmota_rgbww lightSceneParamsToSave {if(ReadingsVal($DEVICE,"state","error") eq "ON"){if(ReadingsVal($DEVICE, "White", "error") eq "0"){"RGBColor,Dimmer"}else{"White"}}else{"state"}} | |
attr archetype_tasmota_rgbww retain 1 | |
attr archetype_tasmota_rgbww actual_setList\ | |
OFF:noArg /gosund_%deviceID%/cmnd/POWER 0\ | |
ON:noArg /gosund_%deviceID%/cmnd/POWER 1\ | |
RGBColor:colorpicker,RGB /gosund_%deviceID%/cmnd/Color2\ | |
Dimmer:colorpicker,BRI,0,5,80 /gosund_%deviceID%/cmnd/Dimmer\ | |
White:colorpicker,BRI,0,5,80 /gosund_%deviceID%/cmnd/White\ | |
CT:colorpicker,CT /gosund_%deviceID%/cmnd/CT\ | |
Fade:0 /gosund_%deviceID%/cmnd/Fade 0\ | |
Fade:1 /gosund_%deviceID%/cmnd/Fade 1\ | |
Speed:1-10 /gosund_%deviceID%/cmnd/Speed | |
attr archetype_tasmota_rgbww actual_readingList \ | |
/gosund_%deviceID%/tele/LWT:.* presence\ | |
/gosund_%deviceID%/tele/STATUS(2|5|11):.* { json2nameValue($EVENT, '', $JSONMAP) }\ | |
/gosund_%deviceID%/tele/INFO(1|2|3):.* { json2nameValue($EVENT, '', $JSONMAP) }\ | |
/gosund_%deviceID%/tele/STATE:.* { json2nameValue($EVENT, '', $JSONMAP) }\ | |
/gosund_%deviceID%/stat/RESULT:.* { json2nameValue($EVENT, '', $JSONMAP) }\ | |
/gosund_%deviceID%/stat/POWER:.* state | |
attr archetype_tasmota_rgbww useSetExtensions 1 | |
attr archetype_tasmota_rgbww webCmd RGBColor:Dimmer:White:CT:RGBColor ffffff:RGBColor ff0000:RGBColor 00ff00:RGBColor 0000ff:ON:OFF | |
attr archetype_tasmota_rgbww widgetOverride Dimmer:colorpicker,BRI,0,1,100 White:colorpicker,BRI,0,1,100 RGBColor:colorpicker,RGB CT:colorpicker,CT,153,1,500 | |
attr archetype_tasmota_rgbww setStateList ON OFF | |
attr archetype_tasmota_rgbww userReadings RGBColor {\ | |
my $color = ReadingsVal($name,"Color","error");;;;\ | |
$color =~ /([0-9a-fA-F]{6})/;;;;\ | |
return($1||"error");;;;\ | |
} | |
#SELF | |
attr archetype_tasmota_rgbww room System | |
attr archetype_tasmota_rgbww attributes userattr IODev DbLogExclude devStateIcon event-min-interval event-on-change-reading group icon jsonMap lightSceneParamsToSave retain setList readingList useSetExtensions webCmd widgetOverride setStateList userReadings | |
attr archetype_tasmota_rgbww attributesExclude attributes attributesExclude room | |
#attr archetype_tasmota_rgbww delteAttributes 0 | |
#attr archetype_tasmota_rgbww defined_by archetype.archetype_tasmota_rgbww |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment