2
0
mirror of https://github.com/fhem/fhem-mirror.git synced 2025-02-08 05:15:10 +00:00

mqtt2.template:small changes to z2m, OMG and tasmota venetian blind

git-svn-id: https://svn.fhem.de/fhem/trunk@25706 2b470e98-0d58-463d-a4d8-8e2adae1ed80
This commit is contained in:
Beta-User 2022-02-19 05:19:55 +00:00
parent 68ae11904f
commit ed19c244f7

View File

@ -135,9 +135,8 @@ attr DEVICE devicetopic BASE_TOPIC
attr DEVICE bridgeRegexp\
BASE_TOPIC/([A-Za-z0-9._]+)[/]?.*:.* "zigbee_$1"
attr DEVICE getList\
devicelist:noArg log $\DEVICETOPIC/bridge/config/devices/get\
networkmap_raw:noArg raw $\DEVICETOPIC/bridge/networkmap raw\
networkmap_graphviz:noArg graphviz $\DEVICETOPIC/bridge/networkmap graphviz
networkmap_raw:noArg raw $\DEVICETOPIC/bridge/request/networkmap raw\
networkmap_graphviz:noArg graphviz $\DEVICETOPIC/bridge/request/networkmap graphviz
attr DEVICE readingList\
$\DEVICETOPIC/bridge/state:.* state\
$\DEVICETOPIC/bridge/config/devices:.* {}\
@ -148,9 +147,7 @@ attr DEVICE readingList\
$\DEVICETOPIC/bridge/log:.*\"type\".\"devices\".\"message\".* devices\
$\DEVICETOPIC/bridge/log:.* log\
$\DEVICETOPIC/bridge/logging:.* { json2nameValue($EVENT,'log_') }\
$\DEVICETOPIC/bridge/networkmap:.* {}\
$\DEVICETOPIC/bridge/networkmap/graphviz:.* graphviz\
$\DEVICETOPIC/bridge/networkmap/raw:.* raw\
$\DEVICETOPIC/bridge/response/networkmap:.* { my $type = $EVENT =~ m/.*,"type":"(raw|graphviz)",.*/ ? $1 : 'networkmap'; $EVENT =~ m/{"data":\{.*"value":"?(.*[^"])"?\},"status":"ok"\}/ ? { $type=>$1 } : {} }\
$\DEVICETOPIC/bridge/devices:.* devices\
$\DEVICETOPIC/bridge/info:.* info\
$\DEVICETOPIC/bridge/groups:.* groups\
@ -181,7 +178,7 @@ attr DEVICE comment To check for new updates of the deamon software, you might w
#set DEVICE attrTemplate do_general_mqtt_cleanup ADD_TO_IO_IGNOREREGEXP=BASE_TOPIC/[A-Za-z0-9._]+/set
set DEVICE attrTemplate do_general_mqtt_cleanup
attr DEVICE model zigbee2mqtt_bridge
setreading DEVICE attrTemplateVersion 20220114
setreading DEVICE attrTemplateVersion 20220218
# Based on https://forum.fhem.de/index.php/topic,94060.msg872371.html#msg872371
@ -1620,7 +1617,7 @@ attr DEVICE readingList \
STATTOPIC/POWER1:.* {{'state' => 'opening'} if $EVENT eq 'on'}\
STATTOPIC/POWER2:.* {{'state' => 'closing'} if $EVENT eq 'on'}\
STATTOPIC/SHUTTER1:.* state
attr DEVICE devStateIcon {my $onl = ReadingsVal($name,'LWT','Offline') eq 'Offline' ? 'rot' : 'gruen'; $onl = FW_makeImage("10px-kreis-$onl"); my $ip = ReadingsVal($name,'IPAddress','none'); my $pct = maxNum(int((109 - ReadingsNum($name,'pct',0))/10)*10, 1); my $open = ReadingsVal($name,'state',''); my $lvicon = $open eq 'opening' ? 'fts_shutter_up@red' : $open eq 'closing' ? 'fts_shutter_down@red' : "fts_shutter_$pct"; $lvicon = FW_makeImage($lvicon); my $lvcmd = ($open eq 'opening' || $open eq 'closing') ? 'stop' : $pct > 50 ? 'close' : 'open'; my $slt = ReadingsNum($name,'tiltSlat',90); my $slticon = 'fts_blade_arc_close_'; $slticon .= $slt > 0 ? '00' : $slt > -45 ? '50' : '100'; $slticon = FW_makeImage($slticon); my $sltcmd = $slt > 0 ? 'closeSlat' : $slt > -45 ? 'openSlat' : 'halfSlat'; qq(<a href="http://$ip" target="_blank">$onl</a> <div><a href="/fhem?cmd.dummy=set $name $lvcmd&XHR=1">$lvicon</a></div> <div><a href="/fhem?cmd.dummy=set $name $sltcmd&XHR=1">$slticon $slt</a>) }
attr DEVICE devStateIcon {my $onl = ReadingsVal($name,'LWT','Offline') eq 'Offline' ? 'rot' : 'gruen'; $onl = FW_makeImage("10px-kreis-$onl"); my $ip = ReadingsVal($name,'IPAddress','none'); my $pct = maxNum(int((109 - ReadingsNum($name,'pct',0))/10)*10, 1); my $open = ReadingsVal($name,'state',''); my $lvicon = $open eq 'opening' ? 'fts_shutter_up@red' : $open eq 'closing' ? 'fts_shutter_down@red' : "fts_shutter_$pct"; $lvicon = FW_makeImage($lvicon); my $lvcmd = ($open eq 'opening' || $open eq 'closing') ? 'stop' : $pct > 50 ? 'close' : 'open'; my $slt = ReadingsNum($name,'tiltSlat',90); my $slticon = 'fts_blade_arc_close_'; $slticon .= $slt == 0 ? '100' : $slt < 90 ? '50' : '00'; $slticon = FW_makeImage($slticon); my $sltcmd = $slt == 90 ? 'closeSlat' : $slt > 40 ? 'openSlat' : 'halfSlat'; qq(<a href="http://$ip" target="_blank">$onl</a> <div><a href="/fhem?cmd.dummy=set $name $lvcmd&XHR=1">$lvicon</a></div> <div><a href="/fhem?cmd.dummy=set $name $sltcmd&XHR=1">$slticon $slt</a>) }
attr DEVICE cmdIcon open:fts_shutter_up close:fts_shutter_down stop:fts_shutter_manual half:fts_shutter_50
attr DEVICE webCmd pct:tiltSlat
#attr DEVICE eventMap open:opens close:closes
@ -1636,7 +1633,7 @@ This is for a tilt range from -90 to 90 degrees, if you have different tilt opti
For calibration, tilt range settings, use of more than one shutter device and further information on the available commands see <a href="https://tasmota.github.io/docs/Blinds-and-Shutters/</a>.
farewell:template has been applied successfully. Now it's recommended to set shutter's open and close duration and shuttertiltconfig1, see short instruction in comment attribute or the <br><a href="https://tasmota.github.io/docs/Blinds-and-Shutters/">Tasmota wiki</a>.
attr DEVICE model tasmota_2ch_shutter_venetian_invert_0
setreading DEVICE attrTemplateVersion 20220216
setreading DEVICE attrTemplateVersion 20220218
option:{ CALLSPEECHRECOGN }
set DEVICE attrTemplate speechcontrol_type_blind
@ -4326,14 +4323,16 @@ attr DEVICE readingList\
BASE_ID/home_presence/.* {}\
homeassistant/.+?/config:.* { }
attr DEVICE setList\
restart:noArg BASE_ID/DEVNAME/commands/MQTTtoSYS/config {"cmd":"restart"}
restart:noArg BASE_ID/DEVNAME/commands/MQTTtoSYS/config {"cmd":"restart"}\
update { my $payload = $EVENT; $payload =~ s/$EVTPART0 //; qq(BASE_ID/DEVNAME/commands/firmware_update $payload) }
attr DEVICE stateFormat <a href="http://Sys_ip" target="_blank">\
LWT\
</a>Version: version
attr DEVICE icon ICON
attr DEVICE comment For syntax wrt. update and BT commands see https://github.com/1technophile/OpenMQTTGateway/releases/tag/v0.9.7
attr DEVICE devStateIcon online:10px-kreis-gruen offline.*:10px-kreis-rot
attr DEVICE model OpenMQTTGateway_MCU
setreading DEVICE attrTemplateVersion 20211207
setreading DEVICE attrTemplateVersion 20220218
{ AttrTemplate_Initialize() }
name:OpenMQTTGateway_BT_scanner
@ -4349,6 +4348,7 @@ attr DEVICE readingList\
BASE_ID/DEVNAME/BTtoMQTT/([0-9A-Z]+)/[^:]+:.* { $TOPIC =~ m,BTtoMQTT/([0-9A-Z]+)/([^:]+),; { "${1}_$2"=>$EVENT }}\
BASE_ID/home_presence/DEVNAME:.* { return unless $EVENT =~ m,(..):(..):(..):(..):(..):(..),; json2nameValue($EVENT,"BT_".uc($1.$2.$3.$4.$5.$6)."_"); {"last"=>uc($1.$2.$3.$4.$5.$6)}}
attr DEVICE setList\
BT_config { my $payload = $EVENT; $payload =~ s/$EVTPART0 //; qq(BASE_ID/DEVNAME/commands/MQTTtoBT/config $payload) }\
BT_scan_now:noArg BASE_ID/DEVNAME/commands/MQTTtoBT/config {"interval":0}\
BT_scan_interval:textField BASE_ID/DEVNAME/commands/MQTTtoBT/config {"interval":$EVTPART1}\
BT_blacklist:textField BASE_ID/DEVNAME/commands/MQTTtoBT/config {"black-list":[$EVTPART1]}\
@ -4356,9 +4356,10 @@ attr DEVICE setList\
BT_minrssi:slider,-110,1,0 BASE_ID/DEVNAME/commands/MQTTtoBT/config {"minrssi":$EVTPART1}}\
deleteReadings:noArg {fhem "deletereading -q $NAME (?!associatedWith|attrTemplateVersion).* 86400"}
attr DEVICE periodicCmd deleteReadings:1440
attr DEVICE comment For syntax wrt. update and BT commands see https://github.com/1technophile/OpenMQTTGateway/releases/tag/v0.9.7
attr DEVICE stateFormat Last: last
attr DEVICE model OpenMQTTGateway_BT_scanner
setreading DEVICE attrTemplateVersion 20201208
setreading DEVICE attrTemplateVersion 20220218
name:OpenMQTTGateway_BT_gtag
prereq:{my @devices=devspec2array("model=OpenMQTTGateway_MCU");return 1 if $devices[0];return 0}