Datenübernahme von MQTT2 nach Userreadings oder direkt nach Filelog

Begonnen von SABINEMUELLER, 09 Juli 2021, 19:30:36

Vorheriges Thema - Nächstes Thema

SABINEMUELLER

Bitte um Hilfe.
Welche Möglichkeit gibt es die Daten von MQTT2 Device nach Filelog zu schreiben?

Ich habe folgende konfig:

define MQTT2_DHT11_Buero MQTT2_DEVICE DHT11_Buero
attr MQTT2_DHT11_Buero IODev MQTT2_HZ_Sensoren
attr MQTT2_DHT11_Buero autocreate 0
attr MQTT2_DHT11_Buero devStateStyle style="color:blue;;font-weight:bold"
attr MQTT2_DHT11_Buero event-min-interval 2, MQTT_DHT1_Buero_LOG:2
attr MQTT2_DHT11_Buero event-on-change-reading temperature,humidity,dewpoint
attr MQTT2_DHT11_Buero icon temperature_humidity

attr MQTT2_DHT11_Buero readingList tele/DHT11_Buero/LWT:.* LWT\
cmnd/DHT11_Buero/POWER:.* Power\
tele/DHT11_Buero/INFO.:.* { $EVENT =~ m,^..Info[1-3]..(.+).$, ?  json2nameValue($1,'',$JSONMAP) : json2nameValue($EVENT,'',$JSONMAP) }\
stat/DHT11_Buero/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\
stat/DHT11_Buero/POWER1:.* state\
tele/DHT11_Buero/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\
tele/DHT11_Buero/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\
tele/DHT11_Buero/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }

attr MQTT2_DHT11_Buero room MQTT->1_Status
attr MQTT2_DHT11_Buero stateFormat {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}
attr MQTT2_DHT11_Buero userReadings MQTT_DHT1_Buero_LOG:: .* {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}

define FileLog_MQTT2_DHT11_Buero FileLog ./log/MQTT2_DHT11_Buero_%Y_%m.log MQTT2_DHT11_Buero:MQTT_DHT1_Buero_LOG.*
setuuid FileLog_MQTT2_DHT11_Buero 60e84302-f33f-5d57-fc7f-697ffe090db6721a
attr FileLog_MQTT2_DHT11_Buero logtype text
attr FileLog_MQTT2_DHT11_Buero room MQTT->4_Log

Im stateFormat werden auf der WEB Oberfläche die Werte richtig angezeigt.
Es werden aber keine Werte ins Log-File geschrieben.
Wo ist mein Fehler? Gibt es noch eine andere Möglichkeit die Werte in ein FileLog zu speichern?
Wo bekomme ich Infos darüber was folgende Zeilen genau zu bedeuten haben und welche Infos Tasmota in FHEM bereitstellt? (Platine ist ein ESP1 mit DHT11 und geflashtem Tasmota)

tele/DHT11_Buero/LWT:.* LWT\
cmnd/DHT11_Buero/POWER:.* Power\
tele/DHT11_Buero/INFO.:.* { $EVENT =~ m,^..Info[1-3]..(.+).$, ?  json2nameValue($1,'',$JSONMAP) : json2nameValue($EVENT,'',$JSONMAP) }\
stat/DHT11_Buero/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\
stat/DHT11_Buero/POWER1:.* state\
tele/DHT11_Buero/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\
tele/DHT11_Buero/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\
tele/DHT11_Buero/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }

Mfg.
Sabine

Otto123

Hallo Sabine,

die Zeile ist falsch:
define FileLog_MQTT2_DHT11_Buero FileLog ./log/MQTT2_DHT11_Buero_%Y_%m.log MQTT2_DHT11_Buero:MQTT_DHT1_Buero_LOG.*

so sollte es sein.
define FileLog_MQTT2_DHT11_Buero FileLog ./log/MQTT2_DHT11_Buero_%Y_%m.log MQTT2_DHT11_Buero:.*


Du solltest beim posten Code Tags verwenden: https://forum.fhem.de/index.php/topic,71806.0.html

Erklärung der Readinglist
Vielleicht hilft das hier? https://wiki.fhem.de/wiki/MQTT2-Module_-_Praxisbeispiele
Oder der grundlegende MQTT Artikel im Wiki?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Nobbynews

Hallo Sabine,

auf wenn MQTT nicht mein Steckenpferd ist, sind mir 2 Sachen aufgefallen.
Zitat von: SABINEMUELLER am 09 Juli 2021, 19:30:36
attr MQTT2_DHT11_Buero event-min-interval 2, MQTT_DHT1_Buero_LOG:2
Hier erschließt sich mir der Sinn der führenden "2" nicht. Die Syntax ist doch <device>:Zeitspanne.
Soll wirklich alle 2 Sekunden ein event erzeugt werden oder sind 2 Minuten, also 120 Sekunden gemeint?
Zitat von: SABINEMUELLER am 09 Juli 2021, 19:30:36
attr MQTT2_DHT11_Buero stateFormat {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}
attr MQTT2_DHT11_Buero userReadings MQTT_DHT1_Buero_LOG:: .* {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}

define FileLog_MQTT2_DHT11_Buero FileLog ./log/MQTT2_DHT11_Buero_%Y_%m.log MQTT2_DHT11_Buero:MQTT_DHT1_Buero_LOG.*

Das userReading müsste mMn so lauten:
attr MQTT2_DHT11_Buero userReadings MQTT_DHT1_Buero_LOG:MQTT_DHT11_Buero:Temperature:.* {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}

Zusätzlich hat sich hinter dem zweiten Doppelpunkt ein Leerzeichen eingeschlichen.
Die Definition des FileLogs würde ich dann so vornehmen:
define FileLog_MQTT2_DHT11_Buero FileLog ./log/MQTT2_DHT11_Buero_%Y_%m.log MQTT2_DHT11_Buero:MQTT_DHT1_Buero_LOG:.*
Das deckt sich im Prinzip mit dem Hinweis von Otto, nur dass nicht alle event bzw. readings des device geloggt werden, sontern nur das userReading.

Norbert

Edit:
Definition des userReadings korrigiert

MadMax-FHEM

Und weil wir schon bei Attributen sind (min-interval):

Zitat
Syntax

Das event-min-interval Attribut wird in der folgenden Weise spezifiziert:

    attr <device> event-min-interval reading1:minInterval1[,reading2:minInterval2,...]

Die zu berücksichtigenden Readings sind als durch Komma getrennte Werte anzugeben, können aber auch über reguläre Ausdrücke zusammengefasst werden. Das minIntervall wird in Sekunden angegeben.

Wichtig: KOMMA SEPARIERTE Liste! Nicht KOMMA und dann ein LEERZEICHEN vor dem nächsten Eintrag! Sonst gehört das LEERZEICHEN zum nächsten Eintrag mit dazu!

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Otto123

Ehrlich gesagt habe ich mich da gestern durch schlechte Lesbarkeit und fürchterliche Namensgebungen einfach verlesen.🤣😭
Wie man auf die Idee kommt ein Userreading aus mehrfachen Namensteilen der beteiligten Geräte zu bilden? 😳🥺 Ersatzweise würde ich Willi nehmen.😄
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

SABINEMUELLER

Hallo und Danke für eure Antworten,

ich habe alle Vorschläge einschließlich der Umbenennung in"Willi" ausprobiert.
Leider keinen Erfolg.

Nochmal zur besseren Übersicht.
Ich habe einen ESP1-Chip mit DHT11 Sensor mit Tasmota "Topic=HZ_Sensoren" laufen.
In FHEM läuft ein MQTT2-Server "MQTT2_FHEM_Server" das FHEM-Device "HZS_Buero_DHT11" empfängt die Daten und zeigt mir diese in den Readings und in der Stateleiste "stateFormat" neben dem Device an (Werte werden auch aktualisiert).


define MQTT2_FHEM_Server MQTT2_SERVER 1883 global
attr MQTT2_FHEM_Server ignoreRegexp cmnd/[^:"]+:
attr MQTT2_FHEM_Server room MQTT->1_Status

define HZS_Buero_DHT11 MQTT2_DEVICE MQTT2_FHEM_Server
attr HZS_Buero_DHT11 IODev MQTT2_HZ_Sensoren
attr HZS_Buero_DHT11 autocreate 0
attr HZS_Buero_DHT11 devStateStyle style="color:blue;;font-weight:bold"
attr HZS_Buero_DHT11 event-min-interval 120,HZS_Buero_DHT11_LOG:120
attr HZS_Buero_DHT11 event-on-change-reading temperature,humidity,dewpoint
attr HZS_Buero_DHT11 icon temperature_humidity
attr HZS_Buero_DHT11 readingList tele/HZ_Sensoren/LWT:.* LWT\
cmnd/HZ_Sensoren/POWER:.* Power\
tele/HZ_Sensoren/INFO.:.* { $EVENT =~ m,^..Info[1-3]..(.+).$, ?  json2nameValue($1,'',$JSONMAP) : json2nameValue($EVENT,'',$JSONMAP) }\
stat/HZ_Sensoren/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }\
stat/HZ_Sensoren/POWER1:.* state\
tele/HZ_Sensoren/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }\
tele/HZ_Sensoren/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }\
tele/HZ_Sensoren/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
attr HZS_Buero_DHT11 room MQTT->1_Status
attr HZS_Buero_DHT11 stateFormat {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}
attr HZS_Buero_DHT11 userReadings Willi_LOG:HZS_Buero_DHT11:.* {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}

define FileLog_HZS_Buero_DHT11 FileLog ./log/HZS_Buero_DHT11_%Y_%m.log HZS_Buero_DHT11:Willi_LOG:.*
attr FileLog_HZS_Buero_DHT11 logtype text
attr FileLog_HZS_Buero_DHT11 room MQTT->4_Log


Es wird ein Log-File angelegt aber keine Daten eingetragen.
Meine Vermutung ist, dass die Daten aus dem MQTT2-Device nicht an das userreading übergeben werden oder das userreading die Daten nicht in das Log-File überträgt. 
Ich bin mir aber auch nicht sicher ob ich das mit dem userreading so überhaupt machen kann.
Vieleicht gibt es aber auch eine einfachere Lösung wie Nobbynews andeutungsweise schrieb "Das deckt sich im Prinzip mit dem Hinweis von Otto, nur dass nicht alle event bzw. readings des device geloggt werden, sontern nur das userReading."
Wie kann ich alle oder selektierte events bzw. readings loggen?

Gruß
Sabine

TomLee

ZitatWie kann ich alle oder selektierte events bzw. readings loggen?

Am einfachsten, dann kann man auch keinen Fehler machen, über den Wizard oben in dem FileLog-Device, mit bspw:

set FileLog_HZS_Buero_DHT11 addRegexpPart HZS_Buero_DHT11 <readingname>

das gewünschte Reading in der DEF ergänzen.

Gruß

Thomas

edit:

und entfernen mit removeRegexpPart, im Wizard

Otto123

Hi,

das hier scheint falsch:
attr HZS_Buero_DHT11 userReadings Willi_LOG:HZS_Buero_DHT11:.* {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}
Du kannst nicht mit dem Gerät triggern
Willi_LOG:HZS_Buero_DHT11:.*
sondern mit einem Reading im Gerät
Willi_LOG:DHT11-02_Temperature:.*

Da Du Zahlen lesen willst: nimm ReadingsNum() anstatt ReadingsVal().

Deine Device Definition ist "komisch": Du verwendest $JSONMAP, hast aber gar kein attr jsonMap definiert?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Nobbynews

Zitat von: SABINEMUELLER am 11 Juli 2021, 16:48:38

attr HZS_Buero_DHT11 event-min-interval 120,HZS_Buero_DHT11_LOG:120

Das Attribut ist mMn immer noch falsch gesetzt. Die "120," vorneweg sind falsch und gehören da nicht hin.
Außerdem muss hier das neue userReading WILLI_LOG eingetragen werden.
Zitat von: SABINEMUELLER am 11 Juli 2021, 16:48:38

attr HZS_Buero_DHT11 userReadings Willi_LOG:HZS_Buero_DHT11:.* {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}

Das war mein Fehler. Sorry. Otto hat es korrigiert.

Wobei mir noch etwas aufgefallen ist.
Zitat von: SABINEMUELLER am 11 Juli 2021, 16:48:38

attr HZS_Buero_DHT11 event-on-change-reading temperature,humidity,dewpoint

Gibt es diese Readings im device HZS_Buero_DHT11 überhaupt? Im userReading heißen die DHT11-02_Temperature, DHT11-02_Humidity und DHT11-02_DewPoint. Wenn nicht, passiert da garnichts.

Norbert

SABINEMUELLER

Ich habe eure Vorschläge ausprobiert. Keinen Erfolg.

Wenn ich in der WEB Oberfläche unter Regexp parts -> set FileLog_HZS  addRegexpPart FileLog_HZS addRegexpPart.* auswähle,
wird das "2021-07-11_17:56:56 FileLog_HZS addRegexpPart FileLog_HZS addRegexpPart.*" ins Logfile geschrieben.

Wenn ich in der WEB Oberfläche unter Regexp parts -> set FileLog_HZS  addRegexpPart MQTT2_DVES_EAD76F DHT11-02_Temperature:.* auswähle,
wird das "2021-07-11_18:04:44 FileLog_HZS addRegexpPart MQTT2_DVES_EAD76F DHT11-02_Temperature:.*" ins Logfile geschrieben.

"DVES_EAD76F" das ist die Tasmota- Topic bezeichnung. Ich habe die aber in der Tasmota Config entsprechend angepasst. Geht trotzdem nicht.


Und das war es dann auch schon.

In dem Readings des Devices steht folgendes:

Readings
Buero_DHT11_LOG                  Temperatur: 29.9 °C Feuchte: 48.0 % Taupunkt: 17.7 °C                 2021-07-11 18:32:29
DHT11-02_DewPoint                17.7                                                                                                   2021-07-11 18:32:29
DHT11-02_Humidity                  48.0                                                                                                   2021-07-11 18:32:29
DHT11-02_Temperature           29.9                                                                                                   2021-07-11 18:32:29

Gruß
Sabine


Otto123

Du redest jetzt von einem völlig anderem Gerät?  :-[

Aber immerhin wird ein userReadings erzeugt
Buero_DHT11_LOG                  Temperatur: 29.9 °C Feuchte: 48.0 % Taupunkt: 17.7 °C                 2021-07-11 18:32:29

Aber ich verzweifle mit Deinen Angaben - glaub mir so wird Dir keiner helfen können! Poste bitte komplette lists von ALLEN beteiligten Devices - sonst hast Du Weihnachten noch kein log.
Und solange Du eigentlich nicht wirklich weißt was Du da tust: entferne bitte alle attr event.* - mach es später wenn zuviele Daten im Log stehen neu. :)

Gruß Otto 
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

TomLee

Das mit den lists ist offensichtlich auch noch nicht klar, verlink doch gleich dazu wie man das macht.

edit:

doch, sry, oben gibts eines.

edit:

nee, doch nicht, da ist die Definition aus der fhem.cfg rauskopiert.

SABINEMUELLER

Hier mein "List HZS": MQTT-Device

Internals:
   CFGFN      /opt/fhem/FHEM/MQTT_Sensoren.cfg
   CID        MQTT2_FHEM_Server
   DEF        MQTT2_FHEM_Server
   DEVICETOPIC HZS
   FUUID     
   IODev      MQTT2_FHEM_Server
   LASTInputDev MQTT2_FHEM_Server
   MQTT2_FHEM_Server_MSGCNT 87
   MQTT2_FHEM_Server_TIME 2021-07-11 19:17:44
   MSGCNT     87
   NAME       HZS
   NR         659
   STATE      Temperatur: 29.6 °C   Feuchte: 51.0 %   Taupunkt: 18.4 °C
   TYPE       MQTT2_DEVICE
   READINGS:
     2021-07-11 19:17:44   Buero_DHT11_LOG Temperatur: 29.6 °C   Feuchte: 51.0 %   Taupunkt: 18.4 °C
     2021-07-11 19:15:50   Buero_DHT11_LOG1 Temperatur: 29.9 °C   Feuchte: 51.0 %   Taupunkt: 18.7 °C
     2021-07-11 19:17:44   DHT11-02_DewPoint 18.4
     2021-07-11 19:17:44   DHT11-02_Humidity 51.0
     2021-07-11 19:17:44   DHT11-02_Temperature 29.6
     2021-07-11 19:17:40   FallbackTopic   cmnd/DVES_EAD76F_fb/
     2021-07-11 17:33:02   FullTopic       %prefix%/%topic%/
     2021-07-11 19:17:40   GroupTopic      cmnd/tasmotas/
     2021-07-11 19:17:44   Heap            29
     2021-07-11 19:17:40   Hostname        HZ_Sensoren
     2021-07-11 17:36:40   IODev           MQTT2_FHEM_Server
     2021-07-11 19:17:40   IPAddress       
     2021-07-11 19:17:40   LWT             Online
     2021-07-11 19:17:44   LoadAvg         19
     2021-07-11 19:17:40   Module          Generic
     2021-07-11 17:33:02   MqttClient      DVES_EAD76F
     2021-07-11 19:17:44   MqttCount       1
     2021-07-11 17:33:02   MqttHost       
     2021-07-11 17:33:02   MqttPassword   
     2021-07-11 17:33:02   MqttPort        1883
     2021-07-11 17:33:02   MqttUser        HZS
     2021-07-11 19:17:40   RestartReason   External System
     2021-07-11 19:17:44   Sleep           50
     2021-07-11 19:17:44   SleepMode       Dynamic
     2021-07-11 19:17:44   TempUnit        C
     2021-07-11 19:17:44   Time            2021-07-11T18:17:44
     2021-07-11 17:33:02   Topic           DVES_EAD76F
     2021-07-11 19:17:44   Uptime          0T00:00:09
     2021-07-11 19:17:44   UptimeSec       9
     2021-07-11 19:17:40   Version         9.5.0(tasmota)
     2021-07-11 19:17:40   WebServerMode   Admin
     2021-07-11 19:17:44   Wifi_AP         1
     2021-07-11 19:17:44   Wifi_BSSId     
     2021-07-11 19:17:44   Wifi_Channel    11
     2021-07-11 19:17:44   Wifi_Downtime   0T00:00:03
     2021-07-11 19:17:44   Wifi_LinkCount  1
     2021-07-11 19:17:44   Wifi_Mode       11n
     2021-07-11 19:17:44   Wifi_RSSI       90
     2021-07-11 19:17:44   Wifi_SSId       
     2021-07-11 19:17:44   Wifi_Signal     -55
Attributes:
   IODev      MQTT2_HZ_Sensoren
   autocreate 0
   devStateStyle style="color:blue;font-weight:bold"
   event-min-interval Buero_DHT11_LOG:60
   event-on-change-reading DHT11-02_Temperature,DHT11-02_Humidity,DHT11-02_DewPoint
   icon       temperature_humidity
   readingList tele/DVES_EAD76F/LWT:.* LWT
cmnd/DVES_EAD76F/POWER:.* Power
tele/DVES_EAD76F/INFO.:.* { $EVENT =~ m,^..Info[1-3]..(.+).$, ?  json2nameValue($1,'',$JSONMAP) : json2nameValue($EVENT,'',$JSONMAP) }
stat/DVES_EAD76F/RESULT:.* { json2nameValue($EVENT,'',$JSONMAP) }
stat/DVES_EAD76F/POWER1:.* state
tele/DVES_EAD76F/STATE:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/DVES_EAD76F/SENSOR:.* { json2nameValue($EVENT,'',$JSONMAP) }
tele/DVES_EAD76F/UPTIME:.* { json2nameValue($EVENT,'',$JSONMAP) }
   room       MQTT->1_Status
   stateFormat {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}
   userReadings Buero_DHT11_LOG:DHT11-02_Temperature:.* {sprintf("Temperatur: %.1f °C   Feuchte: %.1f %%   Taupunkt: %.1f °C", ReadingsVal($name,"DHT11-02_Temperature",0), ReadingsVal($name,"DHT11-02_Humidity",0), ReadingsVal($name,"DHT11-02_DewPoint",0))}


Das LOG1 stammt noch aus einer meiner Versuche.
Hier mein Server:


Internals:
   CFGFN      /opt/fhem/FHEM/MQTT_Sensoren.cfg
   CONNECTS   11
   Clients    :MQTT2_DEVICE:MQTT_GENERIC_BRIDGE:
   ClientsKeepOrder 1
   DEF        1883 global
   FD         42
   FUUID     
   NAME       MQTT2_FHEM_Server
   NR         639
   PORT       1883
   STATE      Initialized
   TYPE       MQTT2_SERVER
   MatchList:
     1:MQTT2_DEVICE ^.
     2:MQTT_GENERIC_BRIDGE ^.
   READINGS:
     2021-07-11 19:23:43   RETAIN          {"tasmota/discovery/xxxxxxEAD76F/config":"{\u0022ip\u0022:\u0022xxx.xxx.x.xxx\u0022,\u0022dn\u0022:\u0022Tasmota\u0022,\u0022fn\u0022:[\u0022Tasmota\u0022,null,null,null,null,null,null,null],\u0022hn\u0022:\u0022HZ_Sensoren\u0022,\u0022mac\u0022:\u0022xxxxxxEAD76F\u0022,\u0022md\u0022:\u0022Generic\u0022,\u0022ty\u0022:0,\u0022if\u0022:0,\u0022ofln\u0022:\u0022Offline\u0022,\u0022onln\u0022:\u0022Online\u0022,\u0022state\u0022:[\u0022off\u0022,\u0022on\u0022,\u0022toggle\u0022,\u0022hold\u0022],\u0022sw\u0022:\u00229.5.0\u0022,\u0022t\u0022:\u0022DVES_EAD76F\u0022,\u0022ft\u0022:\u0022%prefix%/%topic%/\u0022,\u0022tp\u0022:[\u0022cmnd\u0022,\u0022stat\u0022,\u0022tele\u0022],\u0022rl\u0022:[0,0,0,0,0,0,0,0],\u0022swc\u0022:[-1,-1,-1,-1,-1,-1,-1,-1],\u0022swn\u0022:[null,null,null,null,null,null,null,null],\u0022btn\u0022:[0,0,0,0,0,0,0,0],\u0022so\u0022:{\u00224\u0022:0,\u002211\u0022:0,\u002213\u0022:0,\u002217\u0022:0,\u002220\u0022:0,\u002230\u0022:0,\u002268\u0022:0,\u002273\u0022:0,\u002282\u0022:0,\u0022114\u0022:0,\u0022117\u0022:0},\u0022lk\u0022:1,\u0022lt_st\u0022:0,\u0022sho\u0022:[0,0,0,0],\u0022ver\u0022:1}","tasmota/discovery/xxxxxxEAD76F/sensors":"{\u0022sn\u0022:{\u0022Time\u0022:\u00222021-07-11T18:23:43\u0022,\u0022DHT11-01\u0022:{\u0022Temperature\u0022:null,\u0022Humidity\u0022:null,\u0022DewPoint\u0022:null},\u0022DHT11-02\u0022:{\u0022Temperature\u0022:29.5,\u0022Humidity\u0022:50.0,\u0022DewPoint\u0022:18.0},\u0022TempUnit\u0022:\u0022C\u0022},\u0022ver\u0022:1}","tele/DVES_EAD76F/LWT":"Online","tele/HZ_Sensoren/LWT":"Offline"}
     2021-07-11 19:23:34   nrclients       1
     2021-07-11 17:36:39   state           Initialized
   clients:
     MQTT2_FHEM_Server__49248 1
   retain:
     tasmota/discovery/xxxxxxEAD76F/config:
       ts         1626024223.32367
       val        {"ip":"","dn":"Tasmota","fn":["Tasmota",null,null,null,null,null,null,null],"hn":"HZ_Sensoren","mac":"","md":"Generic","ty":0,"if":0,"ofln":"Offline","onln":"Online","state":["off","on","toggle","hold"],"sw":"9.5.0","t":"DVES_EAD76F","ft":"%prefix%/%topic%/","tp":["cmnd","stat","tele"],"rl":[0,0,0,0,0,0,0,0],"swc":[-1,-1,-1,-1,-1,-1,-1,-1],"swn":[null,null,null,null,null,null,null,null],"btn":[0,0,0,0,0,0,0,0],"so":{"4":0,"11":0,"13":0,"17":0,"20":0,"30":0,"68":0,"73":0,"82":0,"114":0,"117":0},"lk":1,"lt_st":0,"sho":[0,0,0,0],"ver":1}
     tasmota/discovery/xxxxxxEAD76F/sensors:
       ts         1626024223.88137
       val        {"sn":{"Time":"2021-07-11T18:23:43","DHT11-01":{"Temperature":null,"Humidity":null,"DewPoint":null},"DHT11-02":{"Temperature":29.5,"Humidity":50.0,"DewPoint":18.0},"TempUnit":"C"},"ver":1}
     tele/DVES_EAD76F/LWT:
       ts         1626024214.01828
       val        Online
     tele/HZ_Sensoren/LWT:
       ts         1626017802.27137
       val        Offline
Attributes:
   ignoreRegexp cmnd/[^:"]+:
   room       MQTT->1_Status



Gruß
Sabine

Otto123

Dir geht es doch aber ums Log? Wo ist das Logdevice was Du aktuell beackerst?

ZitatCFGFN      /opt/fhem/FHEM/MQTT_Sensoren.cfg
::) ::) ::) gaaanz wichtig

ZitatignoreRegexp cmnd/[^:"]+:
Macht man sowas am Server? Was ist da der tiefere Grund?

Gruß Otto
Viele Grüße aus Leipzig  ⇉  nächster Stammtisch an der Lindennaundorfer Mühle
RaspberryPi B B+ B2 B3 B3+ ZeroW,HMLAN,HMUART,Homematic,Fritz!Box 7590,WRT3200ACS-OpenWrt,Sonos,VU+,Arduino nano,ESP8266,MQTT,Zigbee,deconz

Beta-User

Zitat von: Otto123 am 11 Juli 2021, 19:53:08
Macht man sowas am Server? Was ist da der tiefere Grund?
Steht so im Wiki - ich meine, aus gutem Grund...



eocr in dieser Form dürfte das Event unterbinden => kein log...
Server: HP-elitedesk@Debian 12, aktuelles FHEM@ConfigDB | CUL_HM (VCCU) | MQTT2: ZigBee2mqtt, MiLight@ESP-GW, BT@OpenMQTTGw | ZWave | SIGNALduino | MapleCUN | RHASSPY
svn: u.a Weekday-&RandomTimer, Twilight,  div. attrTemplate-files, MySensors