NEWS
Automatisch States anlegen ioBroker out?
-
@werde45 Ja das stimmt - diese Doku hilft dir nicht viel.
Die Hilfe von der ich redete, ist in der Hilfe zu den Nodes.
Aber ich helfe Dir gerne - siehe unten
-
@mickym Also vorher mit Switch die Werte passende "umbauen". Diese Hilfe hatte ich übersehen. Bin erst seit 2 Tagen mit Node-Red unterwegs und "Hello Welt" war zu langweilig
-
@werde45 Nein nichts mit switch - sondern mit change.
Wenn Du ein key/value aus der buffer Node rauskommen lässt, dann sollte doch ein Objekt rauskommen. Poste das doch mal hier in CodeTags.
Geht auch nicht um "Hello World" - aber du solltest die Grundstrukturen von Nachrichtenobjekten kennen.
-
Ein schönen Thread zum Erlernen von NodeRed zusammen im iobroker findest Du hier:
https://www.smarthome-tricks.de/uebersicht-iobroker-node-red/
Das sind auch viele Bilder drin, wenn auch nicht mehr ganz aktuell, was den iobroker betrifft.
-
@mickym
So siehts aus:{"topic":"cell01_voltage","specification":{"type":"ascii","name":"cell01_voltage","offset":25,"length":4,"offsetbit":0,"scale":"1","mask":"","id":0,"value":"0BC2"},"payload":"0BC2","_msgid":"c6ed947a2da3bd2a"}
Der Name ist der Name des States, Payload ist der eigentliche Wert, der noch von Hex gewandelt werden muss, die anderen Werte des States sind Statisch ebenso wie die anderen Optionen (Einheit etc.)
Die Basis ist 0_userdata.0.Akku
Aber das Hauptproblem war wohl, das Node-Red keine externen Werte erstellen durfte....jajajajaja
-
@werde45 Na Du hast nicht die key/value Option und die payload als output gepostet. Aber wenn Du jetzt alleine zurecht kommst, dann passt es ja.
-
@mickym Hey...danke erstmal.
Ich werde das am Wochenende mal testen. Ich denke, das Grundprinzip ist klar.
Ich mache sonst viel in Powershell und das hier ist doch eine andere Welt.
Und mit der Hilfe im Node selber, die sich extra versteckt hatte, werde ich das wohl hinkriegen.
-
Jetze...
{"_msgid":"e78ce5f560f12ff8","payload":{"cell01_voltageX":"0BBD","cell02_voltage":"0BE1"},"originalPayload":[126,50,50,48,52,52,65,48,48,69,48,67,54,48,48,48,48,54,52,49,50,69,65,49,48,48,66,66,68,48,66,69,49,48,66,67,57,48,66,68,66,48,66,68,66,48,66,68,53,48,66,68,52,48,66,68,55,48,66,67,68,48,66,67,68,48,66,68,67,48,66,68,65,48,66,67,70,48,66,67,55,48,66,67,70,48,66,68,55,48,48,65,48,48,48,65,65,48,48,65,48,48,52,48,48,65,65,48,48,65,65,48,48,65,65,48,48,65,65,48,48,48,48,48,48,48,48,48,48,54,52,48,49,50,55,49,48,48,48,54,52,48,48,48,53,48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,48,48,48,50,51,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,68,51,69,70,13],"specification":{"options":{"byteSwap":[],"resultType":"keyvalue","singleResult":true,"msgProperty":"payload","setTopic":true},"items":[{"type":"ascii","name":"cell01_voltageX","offset":25,"length":4,"offsetbit":0,"scale":"1","mask":"","id":0,"value":"0BBD"},{"type":"ascii","name":"cell02_voltage","offset":29,"length":4,"offsetbit":0,"scale":"1","mask":"","id":1,"value":"0BE1"}]},"values":["0BBD","0BE1"],"objectResults":{"cell01_voltageX":{"type":"ascii","name":"cell01_voltageX","offset":25,"length":4,"offsetbit":0,"scale":"1","mask":"","id":0,"value":"0BBD"},"cell02_voltage":{"type":"ascii","name":"cell02_voltage","offset":29,"length":4,"offsetbit":0,"scale":"1","mask":"","id":1,"value":"0BE1"}},"keyvalues":{"cell01_voltageX":"0BBD","cell02_voltage":"0BE1"},"arrayResults":[{"type":"ascii","name":"cell01_voltageX","offset":25,"length":4,"offsetbit":0,"scale":"1","mask":"","id":0,"value":"0BBD"},{"type":"ascii","name":"cell02_voltage","offset":29,"length":4,"offsetbit":0,"scale":"1","mask":"","id":1,"value":"0BE1"}],"buffer":[126,50,50,48,52,52,65,48,48,69,48,67,54,48,48,48,48,54,52,49,50,69,65,49,48,48,66,66,68,48,66,69,49,48,66,67,57,48,66,68,66,48,66,68,66,48,66,68,53,48,66,68,52,48,66,68,55,48,66,67,68,48,66,67,68,48,66,68,67,48,66,68,65,48,66,67,70,48,66,67,55,48,66,67,70,48,66,68,55,48,48,65,48,48,48,65,65,48,48,65,48,48,52,48,48,65,65,48,48,65,65,48,48,65,65,48,48,65,65,48,48,48,48,48,48,48,48,48,48,54,52,48,49,50,55,49,48,48,48,54,52,48,48,48,53,48,48,48,48,48,48,48,48,48,48,48,48,48,48,56,48,48,48,50,51,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,48,68,51,69,70,13]}
Das war gemeint
-
@werde45 Nein das war nicht gemeint.
Na egal, was kommt denn aus Deiner buffer Node raus. Mach halt mal eine debug Node dahinter und poste das Debug Fenster.
-
@mickym Guten morgen,
leider viel Neuschnee in Oberbayern - daher keine Solarleitung aber Zeit...
Ich habe die Wandlung nun in eine Funktion geschrieben und es klappt. Und alles im Parser steuerbar.
msg.ack = true; msg.Name = msg.topic; msg.topic = "0_userdata.0.Akku." + msg.topic; // Hex in Dezimal wandeln msg.payload = parseInt(msg.payload, 16); return msg;
Danke. Ich wünsche ein schönes Wochenende.