NEWS
Node-RED Nodes für externe ioBroker Integration
-
In der Version 0.5.4 wurden noch ein paar Bugs behoben. So konnte man z.B. nicht die Anmeldedaten ändern, ohne Node RED neu starten zu müssen.
-
Es gibt ein paar neue Nodes und Funktionen:
https://github.com/Marc-Berg/node-red-contrib-iobroker/blob/main/CHANGELOG.md
Mit dem getHistory Node kann man auf historische Daten zugreifen, ohne direkt die Datenquellen (History/SQL/InfluxDB) einbinden zu müssen.
Der getObject Node wurde erweitert, damit man (ggf. gefiltert nach Type) eine Liste von verfügbaren Objekten ausgeben kann.
Es gibt einen neuen Node "inObject", damit kann man Objektänderungen (Neuerstellungen, Anpassungen/Löschungen) abonnieren.
-
@marc-berg Du bist echt produktiv
Danke dafür.
Damit werden die contrib Nodes immer mehr zur echten Alternative für den ioB-Adapter. -
- Es gibt einen neuen Node "iob-log", hiermit kann man das Livelog des ioBrokers abonnieren (Anbindung über Admin-Adapter notwendig)
- die README wurde umgestaltet
- Man kann im History-Node nun auch "Dashboard 2.0" (@flowfuse/node-red-dashboard) als Output-Option angeben und bekommt entsprechend fertig aufbereitete Daten
-
@marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:
Es gibt einen neuen Node "iob-log", hiermit kann man das Livelog des ioBrokers abonnieren (Anbindung über Admin-Adapter notwendig)
Hab ich jetzt seit gestern ohne Auffälligkeiten laufen. Das ist echt eine Hilfe.
@marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:
Man kann im History-Node nun auch "Dashboard 2.0" (@flowfuse/node-red-dashboard) als Output-Option angeben und bekommt entsprechend fertig aufbereitete Daten
Mal sehen, ob ich das die kommenden Tage mal testen kann. Beschäftige mich gerade mit dem Dashboard 2.0
-
@rewenode sagte in Node-RED Nodes für externe ioBroker Integration:
Hab ich jetzt seit gestern ohne Auffälligkeiten laufen. Das ist echt eine Hilfe.
Danke für's Testen!
Mal sehen, ob ich das die kommenden Tage mal testen kann. Beschäftige mich gerade mit dem Dashboard 2.0
Steht etwas versteckt in der Readme, der Chart Node muss so konfiguriert werden:
Wenn du noch Anregungen und Verbesserungswünsche hast, gern her damit.
-
@marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:
Wenn du noch Anregungen und Verbesserungswünsche hast, gern her damit.
Sieht erstmal perfekt aus. Als Singlestate ist die Übergabe an die Chart-Node sehr einfach. Dafür ist das bei vielen states evt. eine Fleißarbeit.
Da wünschte ich mir die Möglichkeit, ein arrayOfStates angeben zu können. Ich kann aber auf die Schnelle auch nicht überblicken, wie aufwendig das wäre. -
@rewenode sagte in Node-RED Nodes für externe ioBroker Integration:
Da wünschte ich mir die Möglichkeit, ein arrayOfStates angeben zu können
Das gilt eigentlich generell für das Abonnieren von states. Machmal sind da standard-wildcards für mich zu unflexibel. Bisher filtere ich mir dann die Daten im Nachgang oder (im Fall meiner eigenen WS-function-node) verwende gleich ein arrayOfStates für die zu abonnierenden states.
Aber ist sicher nur nice to have und ich kann auch nicht beurteilen, ob das von allgemeinem Interesse ist.
-
@rewenode sagte in Node-RED Nodes für externe ioBroker Integration:
Da wünschte ich mir die Möglichkeit, ein arrayOfStates angeben zu können. Ich kann aber auf die Schnelle auch nicht überblicken, wie aufwendig das wäre.
Ja, kann ich verstehen. Die Umsetzung stelle ich mir gerade ziemlich fehleranfällig vor, und das werde ich (bevor ich ganz sicher bin, dass der Rest ~100% funktioniert) eher nicht angehen. Aber mit der "append" Option kann man den Chart Node auch gut mit mehreren Datenreihen beschicken:
-
@marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:
Aber mit der "append" Option kann man den Chart Node auch gut mit mehreren Datenreihen beschicken:
Da hast du recht, das tut es auch.
-
@rewenode sagte in Node-RED Nodes für externe ioBroker Integration:
Das gilt eigentlich generell für das Abonnieren von states. Machmal sind da standard-wildcards für mich zu unflexibel. Bisher filtere ich mir dann die Daten im Nachgang oder (im Fall meiner eigenen WS-function-node) verwende gleich ein arrayOfStates für die zu abonnierenden states.
Das sähe dann so aus:
Man kann eine Reihe States abonnieren und entscheiden, ob man nur den jeweils geänderten State als Message wie bisher haben möchte oder gebündelt wie im Bild mit allen States sowie dem "Auslöser". Wenn sich aber in kurzer Zeit alle Werte ändern, bekommt man das Bündel x mal. Bin mir noch nicht sicher, ob das gut ist.
-
@marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:
@rewenode sagte in Node-RED Nodes für externe ioBroker Integration:
Das gilt eigentlich generell für das Abonnieren von states. Machmal sind da standard-wildcards für mich zu unflexibel. Bisher filtere ich mir dann die Daten im Nachgang oder (im Fall meiner eigenen WS-function-node) verwende gleich ein arrayOfStates für die zu abonnierenden states.
Das sähe dann so aus:
Man kann eine Reihe States abonnieren und entscheiden, ob man nur den jeweils geänderten State als Message wie bisher haben möchte oder gebündelt... Bin mir noch nicht sicher, ob das gut ist.
Das ist genial. Gebündelt ist nicht nötig und sicher nicht sinnvoll aus den schon von dir genannten Gründen. Es sei denn, man will das explizit so haben.
Es mag Fälle geben wo das hilfreich wäre. z.B. Wenn man zu einem State immer einen 2ten(oder mehrere) braucht, weil mann beide in der Weiterverarbeitung vergleichen/auswerten muss. Da habe bisher meist nach dem Empfang einer Änderung einen get für den 2ten state ausgelöst oder mir die Änderungen gespeichert. Bei solchen Sonderfällen ist das sicher hilfreich, weil es eine ganze Menge Aufwand sparen kann.
Mach so wie du denkst und es für dich keinen extremen Aufwand bedeutet. -
@rewenode sagte in Node-RED Nodes für externe ioBroker Integration:
Da habe bisher meist nach dem Empfang einer Änderung einen get für den 2ten state ausgelöst oder mir die Änderungen gespeichert. Bei solchen Sonderfällen ist das sicher hilfreich, weil es eine ganze Menge Aufwand sparen kan
Genau das. Da es auch bei mir den einen oder anderen Flow vereinfachen wird, werde ich es drin lassen.
-
@marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:
Das sähe dann so aus
EDIT: noch Ideen für weitere Nodes oder Erweiterungen/Verbesserungen? Mir fällt nichts mehr ein, was sich nicht mit Node-RED Standardmitteln lösen ließe.
-
@marc-berg Vielleicht eine Option, das Node-Red oder den Rechner darunter neu zu starten.
-
@marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:
v0.9.5
Da bin ich echt platt
Läuft wie geschmiert bis jetzt.
Ich werde die Tage beginnen meine Flows nacheinander umzustellen. Da wird bestimmt noch das ein oder andere auftauchen.@Marc-Berg Hast du mal getestet, ob deine contrib-iobroker auch unter dem iob-node-red Adapter läuft? Das würde die Umstellung der Flows vereinfachen, weil ich dabei nicht mit 2 Systemen hantieren müßte. Habe im Moment kein Testsystem zur Hand, sonst würde ich das selbst testen.
Ich dachte daran, jeweils den original-Flow zu adaptieren und dann zu deaktivieren. Dann kann der neue Flow einige Zeit laufen und beobachtet werden, wobei ich (falls nötig) per Knopfdruck wieder auf den alten Flow wechseln könnte.Deine notes sind wirklich exzellent dokumentiert. Macht echt Spass, damit zu experimentieren.
@marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:
Mir fällt nichts mehr ein, was sich nicht mit Node-RED Standardmitteln lösen ließe.
Ja, das stimmt schon, aber mit so komfortablen nodes ist es entschieden angenehmer
-
@peterfido sagte in Node-RED Nodes für externe ioBroker Integration:
Vielleicht eine Option, das Node-Red oder den Rechner darunter neu zu starten.
Das ist sehr systemspezifisch und kann (unter Aushebelung einiger Sicherheitsvorkehrungen) mit dem exec Node erledigt werden. Es braucht je nach System (Linux/Windows/Container) völlig unterschiedliche Herangehensweisen. Da es mit ioBroker auch nicht direkt etwas zu tun hat, würde ich es nicht integrieren.
-
@rewenode sagte in Node-RED Nodes für externe ioBroker Integration:
@Marc-Berg Hast du mal getestet, ob deine contrib-iobroker auch unter dem iob-node-red Adapter läuft?
Ja, das geht. Etwas unschön ist im Moment, dass dann beide Nodes in der Palette in einer Kategorie vermischt sind und man etwas genauer hinschauen muss. In der nächsten Version bekommen sie eine eigene Kategorie.
Ich dachte daran, jeweils den original-Flow zu adaptieren und dann zu deaktivieren. Dann kann der neue Flow einige Zeit laufen und beobachtet werden, wobei ich (falls nötig) per Knopfdruck wieder auf den alten Flow wechseln könnte.
So ähnlich mache ich das auch. Schritt für Schritt umstellen, exportieren und in ein eigenes Node-RED importieren.
Deine notes sind wirklich exzellent dokumentiert. Macht echt Spass, damit zu experimentieren.
Da hilft natürlich die KI. Den Output muss man dann aber in jedem Fall editieren, denn gern wird da halluziniert und nicht vorhandene Funktionen dazuerfunden.
-
@marc-berg
Ich habe Node-Red auf meiner Synology als Docker installiert und auch die Nodes dort installiert.
Nun habe ich eine Frage zu Node-Red im allgemeinen. Bei Node-Red innerhalb vom ioBroker konnte man unter Einstellungen den Speicherbedarf/Nutzung einstellen. Ist das auf einen eigenen Node-Red Docker nötig oder nimmt sich hier Node-Red einfach den verfügbaren Speicher? -
@martybr sagte in Node-RED Nodes für externe ioBroker Integration:
Ist das auf einen eigenen Node-Red Docker nötig oder nimmt sich hier Node-Red einfach den verfügbaren Speicher?
Im Default nimmt sich Node-RED alles was es bekommen kann. Begrenzen kann man es über die Umgebungsvariable
NODE_OPTIONS
Musst du mal googlen, die genauen parameter habe ich nicht parat.