NEWS
Probleme beim parsen von MQTT string in Datenpunkte
-
Hallo,
ich bin absolut ratlos nach nun mehr Stunden die ich mit dem Thema verbraucht habe. Ich habe meine Ölheizung mit einem Ebus Adapter (Raspberry) per MQTT an IO Broker angeschlossen. Die Daten kommen soweit auch schon mal an. Der Befehl sudo mosquitto_sub -d -v -t /# wirft folgende Werte auf der SSH Konsole am IOBroker Raspi aus:
Nun brauch ich diese ganzen Werte ja als Datenpunkte. Nach vielen stöbern habe ich folgendes Javascript geschrieben:
Das Ergebnis sieht aber so aus:
![alt text]( image url) -
@Theisy Welchen Wert (string) enthält der Datenpunkt 'mqtt.0.ebusd.broadcast.betrd' ?
Gemäß Log sind LF enthalten, die erst mal entfernt werden sollten.
var json = obj.state.val.replace('\n ',''); try {obj = JSON.parse(json); } catch (e) { console.error('Cannot parse: ' + json); return; } log(obj.kesseltemp.value); // usw.
-
@paul53 Vielen Dank für deine Rückmeldung. Nachdem ich deinen Hinweis (hoffentlich richtig) eingabut habe, erhalte ich schon mal einen Datenpunkt "kesseltemp" unter den Objekten mit den korrekten Werten, den ich auch für einen Graph weiterverarbeiten kann. Aber die anderen Werte werde nicht an das "Objekt" übergeben.
Ich poste hier nochmal mein Skript und den Log Auszug. Eventuell fällt dir noch was auf.
Vielen Dank schon mal, dein Hilfe ist eigentlich unbezahlbar ;-).
Script:
Log:
Logging IO Broker:
-
@paul53
Vielen Dank, habe meinen Fehler gefunden. (Zeile 13 und 14 fehlte das "obj").
Somit kann ich erstmal weiterbasteln.Danke für deine HIlfe