Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. Node-RED Nodes für externe ioBroker Integration

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.5k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.7k

Node-RED Nodes für externe ioBroker Integration

Geplant Angeheftet Gesperrt Verschoben Node-Red
communicationnode-red
131 Beiträge 6 Kommentatoren 14.2k Aufrufe 6 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • Marc BergM Marc Berg

    @rewenode

    Da das Abfragen der Objekteigenschaften und der Aliase doch eng zusammenhängt, habe ich es gleich in den GetObject Node mit eingebaut.

    a944fd28-001b-4be6-b6b8-268276674dcf-grafik.png

    Damit müsstest du nicht mehr den Umweg über fünf Nodes nehmen.

    R Offline
    R Offline
    rewenode
    schrieb am zuletzt editiert von
    #76

    @marc-berg Kurze Zwischenfrage, habe gerade mal flüchtig die 12.0-4 getestet. Vlt. war ich da zu voreilig.

    Ich frage ein Alias Object ab und bekomme neben dem aliasObject die aliasEnums UND das targetObject. Soweit perfekt!
    Allerdings wird das targetObject ohne die targetEnums geliefert? Oder mach ich da was falsch?

    2025-07-08_09-49-48.png

    Marc BergM 1 Antwort Letzte Antwort
    0
    • R rewenode

      @marc-berg Kurze Zwischenfrage, habe gerade mal flüchtig die 12.0-4 getestet. Vlt. war ich da zu voreilig.

      Ich frage ein Alias Object ab und bekomme neben dem aliasObject die aliasEnums UND das targetObject. Soweit perfekt!
      Allerdings wird das targetObject ohne die targetEnums geliefert? Oder mach ich da was falsch?

      2025-07-08_09-49-48.png

      Marc BergM Offline
      Marc BergM Offline
      Marc Berg
      Most Active
      schrieb am zuletzt editiert von Marc Berg
      #77

      @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

      Oder mach ich da was falsch?

      Nein, du machst nichts falsch. Eine Frage der Philosophie ist wahrscheinlich, ob man alias und target (in das dann wohl immer identische?) Enum legt.

      Ich könnte jetzt die Enums von alias und target zusammenfassen und deduplizieren, besser ist es aber, wenn ich die Enums sauber dem jeweiligen Objekt zuordne.

      NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

      Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

      Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

      R 1 Antwort Letzte Antwort
      0
      • Marc BergM Offline
        Marc BergM Offline
        Marc Berg
        Most Active
        schrieb am zuletzt editiert von
        #78

        @rewenode

        v0.12.0-5

        Jetzt haben alle target objects in aliasInfo.aliasTarget.target (bzw. targets.read/targets.write) die gleichen enum assignments wie das ursprüngliche Objekt, wenn sie in entsprechenden enums eingetragen sind.
        Die enum assignments erscheinen jetzt sowohl beim base-Objekt als auch bei allen alias target objects korrekt.

        NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

        Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

        Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

        R 1 Antwort Letzte Antwort
        1
        • Marc BergM Marc Berg

          @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

          Oder mach ich da was falsch?

          Nein, du machst nichts falsch. Eine Frage der Philosophie ist wahrscheinlich, ob man alias und target (in das dann wohl immer identische?) Enum legt.

          Ich könnte jetzt die Enums von alias und target zusammenfassen und deduplizieren, besser ist es aber, wenn ich die Enums sauber dem jeweiligen Objekt zuordne.

          R Offline
          R Offline
          rewenode
          schrieb am zuletzt editiert von
          #79

          @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

          Ich könnte jetzt die Enums von alias und target zusammenfassen und deduplizieren, besser ist es aber, wenn ich die Enums sauber dem jeweiligen Objekt zuordne.

          Die Enums von alias und target sind i.d.R unterschiedlich, jedenfalls bei mir.
          Der Alias ändert sich nicht, ist einem festen Ort zugewiesen.
          Das Target device kann irgendwas sein und hat je nachdem individuelle Enums (Batterie/Hardware etc). Hatte früher mal aus diesem Grunde den Ort am Target festgemacht. Das ist aber unpraktisch, weil dann auch der Ort am target geändert werden muss, wenn das Teil woanders eingesetzt wird.
          Ob die Enums beim getObj bei einem Alias die Enums zusammenfasst sind ist eigentlich egal, Hauptsache, es werden sowohl die target und die alias Enums zurückgegeben. Zusammengefaßt wäre einfacher bei der Weiterverarbeitung, weil das alias-object ja in der Regel so betrachtet wird, als wäre es ein tatsächliches device.
          Getrennt ist aber auch ok.
          Hoffe, ich habe das nicht zu verworren ausgedrückt.

          1 Antwort Letzte Antwort
          0
          • Marc BergM Marc Berg

            @rewenode

            v0.12.0-5

            Jetzt haben alle target objects in aliasInfo.aliasTarget.target (bzw. targets.read/targets.write) die gleichen enum assignments wie das ursprüngliche Objekt, wenn sie in entsprechenden enums eingetragen sind.
            Die enum assignments erscheinen jetzt sowohl beim base-Objekt als auch bei allen alias target objects korrekt.

            R Offline
            R Offline
            rewenode
            schrieb am zuletzt editiert von
            #80

            @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

            Die enum assignments erscheinen jetzt sowohl beim base-Objekt als auch bei allen alias target objects korrekt.

            Grad mal reingeschaut. Das sieht perfekt aus! Da fällt mir erstmal nichts mehr ein:+1: :grinning:

            R 1 Antwort Letzte Antwort
            0
            • R rewenode

              @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

              Die enum assignments erscheinen jetzt sowohl beim base-Objekt als auch bei allen alias target objects korrekt.

              Grad mal reingeschaut. Das sieht perfekt aus! Da fällt mir erstmal nichts mehr ein:+1: :grinning:

              R Offline
              R Offline
              rewenode
              schrieb am zuletzt editiert von
              #81

              @Marc-Berg Ich hab da mal eine prinzipielle Frage

              Ich habe jetzt mal etwas intensiver mit den nodes von einem externen NR gespielt. In meine Beispiel versuche ich mich gerade mit dem Dashboard 2 vertraut zu machen. Besonders die Verwendung von Subflows vereinfachen die Arbeit ungemein.
              Mein Test sieht etwa so aus:
              2025-07-14_08-31-13.png
              Hier habe die WS-ioB-nodes alle in den Subflow gepackt, was den Hauptflow extrem vereinfacht.
              Natürlich sind hier auch andere Szenarien denkbar.
              Man könnte auch die zu abonnierenden states über einen einzelnen externen WS-ioB-IN realisieren, und die Daten den Subflow-Instanzen extern zuführen.

              Was ich mich frage:
              Wie verhalten sie diesbezüglich eigentlich die WS-ioB in Bezug auf Speicher/Performance?
              Will fragen, was ist besser, die states einzeln zu abonnieren oder alle in einem node zu abonnieren.
              Dabei lass ich mal außer acht, dass der externe Aufwand im Falle von mehreren states pro WS-ioB-IN steigen wird, weil die Daten i.d.R. wieder auseinanderklamüsert werden müssen.

              In meinem Test mit den 3 Instanzen des Subflows gibt es keinerlei Probleme. Bin nach wie vor von den WS-ioB nodes begeistert.

              Marc BergM 1 Antwort Letzte Antwort
              0
              • R rewenode

                @Marc-Berg Ich hab da mal eine prinzipielle Frage

                Ich habe jetzt mal etwas intensiver mit den nodes von einem externen NR gespielt. In meine Beispiel versuche ich mich gerade mit dem Dashboard 2 vertraut zu machen. Besonders die Verwendung von Subflows vereinfachen die Arbeit ungemein.
                Mein Test sieht etwa so aus:
                2025-07-14_08-31-13.png
                Hier habe die WS-ioB-nodes alle in den Subflow gepackt, was den Hauptflow extrem vereinfacht.
                Natürlich sind hier auch andere Szenarien denkbar.
                Man könnte auch die zu abonnierenden states über einen einzelnen externen WS-ioB-IN realisieren, und die Daten den Subflow-Instanzen extern zuführen.

                Was ich mich frage:
                Wie verhalten sie diesbezüglich eigentlich die WS-ioB in Bezug auf Speicher/Performance?
                Will fragen, was ist besser, die states einzeln zu abonnieren oder alle in einem node zu abonnieren.
                Dabei lass ich mal außer acht, dass der externe Aufwand im Falle von mehreren states pro WS-ioB-IN steigen wird, weil die Daten i.d.R. wieder auseinanderklamüsert werden müssen.

                In meinem Test mit den 3 Instanzen des Subflows gibt es keinerlei Probleme. Bin nach wie vor von den WS-ioB nodes begeistert.

                Marc BergM Offline
                Marc BergM Offline
                Marc Berg
                Most Active
                schrieb am zuletzt editiert von Marc Berg
                #82

                @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

                Was ich mich frage:
                Wie verhalten sie diesbezüglich eigentlich die WS-ioB in Bezug auf Speicher/Performance?
                Will fragen, was ist besser, die states einzeln zu abonnieren oder alle in einem node zu abonnieren.

                Speichertechnisch dürfte der "MultipleStates" Ansatz Vorteile bringen. Wenn ich das mal grob überschlage:

                100 einzelne Nodes:

                100 × Node-Instanz ≈ 100 × 5KB = 500KB
                100 × Callback-Handler ≈ 100 × 1KB = 100KB
                100 × State-Tracking ≈ 100 × 0.5KB = 50KB

                Summe: ~650KB
                ─────────────────────────────────────────

                1 Multiple States Node:

                1 × Node-Instanz ≈ 5KB
                1 × Callback-Handler ≈ 1KB
                100 × State-Tracking ≈ 50KB

                Summe: ~56KB
                ─────────────────────────────

                Und auch die CPU-Belastung düfte etwas geringer ausfallen.

                Ob in heutigen Hardware-Szenarien das wirklich relevant ist und den Mehraufwand rechtfertigt, muss man entscheiden.

                In meinem Test mit den 3 Instanzen des Subflows gibt es keinerlei Probleme. Bin nach wie vor von den WS-ioB nodes begeistert.

                Freut mich. Ich habe meine Prod umgestellt (noch ohne Optimierungen auf Basis der neuen Möglichkeiten), mit 600 Nodes (davon ca. 180 ioBroker WS Nodes) dümpelt der Container bei ca. 100MB und 0.1-0.2% CPU dahin.

                In Summe (vor und nach der Umstellung) sehe ich keinen Unterschied bei Memory und CPU. Das geht im Grundrauschen unter.

                NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                R 1 Antwort Letzte Antwort
                0
                • Marc BergM Marc Berg

                  @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

                  Was ich mich frage:
                  Wie verhalten sie diesbezüglich eigentlich die WS-ioB in Bezug auf Speicher/Performance?
                  Will fragen, was ist besser, die states einzeln zu abonnieren oder alle in einem node zu abonnieren.

                  Speichertechnisch dürfte der "MultipleStates" Ansatz Vorteile bringen. Wenn ich das mal grob überschlage:

                  100 einzelne Nodes:

                  100 × Node-Instanz ≈ 100 × 5KB = 500KB
                  100 × Callback-Handler ≈ 100 × 1KB = 100KB
                  100 × State-Tracking ≈ 100 × 0.5KB = 50KB

                  Summe: ~650KB
                  ─────────────────────────────────────────

                  1 Multiple States Node:

                  1 × Node-Instanz ≈ 5KB
                  1 × Callback-Handler ≈ 1KB
                  100 × State-Tracking ≈ 50KB

                  Summe: ~56KB
                  ─────────────────────────────

                  Und auch die CPU-Belastung düfte etwas geringer ausfallen.

                  Ob in heutigen Hardware-Szenarien das wirklich relevant ist und den Mehraufwand rechtfertigt, muss man entscheiden.

                  In meinem Test mit den 3 Instanzen des Subflows gibt es keinerlei Probleme. Bin nach wie vor von den WS-ioB nodes begeistert.

                  Freut mich. Ich habe meine Prod umgestellt (noch ohne Optimierungen auf Basis der neuen Möglichkeiten), mit 600 Nodes (davon ca. 180 ioBroker WS Nodes) dümpelt der Container bei ca. 100MB und 0.1-0.2% CPU dahin.

                  In Summe (vor und nach der Umstellung) sehe ich keinen Unterschied bei Memory und CPU. Das geht im Grundrauschen unter.

                  R Offline
                  R Offline
                  rewenode
                  schrieb am zuletzt editiert von
                  #83

                  @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

                  Ich habe meine Prod umgestellt (noch ohne Optimierungen auf Basis der neuen Möglichkeiten), mit 600 Nodes (davon ca. 180 ioBroker WS Nodes) dümpelt der Container bei ca. 100MB und 0.1-0.2% CPU dahin.
                  In Summe (vor und nach der Umstellung) sehe ich keinen Unterschied bei Memory und CPU. Das geht im Grundrauschen unter.

                  Das klingt gut. Werde ich auch erst mal so machen. Falls es Engpässe gibt , kann ich ja immer noch nach Multistate umstellen.
                  In vielen Fällen ist das bei mir eh vorteilhafter. Ich arbeite ja nicht überall mit Subflows.

                  R 1 Antwort Letzte Antwort
                  0
                  • R rewenode

                    @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

                    Ich habe meine Prod umgestellt (noch ohne Optimierungen auf Basis der neuen Möglichkeiten), mit 600 Nodes (davon ca. 180 ioBroker WS Nodes) dümpelt der Container bei ca. 100MB und 0.1-0.2% CPU dahin.
                    In Summe (vor und nach der Umstellung) sehe ich keinen Unterschied bei Memory und CPU. Das geht im Grundrauschen unter.

                    Das klingt gut. Werde ich auch erst mal so machen. Falls es Engpässe gibt , kann ich ja immer noch nach Multistate umstellen.
                    In vielen Fällen ist das bei mir eh vorteilhafter. Ich arbeite ja nicht überall mit Subflows.

                    R Offline
                    R Offline
                    rewenode
                    schrieb am zuletzt editiert von rewenode
                    #84

                    @rewenode So langsam stelle ich immer mehr meiner Flows um und bisher kann ich von keinen Problemen berichten ;-) Dass das recht langsam voran geht liegt daran, dass ich gleichzeitig meine Dashboards umstelle.

                    Und da habe ich mal eine Frage.
                    Wäre es möglich, dem WS-ioB-In einen Eingang zu verpassen, um sozusagen von extern einen "Send initial value on startup" auszulösen?

                    Hintergrund.
                    Bei vielen Dashboards habe ich das Problem, dass ich aktuelle Werte nach einem Page/Tab Change Event benötige.
                    Jetzt mache ich das mit einem UI-control, der dann für jeden (eigentlich abonnierten Wert) einen WS-ioB-get triggert.
                    Das klappt zwar super, verdoppelt aber die WS-ioB nodes für alle Werte in der Anzeige.
                    Da wo ich mit multiplen states arbeiten kann ist das nicht so problematisch.

                    Marc BergM 1 Antwort Letzte Antwort
                    0
                    • R rewenode

                      @rewenode So langsam stelle ich immer mehr meiner Flows um und bisher kann ich von keinen Problemen berichten ;-) Dass das recht langsam voran geht liegt daran, dass ich gleichzeitig meine Dashboards umstelle.

                      Und da habe ich mal eine Frage.
                      Wäre es möglich, dem WS-ioB-In einen Eingang zu verpassen, um sozusagen von extern einen "Send initial value on startup" auszulösen?

                      Hintergrund.
                      Bei vielen Dashboards habe ich das Problem, dass ich aktuelle Werte nach einem Page/Tab Change Event benötige.
                      Jetzt mache ich das mit einem UI-control, der dann für jeden (eigentlich abonnierten Wert) einen WS-ioB-get triggert.
                      Das klappt zwar super, verdoppelt aber die WS-ioB nodes für alle Werte in der Anzeige.
                      Da wo ich mit multiplen states arbeiten kann ist das nicht so problematisch.

                      Marc BergM Offline
                      Marc BergM Offline
                      Marc Berg
                      Most Active
                      schrieb am zuletzt editiert von Marc Berg
                      #85

                      @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

                      Wäre es möglich, dem WS-ioB-In einen Eingang zu verpassen, um sozusagen von extern einen "Send initial value on startup" auszulösen?

                      Möglich ja, aber: Nein.

                      Abgesehen davon, dass der iob-in Node schon ziemlich überladen ist, finde ich es konzeptionell falsch. Ein "-in" Node sollte nur einen Ausgang haben, ein "-out" Node nur einen Eingang. Sonst werden Flows unlesbar, wenn man keine Trigger mehr erkennt.

                      Aber ich verstehe das Problem und könnte mir eine Lösung vorstellen:

                      • Jeder iob-in Node registriert sich selbst im Flow-Context und stellt eine Trigger-Funktion bereit. (muss ich anpassen)
                      • Dein Dashboard Change Event triggert ein Function Node, in diesem steht sinngemäß:
                      const registeredNodes = context.flow.get('iobroker_in_nodes');
                      
                      Object.values(registeredNodes)
                          .filter(nodeInfo => nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))
                          .forEach(nodeInfo => nodeInfo.triggerCached());
                      

                      Oder beliebige andere Filter-Mechanismen, die Node-RED zur Verfügung stellt (alle Nodes eines Flows, einer Gruppe, ..)

                      NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                      Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                      Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                      Marc BergM R 2 Antworten Letzte Antwort
                      1
                      • Marc BergM Marc Berg

                        @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

                        Wäre es möglich, dem WS-ioB-In einen Eingang zu verpassen, um sozusagen von extern einen "Send initial value on startup" auszulösen?

                        Möglich ja, aber: Nein.

                        Abgesehen davon, dass der iob-in Node schon ziemlich überladen ist, finde ich es konzeptionell falsch. Ein "-in" Node sollte nur einen Ausgang haben, ein "-out" Node nur einen Eingang. Sonst werden Flows unlesbar, wenn man keine Trigger mehr erkennt.

                        Aber ich verstehe das Problem und könnte mir eine Lösung vorstellen:

                        • Jeder iob-in Node registriert sich selbst im Flow-Context und stellt eine Trigger-Funktion bereit. (muss ich anpassen)
                        • Dein Dashboard Change Event triggert ein Function Node, in diesem steht sinngemäß:
                        const registeredNodes = context.flow.get('iobroker_in_nodes');
                        
                        Object.values(registeredNodes)
                            .filter(nodeInfo => nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))
                            .forEach(nodeInfo => nodeInfo.triggerCached());
                        

                        Oder beliebige andere Filter-Mechanismen, die Node-RED zur Verfügung stellt (alle Nodes eines Flows, einer Gruppe, ..)

                        Marc BergM Offline
                        Marc BergM Offline
                        Marc Berg
                        Most Active
                        schrieb am zuletzt editiert von
                        #86

                        @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

                        (muss ich anpassen)

                        --> v0.15.0-1

                        NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                        Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                        Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                        R 1 Antwort Letzte Antwort
                        0
                        • Marc BergM Marc Berg

                          @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

                          (muss ich anpassen)

                          --> v0.15.0-1

                          R Offline
                          R Offline
                          rewenode
                          schrieb am zuletzt editiert von
                          #87

                          @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

                          --> v0.15.0-1

                          Klasse, werde ich gleich mal testen.
                          Dein Argument mit dem ioB-in kann ich nachvollziehen. Dein Lösungsvorschlag klingt sehr flexibel. Bin mal gespannt.

                          1 Antwort Letzte Antwort
                          0
                          • Marc BergM Marc Berg

                            @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

                            Wäre es möglich, dem WS-ioB-In einen Eingang zu verpassen, um sozusagen von extern einen "Send initial value on startup" auszulösen?

                            Möglich ja, aber: Nein.

                            Abgesehen davon, dass der iob-in Node schon ziemlich überladen ist, finde ich es konzeptionell falsch. Ein "-in" Node sollte nur einen Ausgang haben, ein "-out" Node nur einen Eingang. Sonst werden Flows unlesbar, wenn man keine Trigger mehr erkennt.

                            Aber ich verstehe das Problem und könnte mir eine Lösung vorstellen:

                            • Jeder iob-in Node registriert sich selbst im Flow-Context und stellt eine Trigger-Funktion bereit. (muss ich anpassen)
                            • Dein Dashboard Change Event triggert ein Function Node, in diesem steht sinngemäß:
                            const registeredNodes = context.flow.get('iobroker_in_nodes');
                            
                            Object.values(registeredNodes)
                                .filter(nodeInfo => nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))
                                .forEach(nodeInfo => nodeInfo.triggerCached());
                            

                            Oder beliebige andere Filter-Mechanismen, die Node-RED zur Verfügung stellt (alle Nodes eines Flows, einer Gruppe, ..)

                            R Offline
                            R Offline
                            rewenode
                            schrieb am zuletzt editiert von
                            #88

                            @marc-berg Das klappt prinzipiell wunderbar :+1:
                            Wenn ich alle WS-ioB-in trigger, klappe es super!

                            const registeredNodes = context.flow.get('iobroker_in_nodes');
                            
                            Object.values(registeredNodes)
                                //.filter(nodeInfo => nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))
                                .forEach(nodeInfo => nodeInfo.triggerCached());
                                
                            return msg;
                            

                            Mit dem Filter stehe ich noch auf dem Schlauch.
                            Im Subflow kann ich das 'iobroker_in_nodes'-Object nicht inspizieren.
                            Interpretiere ich deinen Beispielfilter richtig?

                            nodeInfo.name steht hier für den Namen des WS-ioB-nodes. Der darf nicht leer sein und muss den String [Dashboard] enthalten.
                            Oder bin ich hier auf der falschen Fährte?

                            R Marc BergM 2 Antworten Letzte Antwort
                            0
                            • R rewenode

                              @marc-berg Das klappt prinzipiell wunderbar :+1:
                              Wenn ich alle WS-ioB-in trigger, klappe es super!

                              const registeredNodes = context.flow.get('iobroker_in_nodes');
                              
                              Object.values(registeredNodes)
                                  //.filter(nodeInfo => nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))
                                  .forEach(nodeInfo => nodeInfo.triggerCached());
                                  
                              return msg;
                              

                              Mit dem Filter stehe ich noch auf dem Schlauch.
                              Im Subflow kann ich das 'iobroker_in_nodes'-Object nicht inspizieren.
                              Interpretiere ich deinen Beispielfilter richtig?

                              nodeInfo.name steht hier für den Namen des WS-ioB-nodes. Der darf nicht leer sein und muss den String [Dashboard] enthalten.
                              Oder bin ich hier auf der falschen Fährte?

                              R Offline
                              R Offline
                              rewenode
                              schrieb am zuletzt editiert von
                              #89

                              @Marc-Berg Ok, habs geschnallt:grinning:
                              Alle Dashboard relevanten ioB-In mit [Dashboard] im Namen zu versehen, macht absolut Sinn. Schließlich brauchen nur die den Page/Tab Change Event.
                              Das werde ich auch so machen und dann den Filter einschalten. Welche key`s da ggf. noch zur Filterung zur Verfügung stehen, kann ich mir im Hauptflow ansehen, wenn ich da ein ioB-In platziere.

                              Meinen Subflows habe ich nun einen Eingang spendiert, da brauche ich den UI-control nur einmal im Hauptflow.

                              Da bleiben eigentlich keine Wünsche offen.
                              Danke

                              1 Antwort Letzte Antwort
                              0
                              • R rewenode

                                @marc-berg Das klappt prinzipiell wunderbar :+1:
                                Wenn ich alle WS-ioB-in trigger, klappe es super!

                                const registeredNodes = context.flow.get('iobroker_in_nodes');
                                
                                Object.values(registeredNodes)
                                    //.filter(nodeInfo => nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))
                                    .forEach(nodeInfo => nodeInfo.triggerCached());
                                    
                                return msg;
                                

                                Mit dem Filter stehe ich noch auf dem Schlauch.
                                Im Subflow kann ich das 'iobroker_in_nodes'-Object nicht inspizieren.
                                Interpretiere ich deinen Beispielfilter richtig?

                                nodeInfo.name steht hier für den Namen des WS-ioB-nodes. Der darf nicht leer sein und muss den String [Dashboard] enthalten.
                                Oder bin ich hier auf der falschen Fährte?

                                Marc BergM Offline
                                Marc BergM Offline
                                Marc Berg
                                Most Active
                                schrieb am zuletzt editiert von
                                #90

                                @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

                                //.filter(nodeInfo => nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))  
                                

                                nodeInfo.name steht hier für den Namen des WS-ioB-nodes. Der darf nicht leer sein und muss den String [Dashboard] enthalten.
                                Oder bin ich hier auf der falschen Fährte?

                                ja, so ähnlich. Mit dem Konstrukt

                                nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))
                                

                                stellt man sicher, dass die Funktion keinen häßlichen Fehler auswirft, falls ein Node keine "Name" Eigenschaft besitzt. (ein eher theoretischer Fehler).

                                Ich werde die Funktion noch ausbauen, sodass man den Namen der Trigger-Gruppe pro iob-in Node festlegen kann. Auf diese Weise muss man die Nodes im function Node nicht nochmal filtern.

                                d3a36243-b85d-4792-819c-83844526eb72-grafik.png

                                NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                                Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                                Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                                R 1 Antwort Letzte Antwort
                                1
                                • Marc BergM Marc Berg

                                  @rewenode sagte in Node-RED Nodes für externe ioBroker Integration:

                                  //.filter(nodeInfo => nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))  
                                  

                                  nodeInfo.name steht hier für den Namen des WS-ioB-nodes. Der darf nicht leer sein und muss den String [Dashboard] enthalten.
                                  Oder bin ich hier auf der falschen Fährte?

                                  ja, so ähnlich. Mit dem Konstrukt

                                  nodeInfo.name && nodeInfo.name.includes('[Dashboard]'))
                                  

                                  stellt man sicher, dass die Funktion keinen häßlichen Fehler auswirft, falls ein Node keine "Name" Eigenschaft besitzt. (ein eher theoretischer Fehler).

                                  Ich werde die Funktion noch ausbauen, sodass man den Namen der Trigger-Gruppe pro iob-in Node festlegen kann. Auf diese Weise muss man die Nodes im function Node nicht nochmal filtern.

                                  d3a36243-b85d-4792-819c-83844526eb72-grafik.png

                                  R Offline
                                  R Offline
                                  rewenode
                                  schrieb am zuletzt editiert von
                                  #91

                                  @marc-berg sagte in Node-RED Nodes für externe ioBroker Integration:

                                  Ich werde die Funktion noch ausbauen, sodass man den Namen der Trigger-Gruppe pro iob-in Node festlegen kann. Auf diese Weise muss man die Nodes im function Node nicht nochmal filtern.

                                  Klasse :+1:

                                  v0.15.0-1 läuft jedenfalls schon mal seit gestern und tut genau was sie soll.

                                  1 Antwort Letzte Antwort
                                  0
                                  • M Offline
                                    M Offline
                                    MartyBr
                                    schrieb am zuletzt editiert von
                                    #92

                                    @Marc-Berg
                                    Hallo, ich migrieren gerade meine Flows vom ioBroker-Node-Red zu dem eigenständigen Node-Red server. Deine Nodes sind in der Version 15.0 installiert.

                                    Mein Problem ist folgendes:
                                    Im Original-Node gibt es das Feld Attribut:
                                    Bildschirmfoto 2025-07-26 um 11.00.24.png

                                    In deinem Node finde ich hier keine Möglichkeit, das Attribut festzulegen:
                                    Bildschirmfoto 2025-07-26 um 11.03.53.png

                                    Hier gibt es Output Property.
                                    Kann ich es so anwenden?

                                    Gruß
                                    Martin


                                    Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                    Raspeberry mit USB Leseköpfen für Smartmeter
                                    Homematic und Homematic IP

                                    Marc BergM 1 Antwort Letzte Antwort
                                    0
                                    • M MartyBr

                                      @Marc-Berg
                                      Hallo, ich migrieren gerade meine Flows vom ioBroker-Node-Red zu dem eigenständigen Node-Red server. Deine Nodes sind in der Version 15.0 installiert.

                                      Mein Problem ist folgendes:
                                      Im Original-Node gibt es das Feld Attribut:
                                      Bildschirmfoto 2025-07-26 um 11.00.24.png

                                      In deinem Node finde ich hier keine Möglichkeit, das Attribut festzulegen:
                                      Bildschirmfoto 2025-07-26 um 11.03.53.png

                                      Hier gibt es Output Property.
                                      Kann ich es so anwenden?

                                      Marc BergM Offline
                                      Marc BergM Offline
                                      Marc Berg
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #93

                                      @martybr sagte in Node-RED Nodes für externe ioBroker Integration:

                                      Mein Problem ist folgendes:
                                      Im Original-Node gibt es das Feld Attribut:

                                      Hier gibt es Output Property.
                                      Kann ich es so anwenden?

                                      Das ist das Gleiche. Ich habe mich für den Begriff "property" entschieden, weil es besser in die Node-RED Konventionen passt.

                                      NUC10I3+Ubuntu+Docker+ioBroker+influxDB2+Node Red+RabbitMQ+Grafana

                                      Pi-hole, Traefik, Checkmk, Conbee II+Zigbee2MQTT, ESPSomfy-RTS, LoRaWAN, Arduino, KiCad

                                      Benutzt das Voting im Beitrag, wenn er euch geholfen hat.

                                      M R 2 Antworten Letzte Antwort
                                      0
                                      • Marc BergM Marc Berg

                                        @martybr sagte in Node-RED Nodes für externe ioBroker Integration:

                                        Mein Problem ist folgendes:
                                        Im Original-Node gibt es das Feld Attribut:

                                        Hier gibt es Output Property.
                                        Kann ich es so anwenden?

                                        Das ist das Gleiche. Ich habe mich für den Begriff "property" entschieden, weil es besser in die Node-RED Konventionen passt.

                                        M Offline
                                        M Offline
                                        MartyBr
                                        schrieb am zuletzt editiert von
                                        #94

                                        @marc-berg
                                        Danke :+1:
                                        Passt

                                        Gruß
                                        Martin


                                        Intel NUCs mit Proxmox / Iobroker als VM unter Debian
                                        Raspeberry mit USB Leseköpfen für Smartmeter
                                        Homematic und Homematic IP

                                        1 Antwort Letzte Antwort
                                        0
                                        • Marc BergM Marc Berg

                                          @martybr sagte in Node-RED Nodes für externe ioBroker Integration:

                                          Mein Problem ist folgendes:
                                          Im Original-Node gibt es das Feld Attribut:

                                          Hier gibt es Output Property.
                                          Kann ich es so anwenden?

                                          Das ist das Gleiche. Ich habe mich für den Begriff "property" entschieden, weil es besser in die Node-RED Konventionen passt.

                                          R Offline
                                          R Offline
                                          rewenode
                                          schrieb am zuletzt editiert von
                                          #95

                                          @marc-berg Also zu meckern gibt es immer noch nichts;-) Inzwischen habe ich weite Teile meiner Flows migriert.
                                          Bei einer Sache habe ich echt an meinem Verstand gezweifelt.
                                          Ich habe mir vor langer Zeit so einen Flow gebastelt, der rein im function node per WS meine PV abfragt.
                                          Da abboniere ich viele Datenpunkte gemäß deren API, die sehen dann z.B. so aus:

                                          "_sum/EssActiveDischargeEnergy"
                                          

                                          Die reinkommenden Daten schreibe ich dann in states mit dem Topic:

                                                msg.topic = "node-red.0/fems/" + fems_request_channels[i][requestKey];
                                          
                                          

                                          Das läuft mit den alten nodes ok. Nicht aber mit den neuen.
                                          Hab dann irgendwann endlich gemerkt, dass die neuen nodes zwingend den "." als Property-Trenner verlangen.
                                          Das ist natürlich ok und sicher auch besser.
                                          Will nur darauf hinweisen, falls noch jemand in diese Falle tappst;-)

                                          Macht echt Spass, seine Flows mit den neuen Möglichkeiten gleich mal zu überarbeiten.

                                          Marc BergM 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          450

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe