NEWS
node-red datenabfrage mit funktion node
-
Hallo,
ich bin blutiger Anfänger und scheitere daran über eine function-node
einzelne Werte auszulesen.Der Code meines function-node ist wie folgt:
var msg = { payload: msg.payload};
return msg;Damit erhalte ich nachfolgende payload:
14.6.2023, 13:43:25node: debug 30
msg : Object
object
payload: object
pd.iconWifiMode: 0
pd.iconOverloadState: 0
pd.wattsInSum: 276
pd.wifiVer: 0
pd.iconLowTempMode: 0
pd.iconGasGenMode: 0
pd.iconBmsParallelMode: 0
pd.iconInvParallelState: 0
pd.typec2Watts: 0
pd.iconTypecState: 0
pd.iconCarMode: 1
pd.iconCoGasState: 0
pd.iconRcState: 0
pd.iconHiTempState: 0
pd.iconHiTempMode: 0
pd.iconEcoMode: 0
pd.usb1Watts: 0
pd.standByMode: 120
latestTimeStamp: 1686743004837Folgendes funktioniert
var msg = { payload: msg.payload.latestTimeStamp};
return msg;Wenn ich jedoch einen Wert pd.xxx abfragen will bz.B.
var msg = { payload: msg.payload.pd.standByMode};
return msg;bekomme ich eine Fehlermeldung. Cannot read property...
Kann mir jemand sagen, woran der Fehler liegt ?
-
Hallo,
ich bin blutiger Anfänger und scheitere daran über eine function-node
einzelne Werte auszulesen.Der Code meines function-node ist wie folgt:
var msg = { payload: msg.payload};
return msg;Damit erhalte ich nachfolgende payload:
14.6.2023, 13:43:25node: debug 30
msg : Object
object
payload: object
pd.iconWifiMode: 0
pd.iconOverloadState: 0
pd.wattsInSum: 276
pd.wifiVer: 0
pd.iconLowTempMode: 0
pd.iconGasGenMode: 0
pd.iconBmsParallelMode: 0
pd.iconInvParallelState: 0
pd.typec2Watts: 0
pd.iconTypecState: 0
pd.iconCarMode: 1
pd.iconCoGasState: 0
pd.iconRcState: 0
pd.iconHiTempState: 0
pd.iconHiTempMode: 0
pd.iconEcoMode: 0
pd.usb1Watts: 0
pd.standByMode: 120
latestTimeStamp: 1686743004837Folgendes funktioniert
var msg = { payload: msg.payload.latestTimeStamp};
return msg;Wenn ich jedoch einen Wert pd.xxx abfragen will bz.B.
var msg = { payload: msg.payload.pd.standByMode};
return msg;bekomme ich eine Fehlermeldung. Cannot read property...
Kann mir jemand sagen, woran der Fehler liegt ?
@michael-doll sagte in node-red datenabfrage mit funktion node:
Das schaut nicht nach einem Objekt aus - das pd-
Zum einen ist es schade ,dass Du gleich anfängst solche Dinge mit function Nodes zu probieren, aber um das beurteilen zu können, kopiere den Wert aus dem Debug Fenster hier in Code-Tags, wenn man das nachvollziehen soll. Ggf. auch noch den Flow.

-
@michael-doll sagte in node-red datenabfrage mit funktion node:
Das schaut nicht nach einem Objekt aus - das pd-
Zum einen ist es schade ,dass Du gleich anfängst solche Dinge mit function Nodes zu probieren, aber um das beurteilen zu können, kopiere den Wert aus dem Debug Fenster hier in Code-Tags, wenn man das nachvollziehen soll. Ggf. auch noch den Flow.

@mickym
Hallo danke für die schnelle Antwort.
Die der Wert aus dem Debug-Fenster.{"pd.iconWifiMode":0,"pd.iconOverloadState":0,"pd.wattsInSum":381,"pd.wifiVer":0,"pd.iconLowTempMode":0,"pd.iconGasGenMode":0,"pd.iconBmsParallelMode":0,"pd.iconInvParallelState":0,"pd.typec2Watts":0,"pd.iconTypecState":0,"pd.iconCarMode":1,"pd.iconCoGasState":0,"pd.iconRcState":0,"pd.iconHiTempState":0,"pd.iconHiTempMode":0,"pd.iconEcoMode":0,"pd.usb1Watts":0,"pd.standByMode":120,"latestTimeStamp":1686749690959,"pd.chgPowerDc":657,"pd.dsgPowerDc":469,"pd.iconUsbState":0,"pd.typccUsedTime":5461,"pd.iconBtMode":0,"pd.typec2Temp":31,"pd.carUsedTime":861333,"pd.typec1Watts":0,"pd.soc":80,"pd.iconFactoryState":0,"pd.iconChgStationState":0,"pd.iconBmsParallelState":0,"pd.wirelessWatts":0,"pd.iconCarState":0,"pd.iconSocUpsMode":0,"pd.iconSolarBracketMode":0,"pd.wattsOutSum":135,"pd.iconWifiState":0,"pd.iconWindGenMode":0,"pd.iconUsbMode":0,"pd.iconBmsErrState":0,"pd.iconBmsErrMode":0,"pd.iconWindGenState":0,"pd.iconBtState":0,"pd.iconEcoState":0,"pd.carState":0,"pd.invUsedTime":32346655,"pd.iconAcFreqMode":0,"pd.typec1Temp":30,"pd.dsgPowerAc":536510,"pd.dcInUsedTime":4610,"pd.iconLowTempState":0,"pd.model":1,"pd.chgPowerAc":670774,"pd.beepState":0,"pd.iconPackHeaterState":0,"pd.wifiAutoRcvy":0,"pd.remainTime":113,"pd.iconFanState":0,"pd.chgSunPower":271,"pd.carTemp":0,"pd.lcdBrightness":100,"pd.iconRechgTimeState":0,"pd.qcUsb2Watts":0,"pd.lcdOffSec":300,"pd.iconTransSwState":0,"pd.iconTypecMode":0,"pd.sysVer":16844309,"pd.iconOverloadMode":0,"pd.iconRechgTimeMode":0,"pd.sysChgDsgState":2,"pd.iconInvParallelMode":0,"pd.qcUsb1Watts":0,"pd.iconTransSwMode":0,"pd.iconFactoryMode":0,"pd.kit0":0,"pd.kit1":0,"pd.kit2":0,"pd.iconFanMode":1,"pd.usbqcUsedTime":8397,"pd.dcOutState":0,"pd.usbUsedTime":5441,"pd.mpptUsedTime":7772,"pd.iconSolarPanelState":0,"pd.iconWirelessChgMode":0,"pd.wifiRssi":0,"pd.iconSocUpsState":0,"pd.iconSolarBracketState":0,"pd.errCode":0,"pd.iconPackHeaterMode":0,"pd.iconCoGasMode":0,"pd.carWatts":0,"pd.iconChgStationMode":0,"pd.iconAcFreqState":0,"pd.iconGasGenState":0,"pd.usb2Watts":0,"pd.iconRcMode":0,"pd.iconWirelessChgState":0,"pd.iconSolarPanelMode":0} -
@mickym
Hallo danke für die schnelle Antwort.
Die der Wert aus dem Debug-Fenster.{"pd.iconWifiMode":0,"pd.iconOverloadState":0,"pd.wattsInSum":381,"pd.wifiVer":0,"pd.iconLowTempMode":0,"pd.iconGasGenMode":0,"pd.iconBmsParallelMode":0,"pd.iconInvParallelState":0,"pd.typec2Watts":0,"pd.iconTypecState":0,"pd.iconCarMode":1,"pd.iconCoGasState":0,"pd.iconRcState":0,"pd.iconHiTempState":0,"pd.iconHiTempMode":0,"pd.iconEcoMode":0,"pd.usb1Watts":0,"pd.standByMode":120,"latestTimeStamp":1686749690959,"pd.chgPowerDc":657,"pd.dsgPowerDc":469,"pd.iconUsbState":0,"pd.typccUsedTime":5461,"pd.iconBtMode":0,"pd.typec2Temp":31,"pd.carUsedTime":861333,"pd.typec1Watts":0,"pd.soc":80,"pd.iconFactoryState":0,"pd.iconChgStationState":0,"pd.iconBmsParallelState":0,"pd.wirelessWatts":0,"pd.iconCarState":0,"pd.iconSocUpsMode":0,"pd.iconSolarBracketMode":0,"pd.wattsOutSum":135,"pd.iconWifiState":0,"pd.iconWindGenMode":0,"pd.iconUsbMode":0,"pd.iconBmsErrState":0,"pd.iconBmsErrMode":0,"pd.iconWindGenState":0,"pd.iconBtState":0,"pd.iconEcoState":0,"pd.carState":0,"pd.invUsedTime":32346655,"pd.iconAcFreqMode":0,"pd.typec1Temp":30,"pd.dsgPowerAc":536510,"pd.dcInUsedTime":4610,"pd.iconLowTempState":0,"pd.model":1,"pd.chgPowerAc":670774,"pd.beepState":0,"pd.iconPackHeaterState":0,"pd.wifiAutoRcvy":0,"pd.remainTime":113,"pd.iconFanState":0,"pd.chgSunPower":271,"pd.carTemp":0,"pd.lcdBrightness":100,"pd.iconRechgTimeState":0,"pd.qcUsb2Watts":0,"pd.lcdOffSec":300,"pd.iconTransSwState":0,"pd.iconTypecMode":0,"pd.sysVer":16844309,"pd.iconOverloadMode":0,"pd.iconRechgTimeMode":0,"pd.sysChgDsgState":2,"pd.iconInvParallelMode":0,"pd.qcUsb1Watts":0,"pd.iconTransSwMode":0,"pd.iconFactoryMode":0,"pd.kit0":0,"pd.kit1":0,"pd.kit2":0,"pd.iconFanMode":1,"pd.usbqcUsedTime":8397,"pd.dcOutState":0,"pd.usbUsedTime":5441,"pd.mpptUsedTime":7772,"pd.iconSolarPanelState":0,"pd.iconWirelessChgMode":0,"pd.wifiRssi":0,"pd.iconSocUpsState":0,"pd.iconSolarBracketState":0,"pd.errCode":0,"pd.iconPackHeaterMode":0,"pd.iconCoGasMode":0,"pd.carWatts":0,"pd.iconChgStationMode":0,"pd.iconAcFreqState":0,"pd.iconGasGenState":0,"pd.usb2Watts":0,"pd.iconRcMode":0,"pd.iconWirelessChgState":0,"pd.iconSolarPanelMode":0}@michael-doll ich bin gerade nur am Handy-deswegen kann ich im Moment nur eingeschränkt helfen. Aber es ist so, wie ich vermutet habe, dass diese Objekteugenschaft mit Punkten definiert wurde, deswegen kannst du in der function Node nicht die Punktnotation nutzen. Entweder du kopierst Dir den Pfad wie aus meiner Abbildung raus, ansonsten musst du die Klammernotation mit Anführungszeichen nutzen
Also
msg.payload[“pd.standByMode“] -
@michael-doll ich bin gerade nur am Handy-deswegen kann ich im Moment nur eingeschränkt helfen. Aber es ist so, wie ich vermutet habe, dass diese Objekteugenschaft mit Punkten definiert wurde, deswegen kannst du in der function Node nicht die Punktnotation nutzen. Entweder du kopierst Dir den Pfad wie aus meiner Abbildung raus, ansonsten musst du die Klammernotation mit Anführungszeichen nutzen
Also
msg.payload[“pd.standByMode“]@mickym sagte in node-red datenabfrage mit funktion node:
msg.payload[“pd.standByMode“]
Ok, das funktioniert.
Danke für deine schnelle Hilfe
Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.
Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.
Mit deinem Input könnte dieser Beitrag noch besser werden 💗
Registrieren Anmelden