Autor Thema: [Gelöst] MQTT Readings werden nicht vereinzelt  (Gelesen 2932 mal)

Offline berbar

  • New Member
  • *
  • Beiträge: 39
[Gelöst] MQTT Readings werden nicht vereinzelt
« am: 20 März 2018, 10:58:23 »
Moin zusammen,

hab hier einen Sonoff Basic mit DS18B20 Temperatursensor. Funktioniert auch soweit, aber die Readings werden nicht vereinzelt. Als Ergebnis erhalte ich nur SENSOR. Möchte gerne measured-temp als einzelnes Reading. Modul expandJSON ist eingebunden und wie folgt definiert.

Hier das List von meinem Sonoff Basic.
Internals:
   CHANGED   
   IODev      myBroker
   NAME       SO_BASIC_01_dht
   NR         317
   STATE      off
   TYPE       MQTT_DEVICE
   OLDREADINGS:
   READINGS:
     2018-03-20 10:19:13   SENSOR          {"Time":"2018.03.20 10:19:12","DS18B20":{"Temperature":4.6},"TempUnit":"C"}
     2018-03-20 10:19:13   measured-temp   -99.00
     2018-03-20 09:30:38   state           OFF
     2018-03-20 10:19:13   transmission-state incoming publish received
   message_ids:
   publishSets:
     :
       topic      fhem/Testroom/SO_BASIC_01/cmnd/power
       values:
         on
         off
   sets:
     off       
     on         
   subscribe:
     fhem/Testroom/SO_BASIC_01/tele/SENSOR
     fhem/Testroom/SO_BASIC_01/stat/POWER
   subscribeExpr:
     ^fhem\/Testroom\/SO_BASIC_01\/tele\/SENSOR$
     ^fhem\/Testroom\/SO_BASIC_01\/stat\/POWER$
   subscribeReadings:
     fhem/Testroom/SO_BASIC_01/stat/POWER:
       cmd       
       name       state
     fhem/Testroom/SO_BASIC_01/tele/SENSOR:
       cmd       
       name       SENSOR
Attributes:
   IODev      myBroker
   comment    192.168.10.102
   event-on-change-reading state,subscribeReading_SENSOR
   eventMap   ON:on OFF:off
   publishSet on off fhem/Testroom/SO_BASIC_01/cmnd/power
   room       MQTT
   stateFormat state
   subscribeReading_SENSOR fhem/Testroom/SO_BASIC_01/tele/SENSOR
   subscribeReading_state fhem/Testroom/SO_BASIC_01/stat/POWER
   userReadings measured-temp {sprintf("%.2f",ReadingsVal("SO_BASIC_01_dht","temperature",-99))}
   verbose    1
   webCmd     on:off:toggle

Und hier das List vom EXPANDJSON

Internals:
   DEF        SO.*:SENSOR.*:.{.*} (Temperature)
   NAME       ej3
   NR         319
   NTFY_ORDER 50-ej3
   STATE      active
   TYPE       expandJSON
   s_regexp   SO.*:SENSOR.*:.{.*}
   t_regexp   (Temperature)
   version    1.12
   READINGS:
     2018-03-20 08:10:23   state           active
   helper:
     addReadingsPrefix 1
Attributes:
   addReadingsPrefix 1
   room       MQTT
« Letzte Änderung: 30 März 2018, 19:31:23 von berbar »
BananaPi, Fritz Box 7590, MapleCul, nanoCUL 1.67,  HM LAN, ZigBee II, deconz, FHEM 6.0
ESP-01 Garagentorsteuerung,  5xFS20ST, 1xFS20SU, 1xFS20SM4, 1xFS20SD, 12xMüller Tint GU10
2xHM-CC-TC, 4x HM-CC-VC, 8xHM-CC-RT-DN, 1xHM-TC-IT-WM-W-EU
Alexa-Fhem auf OrangePi One, FHEM2FHEM

Online rabehd

  • Hero Member
  • *****
  • Beiträge: 1337
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #1 am: 20 März 2018, 11:13:37 »
Wozu schreibt Dein Sonoff soviel?
Ich habe diesen Sensor an einem ESP32 und lasse nur die Temperatur übertragen.

Internals:
   IODev      MQTTBroker
   NAME       mqtt_AQ_Temperatur
   NR         630
   STATE      25.25 °C
   TYPE       MQTT_DEVICE
   Helper:
     DBLOG:
       Temperatur:
         logdb:
           TIME       1521540510.9874
           VALUE      25.25
   READINGS:
     2018-03-20 11:08:30   Temperatur      25.25
     2018-03-20 11:08:30   transmission-state incoming publish received
   message_ids:
   sets:
   subscribe:
     Aquarium/Temperatur
   subscribeExpr:
     ^Aquarium\/Temperatur$
   subscribeReadings:
     Aquarium/Temperatur:
       cmd       
       name       Temperatur
Attributes:
   IODev      MQTTBroker
   room       Aquarium,Test
   stateFormat Temperatur °C
   subscribeReading_Temperatur Aquarium/Temperatur
Auch funktionierende Lösungen kann man hinterfragen.

Offline berbar

  • New Member
  • *
  • Beiträge: 39
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #2 am: 20 März 2018, 12:50:31 »
Wozu schreibt Dein Sonoff soviel?
Ich habe diesen Sensor an einem ESP32 und lasse nur die Temperatur

Das scheint wohl die Ausgabe der Tasmota Firmware auf POWER zu sein.
Tasmota Version 5.11.1j
Build-Datum & -Uhrzeit 2018.03.15 00:13:59
Core-/SDK-Version 2_4_0/2.1.0 (deb1901)
BananaPi, Fritz Box 7590, MapleCul, nanoCUL 1.67,  HM LAN, ZigBee II, deconz, FHEM 6.0
ESP-01 Garagentorsteuerung,  5xFS20ST, 1xFS20SU, 1xFS20SM4, 1xFS20SD, 12xMüller Tint GU10
2xHM-CC-TC, 4x HM-CC-VC, 8xHM-CC-RT-DN, 1xHM-TC-IT-WM-W-EU
Alexa-Fhem auf OrangePi One, FHEM2FHEM

Online rabehd

  • Hero Member
  • *****
  • Beiträge: 1337
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #3 am: 20 März 2018, 13:00:32 »
Userreadings?
mit dem Teilstring von SENSOR
Auch funktionierende Lösungen kann man hinterfragen.

Offline berbar

  • New Member
  • *
  • Beiträge: 39
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #4 am: 20 März 2018, 13:18:04 »
Userreadings?
mit dem Teilstring von SENSOR

Ich war davon ausgegangen, dass expandJSON  die Temperatur als Einzelwertung bereistellt.
BananaPi, Fritz Box 7590, MapleCul, nanoCUL 1.67,  HM LAN, ZigBee II, deconz, FHEM 6.0
ESP-01 Garagentorsteuerung,  5xFS20ST, 1xFS20SU, 1xFS20SM4, 1xFS20SD, 12xMüller Tint GU10
2xHM-CC-TC, 4x HM-CC-VC, 8xHM-CC-RT-DN, 1xHM-TC-IT-WM-W-EU
Alexa-Fhem auf OrangePi One, FHEM2FHEM

Online rabehd

  • Hero Member
  • *****
  • Beiträge: 1337
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #5 am: 20 März 2018, 13:22:40 »
Auch funktionierende Lösungen kann man hinterfragen.

Offline berbar

  • New Member
  • *
  • Beiträge: 39
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #6 am: 20 März 2018, 22:17:24 »
https://forum.fhem.de/index.php?topic=79978.0 hilft nicht?

Danke für den Tipp. Hat aber leider nichts geholfen. Habe das mal komplett so nachgebaut.

Internals:
   CHANGED   
   IODev      myBroker
   NAME       SO_BASIC_01_TEMP
   NR         320
   STATE      -99.00
   TYPE       MQTT_DEVICE
   READINGS:
     2018-03-20 22:10:26   SENSOR          {"Time":"2018.03.20 22:10:25","DS18B20":{"Temperature":-0.6},"TempUnit":"C"}
     2018-03-20 22:10:26   transmission-state incoming publish received
   message_ids:
   sets:
   subscribe:
     fhem/Testroom/SO_BASIC_01/tele/SENSOR
   subscribeExpr:
     ^fhem\/Testroom\/SO_BASIC_01\/tele\/SENSOR$
   subscribeReadings:
     fhem/Testroom/SO_BASIC_01/tele/SENSOR:
       cmd       
       name       SENSOR
Attributes:
   IODev      myBroker
   comment    192.168.10.102
   event-on-change-reading state
   room       MQTT
   stateFormat {sprintf("%.2f",ReadingsVal($name,"DS18B20_Temperature",-99))}
   subscribeReading_SENSOR fhem/Testroom/SO_BASIC_01/tele/SENSOR
   verbose    1

Internals:
   DEF        SO.*:.*:.{.*}
   NAME       ej3
   NOTIFYDEV  SO.*
   NR         319
   NTFY_ORDER 50-ej3
   STATE      active
   TYPE       expandJSON
   s_regexp   SO.*:.*:.{.*}
   t_regexp   .*
   version    1.12
   READINGS:
     2018-03-20 21:44:53   state           active
   helper:
     addReadingsPrefix 1
Attributes:
   addReadingsPrefix 1
   room       MQTT
BananaPi, Fritz Box 7590, MapleCul, nanoCUL 1.67,  HM LAN, ZigBee II, deconz, FHEM 6.0
ESP-01 Garagentorsteuerung,  5xFS20ST, 1xFS20SU, 1xFS20SM4, 1xFS20SD, 12xMüller Tint GU10
2xHM-CC-TC, 4x HM-CC-VC, 8xHM-CC-RT-DN, 1xHM-TC-IT-WM-W-EU
Alexa-Fhem auf OrangePi One, FHEM2FHEM

Offline berbar

  • New Member
  • *
  • Beiträge: 39
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #7 am: 30 März 2018, 00:31:55 »
Hat vielleicht noch jemand eine Idee? Anscheinend zerlegt expandJSON geschachtelte MQTT Strings nicht. Komme hier einfach nicht weiter.
{"Time":"2018-03-29T23:24:09","ENERGY":{"Total":0.184,"Yesterday":0.000,"Today":0.185,"Period":0,"Power":3,"Factor":0.25,"Voltage":232,"Current":0.049}}
BananaPi, Fritz Box 7590, MapleCul, nanoCUL 1.67,  HM LAN, ZigBee II, deconz, FHEM 6.0
ESP-01 Garagentorsteuerung,  5xFS20ST, 1xFS20SU, 1xFS20SM4, 1xFS20SD, 12xMüller Tint GU10
2xHM-CC-TC, 4x HM-CC-VC, 8xHM-CC-RT-DN, 1xHM-TC-IT-WM-W-EU
Alexa-Fhem auf OrangePi One, FHEM2FHEM

Offline Gerold

  • Jr. Member
  • **
  • Beiträge: 57
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #8 am: 30 März 2018, 01:19:33 »
Ich habe dafür das 10_tasmota_device.pm Modul von https://github.com/klein0r/fhem-tasmota genommen. Die Readings werden damit automatisch angelegt, expandJSON ist nicht erforderlich.

Ein Video zu diesem Modul gibt es unter https://haus-automatisierung.com/hardware/sonoff/2017/12/20/sonoff-vorstellung-part-9.html

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3578
    • _.:|:._
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #9 am: 30 März 2018, 09:26:29 »
event-on-change-reading state
Damit löst das Reading SENOSR kein Event aus. Ohne Events wird auch nichts verarbeitet, egal ob notify, expandJSON, ... oder sonst etwas.

Offline berbar

  • New Member
  • *
  • Beiträge: 39
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #10 am: 30 März 2018, 18:23:18 »
Damit löst das Reading SENOSR kein Event aus. Ohne Events wird auch nichts verarbeitet, egal ob notify, expandJSON, ... oder sonst etwas.

Warum bekomme ich die Temperatur nicht als einzelnes Reading? Time und TempUnit funktionieren ja.

Internals:
   DEF        SON_BA_01_T:Sensor:.{.*} (Time|Temperature|TempUnit)
   NAME       ej3
   NR         319
   NTFY_ORDER 50-ej3
   STATE      active
   TYPE       expandJSON
   s_regexp   SON_BA_01_T:Sensor:.{.*}
   t_regexp   (Time|Temperature|TempUnit)
   version    1.12
   READINGS:
     2018-03-30 16:19:28   state           active
   helper:
Attributes:
   disable    0
   room       MQTT
   verbose    3
BananaPi, Fritz Box 7590, MapleCul, nanoCUL 1.67,  HM LAN, ZigBee II, deconz, FHEM 6.0
ESP-01 Garagentorsteuerung,  5xFS20ST, 1xFS20SU, 1xFS20SM4, 1xFS20SD, 12xMüller Tint GU10
2xHM-CC-TC, 4x HM-CC-VC, 8xHM-CC-RT-DN, 1xHM-TC-IT-WM-W-EU
Alexa-Fhem auf OrangePi One, FHEM2FHEM

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3578
    • _.:|:._
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #11 am: 30 März 2018, 19:19:45 »
Lass die target regex mal weg.

Offline berbar

  • New Member
  • *
  • Beiträge: 39
Antw:MQTT Readings werden nicht vereinzelt
« Antwort #12 am: 30 März 2018, 19:29:52 »
Lass die target regex mal weg.

Jetzt geht's.

Danke!
BananaPi, Fritz Box 7590, MapleCul, nanoCUL 1.67,  HM LAN, ZigBee II, deconz, FHEM 6.0
ESP-01 Garagentorsteuerung,  5xFS20ST, 1xFS20SU, 1xFS20SM4, 1xFS20SD, 12xMüller Tint GU10
2xHM-CC-TC, 4x HM-CC-VC, 8xHM-CC-RT-DN, 1xHM-TC-IT-WM-W-EU
Alexa-Fhem auf OrangePi One, FHEM2FHEM

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3578
    • _.:|:._
Antw:[Gelöst] MQTT Readings werden nicht vereinzelt
« Antwort #13 am: 30 März 2018, 19:41:02 »
Für die Nachwelt: Wenn die target regex benutzt wird, dann müssen die Readings so angegeben werden wie sie auch angelegt werden.
Gefällt mir Gefällt mir x 1 Liste anzeigen