Autor Thema: MQTT2_Device autocreate Devicenamen  (Gelesen 847 mal)

Offline ToKa

  • Sr. Member
  • ****
  • Beiträge: 679
MQTT2_Device autocreate Devicenamen
« am: 26 Februar 2020, 19:36:17 »
Hallo zusammen,

ich nutze seit kurzem MQTT zur Verbindung zweier FHEM Instanzen. Das funktioniert mit MQTT2_Device sehr gut und ich verwende die autocreate Funktion.

Jetzt zu meiner Fragen:
1. Gibt es eine Möglichkeit dem autocreate beizubringen, dass nicht jedes neue Device mit MQTT2_ anfängt?
Also anstelle "MQTT2_E1_fl_FWS_Beleuchtung" nur "E1_fl_FWS_Beleuchtung" auf Basis meiner bridgeRegexp Definition.
2. Wenn das nicht geht, kann ich die automatisch erzeugten Devices umbenennen, ohne dass dies die Funktion beeinträchtigt bzw. wieder neue Devices mit dem Präfix angelegt werden?

Beste Grüße
Torsten
RaspberryPi3 mit RaZberry2
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
GreenWave: PowerNode 1 port
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Zipato Bulb 2

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 24484
Antw:MQTT2_Device autocreate Devicenamen
« Antwort #1 am: 26 Februar 2020, 19:50:24 »
1. nein, MQTT2_ als Prefix ist hartkodiert.
2. Soweit ich sehe ja, ich habe es aber nicht getestet. Bin aber bereit es zu fixen, wenn es nicht tut :)

Umbenennen kann man auch automatisch:fhem> defmod m2rename notify global:DEFINED.MQTT2_.* { my $n=$EVTPART1;; $n =~ s/^MQTT2_//;; fhem "rename $EVTPART1 $n"}

Offline ToKa

  • Sr. Member
  • ****
  • Beiträge: 679
Antw:MQTT2_Device autocreate Devicenamen
« Antwort #2 am: 26 Februar 2020, 20:13:27 »
Hallo Rudi,

danke für die schnelle Rückmeldung. War mal mutig und habe es mit einem Device probiert. Es funktioniert, die Daten werden ans und vom Device weiter übertragen bzw. es wird kein neues angelegt.

Das notify ist natürlich genial :)

Beste Grüße
Torsten
RaspberryPi3 mit RaZberry2
Fibaro: FGWPE/F-101 Switch & FIBARO System FGWPE/F Wall Plug Gen5, FGSD002 Smoke Sensor
GreenWave: PowerNode 1 port
EUROtronic: SPIRIT Wall Radiator Thermostat Valve Control
Zipato Bulb 2

Offline obi

  • Jr. Member
  • **
  • Beiträge: 82
Antw:MQTT2_Device autocreate Devicenamen
« Antwort #3 am: 12 Juni 2020, 14:07:16 »
Hallo zusammen,

bei mir funktioniert das mit dem Notify leider nicht wie bei Thorsten, obwohl das Event DEFINED im Eventmonitor erscheint.

@Rudi: wäre es zu viel verlangt den Device Prefix welcher durch das Modul vergeben wird per Attribut dem Modul hinzuzufügen, dass der User dies selbst einstellen kann?

VG Sebastian


Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 24484
Antw:MQTT2_Device autocreate Devicenamen
« Antwort #4 am: 12 Juni 2020, 15:14:11 »
Ich moechte Attribute nur dann einfuehren, wenn das nichts ander geht, oder es vielen Leuten die Arbeit erleichtert.
Viele Attribute bedeuten viel Doku (== viel zu lesen), schlechtere Bedienbarkeit, mehr Pflegeaufwand.

=>
- Wieso geht es nicht mit dem notify? Wie schauen die global:DEFINED Events aus? Gibt es eine Fehlermeldung?
- Falls 3 oder mehr Leute der Ansicht sind, dass ein Attribut doch sein soll, dann baue ich es ein.

Offline obi

  • Jr. Member
  • **
  • Beiträge: 82
Antw:MQTT2_Device autocreate Devicenamen
« Antwort #5 am: 12 Juni 2020, 15:58:12 »
Du hast natürlich recht wegen dem Aufwand.

Es hat sich jetzt auch erledigt. Jetzt funktioniert das Notify.

Offline kennymc.c

  • Full Member
  • ***
  • Beiträge: 183
Antw:MQTT2_Device autocreate Devicenamen
« Antwort #6 am: 07 September 2021, 20:51:52 »
Sorry fürs hochholen aber ich habe genau dieses Problem und durch die aktuellen Probleme mit dem alten MQTT Modul werden vermutlich bald viele auf das neue umsteigen müssen und nicht mehr ihre alten Device Namen behalten können. Das ist gerade fürs Logging ungünstig. Da ich außerhalb dieses Threads auch nirgends Infos zum hardgecodeten Prefix finden konnte, wäre etwas mehr Doku dazu eventuell sowieso sinnvoll. Ideal wäre beim autocreate angeben zu können, wie viele MQTT Topicebenen beim Devicenamen berücksichtig werden sollen. Bei ZigBee2MQTT hätte man mit ausschließlich der letzten Ebene automatisch den friendlyName, der auch in ZigBee2MQTT auftaucht und dem Verhalten des alten XiaomiMQTTDevice Moduls entspricht.

Offline rudolfkoenig

  • Administrator
  • Hero Member
  • *****
  • Beiträge: 24484
Antw:MQTT2_Device autocreate Devicenamen
« Antwort #7 am: 08 September 2021, 22:03:36 »
Ich bleibe dabei: es ist einfacher per Hand die Geraete umzubenennen, als in den Tiefen der Doku einen Parameter dafuer zu finden.
Die Perfektionisten koennen das rename-notify von oben verwenden.