MQTT2_DEVICE, setExtensions abschalten...

Begonnen von tomleitner, 26 Oktober 2020, 14:31:44

Vorheriges Thema - Nächstes Thema

tomleitner

Hallo ...

... und sorry wenn das eine blöde Frage ist, ich habe aber die Antwort nirgends gefunden. Ich habe ein MQTT2_DEVICE und möchte exakt nur jene Set Befehle haben die ich in der setList angebe ... also kein AttrTemplate, on-for-timer etc. etc. alles weg....

Wie geht das?  useSetExtensions gibts ja keins für MQTT2_DEVICE?? Zumindest bietet er mir das nicht an ...

Ach ja: Und natürlich ist meine FHEM Installation auf dem neuesten Stand ...

Danke // Tom

P.S: Hier die das Device um das es geht ...

defmod AirPurifier MQTT2_DEVICE AirPurifier
attr AirPurifier IODev MQTT_Client
attr AirPurifier genericDeviceType ignore
attr AirPurifier group Sensoren
attr AirPurifier icon vent_exhaust_air
attr AirPurifier readingList tuya/aiibot_air_purifier/status.* online\
tuya/aiibot_air_purifier/dps/1/state.*  power\
tuya/aiibot_air_purifier/dps/2/state.*  pm25\
tuya/aiibot_air_purifier/dps/3/state.*  mode\
tuya/aiibot_air_purifier/dps/4/state.*  speed\
tuya/aiibot_air_purifier/dps/7/state.*  state7\
tuya/aiibot_air_purifier/dps/19/state.*  state19\
tuya/aiibot_air_purifier/dps/22/state.*  state22
attr AirPurifier room Device Status,MQTT,Wohnzimmer
attr AirPurifier setList on:noArg {"tuya/aiibot_air_purifier/dps/1/command true" }\
off:noArg {"tuya/aiibot_air_purifier/dps/1/command false" }\
speed:1,2,3,4 { "tuya/aiibot_air_purifier/dps/4/command " . "\"" . $EVTPART1 . "\"" }\
speed1:noArg { "tuya/aiibot_air_purifier/dps/4/command \"1\"" }\
speed2:noArg { "tuya/aiibot_air_purifier/dps/4/command \"2\"" }\
speed3:noArg { "tuya/aiibot_air_purifier/dps/4/command \"3\"" }\
speed4:noArg { "tuya/aiibot_air_purifier/dps/4/command \"4\"" }\
highspeed:noArg { "tuya/aiibot_air_purifier/dps/command  {'multiple': true, 'data': {'3': 'manual', '4': '4'}}"}\
mode:auto,manual,sleep { "tuya/aiibot_air_purifier/dps/3/command " . $EVTPART1 }\
auto:noArg { "tuya/aiibot_air_purifier/dps/3/command auto" }\
manual:noArg { "tuya/aiibot_air_purifier/dps/3/command manual" }\
sleep:noArg { "tuya/aiibot_air_purifier/dps/3/command sleep" }\
update:noArg { "tuya/aiibot_air_purifier/dps/command get-states" }
attr AirPurifier stateFormat Power: power, Mode: mode, Speed: speed, PM2.5: pm25

setstate AirPurifier Power: true, Mode: auto, Speed: 1, PM2.5: 1
setstate AirPurifier 2020-10-26 14:15:18 mode auto
setstate AirPurifier 2020-10-26 14:15:18 online online
setstate AirPurifier 2020-10-26 14:28:52 pm25 1
setstate AirPurifier 2020-10-26 14:15:18 power true
setstate AirPurifier 2020-10-26 14:15:18 speed 1
setstate AirPurifier 2020-10-26 14:01:27 state auto
setstate AirPurifier 2020-10-26 14:15:18 state19 0
setstate AirPurifier 2020-10-26 14:15:18 state22 1
setstate AirPurifier 2020-10-26 14:15:18 state7 false

rudolfkoenig


tomleitner

Zitat von: rudolfkoenig am 26 Oktober 2020, 14:39:50
Gar nicht / mit eigenem Modul.

Danke ... Das überrascht mich jetzt aber? In FHEM geht ja sonst fast alles?  Was ist der Grund dafür dass das nicht geht?


Beta-User

Zitat von: tomleitner am 26 Oktober 2020, 14:45:17
Was ist der Grund dafür dass das nicht geht?
...du bist m.E. der erste, der das nachfragt, in der Regel will man SetExtensions-Support haben...

fyi: AttrTemplate kann man global abschalten.

Was ist denn der Grund, warum du SetExtensions NICHT haben willst?

Und die setList könnte man m.E. in Teilen auch einfacher notieren, der erste Eintrag müßte eigentlich z.B. auch so funktionieren:
tuya/aiibot_air_purifier/dps/1/command true\
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

rudolfkoenig

Sicher geht das mit einem Hack auch jetzt, und Nutzen/Aufwand ist mAn zu klein, um es explizit im Modul aufzunehmen.

tomleitner

Zitat von: Beta-User am 26 Oktober 2020, 14:50:18
Was ist denn der Grund, warum du SetExtensions NICHT haben willst?
Ich kontrolliere einen Luftreiniger. Da machen Dinge wie "blink" etc. keinen Sinn. Ausserdem hat man ja mit attrTemplate immer die Gefahr das man alle Settings überschreibt mit Dingen die man gar nicht will ...

Danke für den Tip mit der besseren setList ...

Tom

LuckyDay

Zitatfyi: AttrTemplate kann man global abschalten.

Danke, Danke  :)

Das hätte ich nie ohne dem Stichwort global -> disableFeatures gefunden

Beta-User

Zitat von: fhem-hm-knecht am 26 Oktober 2020, 15:50:07
Danke, Danke  :)

Das hätte ich nie ohne dem Stichwort global -> disableFeatures gefunden
...immer wieder gerne...
Steht btw. auch seit einiger Zeit im Wiki: https://wiki.fhem.de/wiki/AttrTemplate#Deaktivierung_.C3.BCber_global

@tomleitner:
AttrTemplate zu deaktivieren kann ich in Teilen nachvollziehen, dass jemand "versehentlich" blink (richtig) auslöst, ist vermutlich eher die Ausname. Falls es dir eigentlich - etwas weitergehend gedacht - um ein "eingeschränktes" Benutzerinterface geht: Dafür wäre eventuell eine eigene Web-Instanz mit passendem allowed und entsprechend gesetzten allowedCommands auch eine Lösung.
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: MiLight@ESP-GW, BT@OpenMQTTGw | MySensors: seriell, v.a. 2.3.1@RS485 | ZWave | ZigBee@deCONZ | SIGNALduino | MapleCUN | RHASSPY
svn: u.a MySensors, Weekday-&RandomTimer, Twilight,  div. attrTemplate-files

tomleitner

@Beta-User:  danke. Ich werde mal attrTemplate global abschalten. Mit dem Rest werd ich wohl leben müssen.

LuckyDay

nicht unbedingt :)

defmod test MQTT2_DEVICE

attr test room Testroom
attr test setList an:noArg cmnd/haus/HM/cmd set hzpumpe_og on\
aus:noArg cmnd/haus/HM/cmd set hzpumpe_og off


wenn kein on oder off in der setList benützt wird --> gibt es auch kein blink , on-for-timer.... usw

tomleitner

Zitat von: fhem-hm-knecht am 26 Oktober 2020, 16:54:34
nicht unbedingt :)

defmod test MQTT2_DEVICE

attr test room Testroom
attr test setList an:noArg cmnd/haus/HM/cmd set hzpumpe_og on\
aus:noArg cmnd/haus/HM/cmd set hzpumpe_og off


wenn kein on oder off in der setList benützt wird --> gibt es auch kein blink , on-for-timer.... usw

... ja, das ist eine Variante. Werde on/off umbenennen ... ist zwar auch nicht so schön, aber immerhin ....

Fakenius

... also, ich wäre ein weiterer, der die SetExtensions gerne abschalten würde.  ;)
FS20, Homematic (DebMatic), Zigbee (deCONZ), LaCrosse, selbstgebaute Sensoren und Aktoren via MQTT
 (CUL, HB-RF-USB-2, Jeelink, SIGNALDuino, ConBee III)