FHEM Forum

FHEM - Hausautomations-Systeme => MQTT => Thema gestartet von: uxtuner am 17 Mai 2025, 08:01:18

Titel: mosquitto client
Beitrag von: uxtuner am 17 Mai 2025, 08:01:18
Hallo,

ich bin vom internen MQTT2 Server auf den Mosquitto Server gewechselt und habe einen MQTT2_Mosquitto_Client angelegt.

Die readings im Client sehen jetzt so aus:
myBroker:Wolf/192\x2e168\x2e179\x2e78/BM-2_0x35/Uhrzeit:.* Uhrzeit
Allerdings erwarten meine Devicekonfigurationen folgendes Format:
Wolf_19216817978:Wolf/192\x2e168\x2e179\x2e78/BM-2_0x35/Uhrzeit:.* Uhrzeit
Wie kann ich das ummappen?

Ich dachte das geht mit
attr MQTT2_Wolf_19216817978 jsonMap Wolf_19216817978:myBroker
Hat aber nicht funktioniert


 
Titel: Aw: mosquitto client
Beitrag von: Guybrush am 17 Mai 2025, 09:20:40
myBroker ist in deinem Fall doch nur die clientid, die der Sender eigentlich setzen muss? Ist "Wolf/192\x2e168\x2e179\x2e78" nicht schon ausreichend als unique topic? die clientid brauchst du insoweit ja nur, wenn es mehrere clientids mit denselbem topics gibt
Titel: Aw: mosquitto client
Beitrag von: rudolfkoenig am 17 Mai 2025, 10:13:57
ZitatWolf_19216817978:Wolf/192\x2e168\x2e179\x2e78/BM-2_0x35/Uhrzeit:.* Uhrzeit
Das ist kein Reading, das ist eine Zeile aus dem readingsList Attribut.

Das erste "Wort" der Zeile (bis zum Leerzeichen) wird als RegExp gegen  "<clientID>:<topic>:<message>" und "<topic>:<message>" geprueft, und wenn eines der beiden zutrifft, dann das Reading mit dem Rest der Zeile gebildet.

Die Loesung ist, in readingsList <clientID>: (d.h. Wolf_19216817978:) ueberall zu entfernen.
Das funktioniert auch dann, wenn man wieder MQTT2_SERVER verwendet.
Titel: Aw: mosquitto client
Beitrag von: uxtuner am 17 Mai 2025, 11:16:41
Danke Dir!

ich habe jetzt die readingList bei jedem Client angepasst und die ClientID gelöscht - funktioniert :-)