MQTT und usesetextensions

Begonnen von hermann1514, 05 November 2019, 22:55:29

Vorheriges Thema - Nächstes Thema

hermann1514

Hallo zusammen,

wie ich gestern gelernt habe kann man beim MQTT Device die usesetextentions auf 1 setzten und man kann über fhem auch mit on-for-timer usw. arbeiten.
Ich musste aber bei den Geräten das EventMap on:ON off:OFF entfernen damit es mit on-for-timer klappt.

Kann mir jemand erklären warum dass so ist? EventMap erweitert doch nur die Befehle.....-oder?

Gruß
Hermann


rudolfkoenig

ZitatEventMap erweitert doch nur die Befehle.....-oder?
Nein, eventMap aendert sie, und je nach Code wird es beruecksichtigt oder nicht.
SetExtensions sollte es aber tun, ausserdem neben on/off auch mit ON/OFF zurechtkommen, ist dein FHEM aktuell?

Habe gerade getestet:
define d dummy
attr d setList on off
attr d useSetExtensions
attr d eventMap on:ON off:OFF
set d ?
Unknown argument ?, choose one of on off on-till-overnight blink on-till off-for-timer on-for-timer off-till-overnight toggle off-till intervals


Btw: ich empfehle den Umstieg auf MQTT2

hermann1514

Hi, danke für die Info.

Was da nun genau schief gelaufen ist kann ich dann auch nicht sagen ;-)

Aber warum auf MQTT2?
Den MQTT Server direkt in FHEM laufen lassen?

Gruß
Hermann

rudolfkoenig

Weil MQTT2 von mir betreut wird :), und es gebaut wurde, um den Umgang von MQTT im FHEM zu vereinfachen.

Einige Vorteile von MQTT2_DEVICE (setExtensions, attrTemplate, json2nameValue) bekommt man (per MQTT2_CLIENT) auch mit mosquitto, MQTT2_SERVER vereinfacht zusaetzlich autocreate. Abgesehen davon braucht man fuer MQTT2 keine weiteren perl Module, aber das duerfte bei Dir jetzt kein Argument mehr sein.

hermann1514

Zitat von: rudolfkoenig am 05 November 2019, 23:23:06
Weil MQTT2 von mir betreut wird :), und es gebaut wurde, um den Umgang von MQTT im FHEM zu vereinfachen.

Einige Vorteile von MQTT2_DEVICE (setExtensions, attrTemplate, json2nameValue) bekommt man (per MQTT2_CLIENT) auch mit mosquitto, MQTT2_SERVER vereinfacht zusaetzlich autocreate. Abgesehen davon braucht man fuer MQTT2 keine weiteren perl Module, aber das duerfte bei Dir jetzt kein Argument mehr sein.

Das stimmt - aber trotzdem Danke.

Werde mir das in den nächsten Tagen mal anschauen.

Gruß
Hermann

hermann1514

Hi,
ich habe mal etwas in meiner MQTT Config verändert:

1. Mosquitto beendet
2. Habe einen MQTT2_Server in FHEM erstellt.
3. Bei der MQTT_GERNERIC_BRIDGE das IO Device geändert.

Soweit funktioniert auch alles - wie bisher.

Aber - es werden keine MQTT2_Devices angelegt?
Habe ich da noch einen Denkfehler?

Ich dachte, wenn ich nun ein bestehendes MQTT Device lösche - Tasmota neu starte oder ON/OFF schalte, wird im FHEM ein MQTT2_DEVICE erzeugt. Passiert leider nicht.

Autocreate ist aktiviert.

Idee?

Gruß
Hermann








rudolfkoenig

Falls ein Modul (in diesem Fall MQTT2_GENERIC_BRIDGE) sich fuer eine Nachricht zustaendig fuehlt, dann werden mit dieser Nachricht keine weiteren Module gestoert, und damit kommt MQTT2_DEVICE gar nicht dazu, was anzulegen.

Und ich meine, das ist auch richtig so.

hermann1514

Hi,

ich habe nun mal ein MQTT2_Device manuell eingerichtet - dann funktioniert alles.

Nun aber nochmal zum Autocreate - das bei mir nicht funktioniert.
Da ich die Generic Bridge auch in Benutzung habe, soll ja Autocreate deaktiviert werden - ist das Richtig?
Wenn das so ist (Warum eigentlich) - brauch ich mir darum ja keine Gedanken mehr machen ;-)

Gruß
Hermann