Hallo, ich versuche, mein Problem mal verständlich zu schildern: Node-Red: Von einem Baustein bekomme ich 7 Objekte. In jedem Objekt sind 15 Werte. Ein Wert (setpoint) ist für mich von Interesse. Diesen habe ich mit folgender Funktion isoliert: var D1 = {payload: msg.payload.setpoint}; return [D1]; Nun bekomme ich 7x den jeweiligen Wert als msg.payload:number zurück. Ich brauche aber nur die "erste und dritte" Nummer. Wie kann ich diese herausfiltern? mfg
wenn du 7 Objekte bekommst und durch deine Funktion sendest bekommst du 7 antworten zurück. Die Funktionen behandeln jedes Objekt gleich. Wenn du die Möglichkeit hast anhand einer "Identifikation" die 7 Objekte zu unterscheiden könntest du das schnell mit If machen.
War gerade am Reifenwechsel. Der Tag heute bot sich an. So, zurück zum Thema, ich benutze die MAXCUBE-Node und die wirft das raus: object rf_address: "15c24a" initialized: true fromCmd: false error: false valid: true mode: "AUTO" dst_active: true gateway_known: true panel_locked: false link_error: false battery_low: false valve: 24 setpoint: 22 temp: 23.4 Das Ganze wie gesagt 7x für 7 Stellantriebe. Ich sehe gerade, daß es nur 14 Werte sind, peinlich! Nachdem ich den setpoint isoliert habe, bekomme ich das: msg.payload : number 22 msg.payload : number 20 msg.payload : number 21 msg.payload : number 22 msg.payload : number 23 msg.payload : number 24 msg.payload : number 21 Wie gesagt, ich will nur den 1. und 3. Wert für mich.
Bist du dir sicher, dass es (immer!) die 1. und 3. sind, oder willst du die von 2 bestimmten nodes (rf_address)? Ansonsten: Objecte in ein Array sammeln und per array[0] und array[2] das 1. und 3. Element auswählen.
oder das msg Objekt für die nicht benötigten auf null setzen müsste auch gehen.
Eric B. schrieb: > Bist du dir sicher, dass es (immer!) die 1. und 3. sind, oder willst du > die von 2 bestimmten nodes (rf_address)? > > Ansonsten: Objecte in ein Array sammeln und per array[0] und array[2] > das 1. und 3. Element auswählen. Würde ich auch so machen das Problem ist nur wen sich das ganze Objekt mal verändert oder defekt ist, ich würde mit der rf_address wenn die einmalig ist zusammen ein neues Objekt erzeugen das kann dann ja z.b. auch <addr>:<Wert> sein dann hast du das Problem nicht wenn da was durcheinander kommt z.b. bei nen Update der Steuerung und dann kannst dir anhand der Adresse den wert immer zielgenau rauspicken.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.