Autor Thema: Zahl aus dem Reading auslesen {"idx":5,"nvalue":0,"svalue":"3191"}  (Gelesen 1793 mal)

Joshibaer

  • Gast
Ich habe gerade ein Problem die Daten , meine AD Wandlers die per MQTT geliefert werden aus zu lesen.

Die Daten vom AD-Wanler ADS1115 werden in dieser Form übermittelt

Client mosqsub/463-raspberrypi received PUBLISH (d0, q0, r0, m0, '/hooks/devices/6/SensorData/Analog', ... (37 bytes))
/hooks/devices/6/SensorData/Analog {"idx":6,"nvalue":0,"svalue":"-1.00"}

Also steht hinterher im Reading

Analog       {"idx":5,"nvalue":0,"svalue":"3191"}
Ich brauche aber nur die 3191 als Zahl.

Wie kann ich mir die Zahl aus dem Reading hohlen ?

Danke schonmal im Vorraus.

Offline dev0

  • Developer
  • Hero Member
  • ****
  • Beiträge: 3578
    • _.:|:._
Der einfachste Weg wäre das expandJSON Modul.

Joshibaer

  • Gast
Danke , das war ja einfacher als ich dachte, mit

# Device ADS1115-0 definieren
define Pooldruckio MQTT_DEVICE ADS1115
attr Pooldruckio IODev MyBroker
attr Pooldruckio group DruckSensoren
attr Pooldruckio room MQTT,Garten,Teich
attr Pooldruckio subscribeReading_Analog /hooks/devices/5/SensorData/Analog

define Pooldruck0 expandJSON Pooldruckio.*:.*:.{.*}
attr Pooldruck0 room MQTT

#Pooldruck

define Pooldruck readingsProxy Pooldruckio:svalue
attr Pooldruck alias Poolpumpendruck
attr Pooldruck alias Poolpumpendruck stateFormat {sprintf("%.0f bar ",ReadingsVal("Pooldruckio","svalue",0)) }
attr Pooldruck room MQTT

habe ich jetzt die Zahl als State umd muss sie nur noch umrechnen.

Joshibaer

  • Gast
Kleine Berichtigung.
attr Pooldruck alias Poolpumpendruck stateFormat {sprintf("%.0f bar ",ReadingsVal("Pooldruckio","svalue",0)) }
funktioniert nicht , ich habe den Sensor einfach im Node MCU Device kalibriert.

Offline Reinhart

  • Hero Member
  • *****
  • Beiträge: 2354
schau doch mal in den Readings wie expandJson es angelegt hat und setze den richtigen Namen dann ein.
Normalerweise ist vorne noch der Sensortyp mit dabei, wie im Beispiel des angehängten Bildes.

ReadingsVal($name,"xxxxxx",0
LG
Reinhart
FHEM auf Raspy4 mit Buster + SSD, mit FS20, Homematic, ESP8266, Sonoff, Electrodragon, eBus, RPi mit COC,NanoCUL, MapleCUL, HM-CFG-LAN Adapter, MQTT2, Alexa