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.8k

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

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

Node-RED Nodes für externe ioBroker Integration

Geplant Angeheftet Gesperrt Verschoben Node-Red
communicationnode-red
131 Beiträge 6 Kommentatoren 14.5k 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 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. :-)

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

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

    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.

    Na zu irgendwas muss die ja nützlich sein:grin:
    Im Ernst, ich setze auch gerne KI für meine kleinen Projekte ein.
    Habe mir vor einiger Zeit einen Mac-Kurzbefehl geschrieben, der mir meine Flows an Hand des Flow-Export dokumentiert.
    Purzelt sowas dann raus.
    SCR-20250704-irlt.png
    Lediglich den Screen-shot füge ich hier von Hand ein. Im Prompt kann ich noch einstellen, wie detailliert ich die Erklärung haben will.

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

    In der nächsten Version bekommen sie eine eigene Kategorie.

    Will vorher sowieso noch einige Experimente machen.

    @Marc-Berg Gibt es irgendwie die Möglichkeit bei einem State Abo/Get optional die Objektdaten der ID dazu zu bekommen? Bisher habe ich da immer den ioB-List hinterhergeschaltet um letztlich an die Objectdaten (Name/Enums etc) zu kommen.

    Marc BergM 1 Antwort Letzte Antwort
    0
    • R rewenode

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

      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.

      Na zu irgendwas muss die ja nützlich sein:grin:
      Im Ernst, ich setze auch gerne KI für meine kleinen Projekte ein.
      Habe mir vor einiger Zeit einen Mac-Kurzbefehl geschrieben, der mir meine Flows an Hand des Flow-Export dokumentiert.
      Purzelt sowas dann raus.
      SCR-20250704-irlt.png
      Lediglich den Screen-shot füge ich hier von Hand ein. Im Prompt kann ich noch einstellen, wie detailliert ich die Erklärung haben will.

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

      In der nächsten Version bekommen sie eine eigene Kategorie.

      Will vorher sowieso noch einige Experimente machen.

      @Marc-Berg Gibt es irgendwie die Möglichkeit bei einem State Abo/Get optional die Objektdaten der ID dazu zu bekommen? Bisher habe ich da immer den ioB-List hinterhergeschaltet um letztlich an die Objectdaten (Name/Enums etc) zu kommen.

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

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

      Gibt es irgendwie die Möglichkeit bei einem State Abo/Get optional die Objektdaten der ID dazu zu bekommen? B

      Müsstest du jetzt ähnlich machen. Beim einfachen "in" oder "get" frage ich keine Objektdaten ab.

      57c04b26-b8ac-445a-a15c-4a317ae4d406-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
      0
      • Marc BergM Marc Berg

        @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.

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

        @marc-berg
        Danke für die Antwort. Da es ja ein Docker für Node-Red ist, kann sich Node-Red hier aus dem vollem bedienen.
        :+1:

        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
        • R Offline
          R Offline
          rewenode
          schrieb am zuletzt editiert von
          #56

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

          Müsstest du jetzt ähnlich machen. Beim einfachen "in" oder "get" frage ich keine Objektdaten ab.

          Ja, das tut es genau so gut.

          1 Antwort Letzte Antwort
          0
          • M MartyBr

            @marc-berg
            Danke für die Antwort. Da es ja ein Docker für Node-Red ist, kann sich Node-Red hier aus dem vollem bedienen.
            :+1:

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

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

            kann sich Node-Red hier aus dem vollem bedienen.

            Naja, ein Auge sollte man trotzdem darauf haben. Angenommen, man begrenzt den Container selbst (hier im Beispiel 512MB), dann muss man auch Node-RED (bzw. Node.js) begrenzen (hier 400MB), damit der Container im Extremfall nicht gekillt wird.

            services:
              node-red:
                image: nodered/node-red
                mem_limit: 512m                    # Docker Limit: 512MB
                environment:
                  - NODE_OPTIONS=--max-old-space-size=400 
            

            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 1 Antwort Letzte Antwort
            0
            • Marc BergM Marc Berg

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

              kann sich Node-Red hier aus dem vollem bedienen.

              Naja, ein Auge sollte man trotzdem darauf haben. Angenommen, man begrenzt den Container selbst (hier im Beispiel 512MB), dann muss man auch Node-RED (bzw. Node.js) begrenzen (hier 400MB), damit der Container im Extremfall nicht gekillt wird.

              services:
                node-red:
                  image: nodered/node-red
                  mem_limit: 512m                    # Docker Limit: 512MB
                  environment:
                    - NODE_OPTIONS=--max-old-space-size=400 
              
              M Offline
              M Offline
              MartyBr
              schrieb am zuletzt editiert von MartyBr
              #58

              @marc-berg
              Okay, werde ich dann so umsetzen.

              Edit: Wird diese Einstellung im compose.yaml eingetragen?

              Edit 2:
              Ja, wird in der Compose.yaml eingetragen.

              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

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

                Gibt es irgendwie die Möglichkeit bei einem State Abo/Get optional die Objektdaten der ID dazu zu bekommen? B

                Müsstest du jetzt ähnlich machen. Beim einfachen "in" oder "get" frage ich keine Objektdaten ab.

                57c04b26-b8ac-445a-a15c-4a317ae4d406-grafik.png

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

                @marc-berg Bin grad dabei etwas intensiver zu testen.
                Sag mal, gibt es irgendeine Möglichkeit an die ENUMS eines Objects zu kommen?
                Da sind ja üblicherweise die Räume/Batteriebetrieben usw hinterlegt.
                Bei den alten Nodes gibt es zumindest die ioB-List-node, die zum Objekt die ENUMS mit auswirft. Ideal wäre, wenn die ENUM zum getObj mit ausgeben würden.

                Marc BergM 1 Antwort Letzte Antwort
                0
                • R rewenode

                  @marc-berg Bin grad dabei etwas intensiver zu testen.
                  Sag mal, gibt es irgendeine Möglichkeit an die ENUMS eines Objects zu kommen?
                  Da sind ja üblicherweise die Räume/Batteriebetrieben usw hinterlegt.
                  Bei den alten Nodes gibt es zumindest die ioB-List-node, die zum Objekt die ENUMS mit auswirft. Ideal wäre, wenn die ENUM zum getObj mit ausgeben würden.

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

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

                  Ideal wäre, wenn die ENUM zum getObj mit ausgeben würden.

                  So ist das, wenn man Funktionen nicht selbst braucht und einsetzt ...

                  Ich werde die Ausgabe der Enums optional machen und so in das Objekt einbetten:

                  {
                  	"type": "channel",
                  	"common": {
                  		"name": {
                  			"en": "AZThermostat"
                  		},
                  		"role": "thermostat"
                  	},
                  	"_id": "alias.0.Haus.Arbeitszimmer.AZThermostat",
                  	"native": {},
                  	"acl": {
                  		"object": 1636,
                  		"owner": "system.user.admin",
                  		"ownerGroup": "system.group.administrator"
                  	},
                  	"from": "system.adapter.admin.0",
                  	"user": "system.user.admin",
                  	"ts": 1692695747121,
                  	"enumAssignments": {
                  		"rooms": [
                  			{
                  				"id": "enum.rooms.Arbeitszimmer",
                  				"name": "Arbeitszimmer",
                  				"type": "rooms",
                  				"members": [
                  					"alias.0.Haus.Arbeitszimmer.AZThermostat",
                  					"alias.0.Haus.Arbeitszimmer.BlindAZ1",
                  					"alias.0.Haus.Arbeitszimmer.BlindAZ2"
                  				]
                  			}
                  		],
                  		"functions": [],
                  		"other": []
                  	}
                  }
                  

                  Außerdem ist es dann wohl auch eine gute Idee, die Enums separat suchen und filtern zu können.

                  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
                  3
                  • Marc BergM Marc Berg

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

                    Ideal wäre, wenn die ENUM zum getObj mit ausgeben würden.

                    So ist das, wenn man Funktionen nicht selbst braucht und einsetzt ...

                    Ich werde die Ausgabe der Enums optional machen und so in das Objekt einbetten:

                    {
                    	"type": "channel",
                    	"common": {
                    		"name": {
                    			"en": "AZThermostat"
                    		},
                    		"role": "thermostat"
                    	},
                    	"_id": "alias.0.Haus.Arbeitszimmer.AZThermostat",
                    	"native": {},
                    	"acl": {
                    		"object": 1636,
                    		"owner": "system.user.admin",
                    		"ownerGroup": "system.group.administrator"
                    	},
                    	"from": "system.adapter.admin.0",
                    	"user": "system.user.admin",
                    	"ts": 1692695747121,
                    	"enumAssignments": {
                    		"rooms": [
                    			{
                    				"id": "enum.rooms.Arbeitszimmer",
                    				"name": "Arbeitszimmer",
                    				"type": "rooms",
                    				"members": [
                    					"alias.0.Haus.Arbeitszimmer.AZThermostat",
                    					"alias.0.Haus.Arbeitszimmer.BlindAZ1",
                    					"alias.0.Haus.Arbeitszimmer.BlindAZ2"
                    				]
                    			}
                    		],
                    		"functions": [],
                    		"other": []
                    	}
                    }
                    

                    Außerdem ist es dann wohl auch eine gute Idee, die Enums separat suchen und filtern zu können.

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

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

                    Ich werde die Ausgabe der Enums optional machen und so in das Objekt einbetten:

                    Langsam bekomme ich echt ein schlechtes Gewissen;-( Ich hoffe, du genießt erstmal das Wochenende.
                    Herzlichen Dank und schönen Sonntag

                    Marc BergM 1 Antwort Letzte Antwort
                    0
                    • R rewenode

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

                      Ich werde die Ausgabe der Enums optional machen und so in das Objekt einbetten:

                      Langsam bekomme ich echt ein schlechtes Gewissen;-( Ich hoffe, du genießt erstmal das Wochenende.
                      Herzlichen Dank und schönen Sonntag

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

                      @rewenode

                      Danke und geht schon ... :-)

                      Mit der v0.10.0 sind die Enum-Funktionalitäten nun integriert. Da ich auch noch kräftig an der Code-Struktur geschraubt habe, zunächst nur als Beta über Github.

                      In der v0.11 gibt es später noch einen "SendTo" Node und dann ist auch erstmal gut mit neuen Funktionen.

                      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

                        Danke und geht schon ... :-)

                        Mit der v0.10.0 sind die Enum-Funktionalitäten nun integriert. Da ich auch noch kräftig an der Code-Struktur geschraubt habe, zunächst nur als Beta über Github.

                        In der v0.11 gibt es später noch einen "SendTo" Node und dann ist auch erstmal gut mit neuen Funktionen.

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

                        @marc-berg Habe mir die CHANGELOG auf Github durchgelesen. Klingt großartig:+1:
                        Inzwischen habe ich mir auch wieder einen ioB-Testcontainer erstellt und mit einigen Daten gefüllt um mal etwas intensiver testen zu können.
                        Kannst du mir noch kurz sagen, wie ich die contrib-nodes im ioB Container direkt aus Guthub installieren kann?

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

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

                          wie ich die contrib-nodes im ioB Container direkt aus Guthub installieren kann?

                          .tgz aus dem Release runter-

                          a8936104-7526-49ae-afd1-21f1c29346bc-grafik.png

                          und hier hochladen:

                          5c9ddd95-be59-4741-ac24-4caed67bd017-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
                          0
                          • R rewenode

                            @marc-berg Habe mir die CHANGELOG auf Github durchgelesen. Klingt großartig:+1:
                            Inzwischen habe ich mir auch wieder einen ioB-Testcontainer erstellt und mit einigen Daten gefüllt um mal etwas intensiver testen zu können.
                            Kannst du mir noch kurz sagen, wie ich die contrib-nodes im ioB Container direkt aus Guthub installieren kann?

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

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

                            Kannst du mir noch kurz sagen, wie ich die contrib-nodes im ioB Container direkt aus Guthub installieren kann?

                            Ah, ich seh schon die 0.10 in der Palette. Danke :grinning:

                            1 Antwort Letzte Antwort
                            0
                            • Marc BergM Marc Berg

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

                              wie ich die contrib-nodes im ioB Container direkt aus Guthub installieren kann?

                              .tgz aus dem Release runter-

                              a8936104-7526-49ae-afd1-21f1c29346bc-grafik.png

                              und hier hochladen:

                              5c9ddd95-be59-4741-ac24-4caed67bd017-grafik.png

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

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

                              .tgz aus dem Release runter-

                              Und nochmal danke:grinning:

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

                                In der v0.12.0 habe ich noch ein wenig an der Darstellung des History-Node geschraubt (Tab-Darstellung).

                                c836d237-dcb2-47ab-9b8b-07adcae23363-grafik.png

                                Außerdem kann man im Node jetzt einstellen, wie man mit fast zeitgleich eintreffenden Queries umgehen möchte, die ja auch mal länger laufen können:

                                f526838e-6f8f-430f-a777-93ce7b5a1ec2-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

                                  In der v0.12.0 habe ich noch ein wenig an der Darstellung des History-Node geschraubt (Tab-Darstellung).

                                  c836d237-dcb2-47ab-9b8b-07adcae23363-grafik.png

                                  Außerdem kann man im Node jetzt einstellen, wie man mit fast zeitgleich eintreffenden Queries umgehen möchte, die ja auch mal länger laufen können:

                                  f526838e-6f8f-430f-a777-93ce7b5a1ec2-grafik.png

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

                                  @marc-berg Bin da auf ein Problem gestossen. Könnte evtl. ein Bug sein oder an meiner Vorgehensweise liegen.

                                  Ich arbeite relativ intensiv mit alias-states. Hauptsächlich um Sensoren schnell wechseln zu können.
                                  So ist der alias-state: alias.0.Klima.office.Temperatur halt die Temp im Office.
                                  Diesem State ist der Ort (enum.rooms.ground_floor.office) zugewiesen.

                                  Der Sensor selbst(base) ist irgend ein Temperatursensor, der auch schnell mal gewechselt werden kann.
                                  Zum Test grad der Temp-Sensor einer Tasmota-Steckdose: "mqtt.0.stTasmota-8.tele.SENSOR"
                                  Diese wiederum hat eigene Eigenschaften, die ich i.d.R. ebenfalls in enums abgelegt habe. Da ist dann halt der Hardwaretyp/Batterie etc. hinterlegt.

                                  Ich habe mir da so Listen gebastelt z.B. „offene Fenster“, die dann neben dem Status auch gleich signalisieren, wenn die Batterie zur Neige geht. Kurz, machmal brauche ich neben dem State auch das eigentliche (base) Objekt.

                                  Mit den alten iob-Nodes bin ich immer folgendermaßen vorgegangen:

                                  05351d6b-942e-4c64-9b95-4a497d6730a6-2025-07-07_14-30-51.png 

                                  Umständlich aber funktioniert.

                                  Jetzt versuche ich das mit deinen nodes. Da nehme natürlich statt der iob-list-node die „WS ioB getObj+Enum.
                                  Die Node ansich tut einen hervorragenden Job und ist extrem flexibel.
                                  da5596ea-0600-4883-97fc-4c2f1dd53750-2025-07-07_15-46-04.png 
                                  Obwohl der topic korrekt gesetzt ist, bekomme ich den Fehler, wenn ich als letztes das base object abfragen will.
                                  Frage ich das base object separat ab, läuft alles bestens.
                                  44721575-357a-4cc0-8b6e-af330c09fe7f-lE mgrto.srtasmota-e.png
                                  
                                  Sieht fast so aus, als hätte es mit dem msg-object zu tun, was ja komplett durchgeschleift wird.

                                  Getestet mit V0.10 externes NR und ioB NR Adapter.

                                  [
                                     {
                                         "id": "6447bedc408b2e69",
                                         "type": "iobget",
                                         "z": "347707a21df4b745",
                                         "name": "alias.0.Klima.office.Temperatu",
                                         "state": "",
                                         "outputProperty": "payload",
                                         "server": "156c0c01949ae8c4",
                                         "x": 410,
                                         "y": 1000,
                                         "wires": [
                                             [
                                                 "6de201bbfc7ed4c2"
                                             ]
                                         ]
                                     },
                                     {
                                         "id": "4535ffb1c50b52c8",
                                         "type": "inject",
                                         "z": "347707a21df4b745",
                                         "name": "alias.0.Klima.office.Temperatur",
                                         "props": [
                                             {
                                                 "p": "payload"
                                             },
                                             {
                                                 "p": "topic",
                                                 "vt": "str"
                                             }
                                         ],
                                         "repeat": "",
                                         "crontab": "",
                                         "once": false,
                                         "onceDelay": 0.1,
                                         "topic": "alias.0.Klima.office.Temperatur",
                                         "payload": "",
                                         "payloadType": "date",
                                         "x": 410,
                                         "y": 940,
                                         "wires": [
                                             [
                                                 "6447bedc408b2e69"
                                             ]
                                         ]
                                     },
                                     {
                                         "id": "0ad59e53d2561a23",
                                         "type": "debug",
                                         "z": "347707a21df4b745",
                                         "name": "debug 79",
                                         "active": true,
                                         "tosidebar": true,
                                         "console": false,
                                         "tostatus": false,
                                         "complete": "true",
                                         "targetType": "full",
                                         "statusVal": "",
                                         "statusType": "auto",
                                         "x": 640,
                                         "y": 1060,
                                         "wires": []
                                     },
                                     {
                                         "id": "6de201bbfc7ed4c2",
                                         "type": "change",
                                         "z": "347707a21df4b745",
                                         "name": "state -> msg.alias_status",
                                         "rules": [
                                             {
                                                 "t": "set",
                                                 "p": "alias_status",
                                                 "pt": "msg",
                                                 "to": "state",
                                                 "tot": "msg"
                                             }
                                         ],
                                         "action": "",
                                         "property": "",
                                         "from": "",
                                         "to": "",
                                         "reg": false,
                                         "x": 390,
                                         "y": 1060,
                                         "wires": [
                                             [
                                                 "0ad59e53d2561a23",
                                                 "3abb390c37ed8d21"
                                             ]
                                         ]
                                     },
                                     {
                                         "id": "1ac08b45ac708426",
                                         "type": "comment",
                                         "z": "347707a21df4b745",
                                         "name": "get alias status",
                                         "info": "",
                                         "x": 100,
                                         "y": 1000,
                                         "wires": []
                                     },
                                     {
                                         "id": "8f216fcf8b8e7ac9",
                                         "type": "debug",
                                         "z": "347707a21df4b745",
                                         "name": "debug 80",
                                         "active": true,
                                         "tosidebar": true,
                                         "console": false,
                                         "tostatus": false,
                                         "complete": "true",
                                         "targetType": "full",
                                         "statusVal": "",
                                         "statusType": "auto",
                                         "x": 640,
                                         "y": 1200,
                                         "wires": []
                                     },
                                     {
                                         "id": "3abb390c37ed8d21",
                                         "type": "iobgetobject",
                                         "z": "347707a21df4b745",
                                         "name": "",
                                         "objectId": "",
                                         "outputProperty": "payload",
                                         "outputMode": "single",
                                         "objectType": "",
                                         "useWildcard": false,
                                         "includeEnums": true,
                                         "enumTypes": "all",
                                         "server": "156c0c01949ae8c4",
                                         "x": 380,
                                         "y": 1120,
                                         "wires": [
                                             [
                                                 "49f35147ddc3fd53"
                                             ]
                                         ]
                                     },
                                     {
                                         "id": "49f35147ddc3fd53",
                                         "type": "change",
                                         "z": "347707a21df4b745",
                                         "name": "topic -> base obj \\n alias obj -> msg.alias_obj",
                                         "rules": [
                                             {
                                                 "t": "set",
                                                 "p": "alias_obj",
                                                 "pt": "msg",
                                                 "to": "payload",
                                                 "tot": "msg"
                                             },
                                             {
                                                 "t": "set",
                                                 "p": "topic",
                                                 "pt": "msg",
                                                 "to": "payload[0].common.alias.id",
                                                 "tot": "jsonata"
                                             }
                                         ],
                                         "action": "",
                                         "property": "",
                                         "from": "",
                                         "to": "",
                                         "reg": false,
                                         "x": 390,
                                         "y": 1200,
                                         "wires": [
                                             [
                                                 "8f216fcf8b8e7ac9",
                                                 "1b8c6ab33d293cac"
                                             ]
                                         ]
                                     },
                                     {
                                         "id": "0356d0709e59121b",
                                         "type": "comment",
                                         "z": "347707a21df4b745",
                                         "name": "set alias_obj \\n and base topic",
                                         "info": "",
                                         "x": 100,
                                         "y": 1200,
                                         "wires": []
                                     },
                                     {
                                         "id": "a7ff286eeb7f78c2",
                                         "type": "comment",
                                         "z": "347707a21df4b745",
                                         "name": "get alias obj with \\n alias and enum",
                                         "info": "",
                                         "x": 100,
                                         "y": 1120,
                                         "wires": []
                                     },
                                     {
                                         "id": "b1a54bf0257b02aa",
                                         "type": "comment",
                                         "z": "347707a21df4b745",
                                         "name": "set alias_status to \\n state",
                                         "info": "",
                                         "x": 110,
                                         "y": 1060,
                                         "wires": []
                                     },
                                     {
                                         "id": "1b8c6ab33d293cac",
                                         "type": "iobgetobject",
                                         "z": "347707a21df4b745",
                                         "name": "",
                                         "objectId": "",
                                         "outputProperty": "payload",
                                         "outputMode": "single",
                                         "objectType": "",
                                         "useWildcard": false,
                                         "includeEnums": true,
                                         "enumTypes": "all",
                                         "server": "156c0c01949ae8c4",
                                         "x": 380,
                                         "y": 1280,
                                         "wires": [
                                             [
                                                 "109f927759f1cd95"
                                             ]
                                         ]
                                     },
                                     {
                                         "id": "109f927759f1cd95",
                                         "type": "debug",
                                         "z": "347707a21df4b745",
                                         "name": "debug 81",
                                         "active": true,
                                         "tosidebar": true,
                                         "console": false,
                                         "tostatus": false,
                                         "complete": "true",
                                         "targetType": "full",
                                         "statusVal": "",
                                         "statusType": "auto",
                                         "x": 700,
                                         "y": 1280,
                                         "wires": []
                                     },
                                     {
                                         "id": "156c0c01949ae8c4",
                                         "type": "iob-config",
                                         "name": "Test-ioB",
                                         "iobhost": "iobroker",
                                         "iobport": "8081",
                                         "user": "",
                                         "password": "",
                                         "usessl": false
                                     }
                                  ]
                                  

                                  Marc BergM 2 Antworten Letzte Antwort
                                  0
                                  • R rewenode

                                    @marc-berg Bin da auf ein Problem gestossen. Könnte evtl. ein Bug sein oder an meiner Vorgehensweise liegen.

                                    Ich arbeite relativ intensiv mit alias-states. Hauptsächlich um Sensoren schnell wechseln zu können.
                                    So ist der alias-state: alias.0.Klima.office.Temperatur halt die Temp im Office.
                                    Diesem State ist der Ort (enum.rooms.ground_floor.office) zugewiesen.

                                    Der Sensor selbst(base) ist irgend ein Temperatursensor, der auch schnell mal gewechselt werden kann.
                                    Zum Test grad der Temp-Sensor einer Tasmota-Steckdose: "mqtt.0.stTasmota-8.tele.SENSOR"
                                    Diese wiederum hat eigene Eigenschaften, die ich i.d.R. ebenfalls in enums abgelegt habe. Da ist dann halt der Hardwaretyp/Batterie etc. hinterlegt.

                                    Ich habe mir da so Listen gebastelt z.B. „offene Fenster“, die dann neben dem Status auch gleich signalisieren, wenn die Batterie zur Neige geht. Kurz, machmal brauche ich neben dem State auch das eigentliche (base) Objekt.

                                    Mit den alten iob-Nodes bin ich immer folgendermaßen vorgegangen:

                                    05351d6b-942e-4c64-9b95-4a497d6730a6-2025-07-07_14-30-51.png 

                                    Umständlich aber funktioniert.

                                    Jetzt versuche ich das mit deinen nodes. Da nehme natürlich statt der iob-list-node die „WS ioB getObj+Enum.
                                    Die Node ansich tut einen hervorragenden Job und ist extrem flexibel.
                                    da5596ea-0600-4883-97fc-4c2f1dd53750-2025-07-07_15-46-04.png 
                                    Obwohl der topic korrekt gesetzt ist, bekomme ich den Fehler, wenn ich als letztes das base object abfragen will.
                                    Frage ich das base object separat ab, läuft alles bestens.
                                    44721575-357a-4cc0-8b6e-af330c09fe7f-lE mgrto.srtasmota-e.png
                                    
                                    Sieht fast so aus, als hätte es mit dem msg-object zu tun, was ja komplett durchgeschleift wird.

                                    Getestet mit V0.10 externes NR und ioB NR Adapter.

                                    [
                                       {
                                           "id": "6447bedc408b2e69",
                                           "type": "iobget",
                                           "z": "347707a21df4b745",
                                           "name": "alias.0.Klima.office.Temperatu",
                                           "state": "",
                                           "outputProperty": "payload",
                                           "server": "156c0c01949ae8c4",
                                           "x": 410,
                                           "y": 1000,
                                           "wires": [
                                               [
                                                   "6de201bbfc7ed4c2"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "4535ffb1c50b52c8",
                                           "type": "inject",
                                           "z": "347707a21df4b745",
                                           "name": "alias.0.Klima.office.Temperatur",
                                           "props": [
                                               {
                                                   "p": "payload"
                                               },
                                               {
                                                   "p": "topic",
                                                   "vt": "str"
                                               }
                                           ],
                                           "repeat": "",
                                           "crontab": "",
                                           "once": false,
                                           "onceDelay": 0.1,
                                           "topic": "alias.0.Klima.office.Temperatur",
                                           "payload": "",
                                           "payloadType": "date",
                                           "x": 410,
                                           "y": 940,
                                           "wires": [
                                               [
                                                   "6447bedc408b2e69"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "0ad59e53d2561a23",
                                           "type": "debug",
                                           "z": "347707a21df4b745",
                                           "name": "debug 79",
                                           "active": true,
                                           "tosidebar": true,
                                           "console": false,
                                           "tostatus": false,
                                           "complete": "true",
                                           "targetType": "full",
                                           "statusVal": "",
                                           "statusType": "auto",
                                           "x": 640,
                                           "y": 1060,
                                           "wires": []
                                       },
                                       {
                                           "id": "6de201bbfc7ed4c2",
                                           "type": "change",
                                           "z": "347707a21df4b745",
                                           "name": "state -> msg.alias_status",
                                           "rules": [
                                               {
                                                   "t": "set",
                                                   "p": "alias_status",
                                                   "pt": "msg",
                                                   "to": "state",
                                                   "tot": "msg"
                                               }
                                           ],
                                           "action": "",
                                           "property": "",
                                           "from": "",
                                           "to": "",
                                           "reg": false,
                                           "x": 390,
                                           "y": 1060,
                                           "wires": [
                                               [
                                                   "0ad59e53d2561a23",
                                                   "3abb390c37ed8d21"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "1ac08b45ac708426",
                                           "type": "comment",
                                           "z": "347707a21df4b745",
                                           "name": "get alias status",
                                           "info": "",
                                           "x": 100,
                                           "y": 1000,
                                           "wires": []
                                       },
                                       {
                                           "id": "8f216fcf8b8e7ac9",
                                           "type": "debug",
                                           "z": "347707a21df4b745",
                                           "name": "debug 80",
                                           "active": true,
                                           "tosidebar": true,
                                           "console": false,
                                           "tostatus": false,
                                           "complete": "true",
                                           "targetType": "full",
                                           "statusVal": "",
                                           "statusType": "auto",
                                           "x": 640,
                                           "y": 1200,
                                           "wires": []
                                       },
                                       {
                                           "id": "3abb390c37ed8d21",
                                           "type": "iobgetobject",
                                           "z": "347707a21df4b745",
                                           "name": "",
                                           "objectId": "",
                                           "outputProperty": "payload",
                                           "outputMode": "single",
                                           "objectType": "",
                                           "useWildcard": false,
                                           "includeEnums": true,
                                           "enumTypes": "all",
                                           "server": "156c0c01949ae8c4",
                                           "x": 380,
                                           "y": 1120,
                                           "wires": [
                                               [
                                                   "49f35147ddc3fd53"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "49f35147ddc3fd53",
                                           "type": "change",
                                           "z": "347707a21df4b745",
                                           "name": "topic -> base obj \\n alias obj -> msg.alias_obj",
                                           "rules": [
                                               {
                                                   "t": "set",
                                                   "p": "alias_obj",
                                                   "pt": "msg",
                                                   "to": "payload",
                                                   "tot": "msg"
                                               },
                                               {
                                                   "t": "set",
                                                   "p": "topic",
                                                   "pt": "msg",
                                                   "to": "payload[0].common.alias.id",
                                                   "tot": "jsonata"
                                               }
                                           ],
                                           "action": "",
                                           "property": "",
                                           "from": "",
                                           "to": "",
                                           "reg": false,
                                           "x": 390,
                                           "y": 1200,
                                           "wires": [
                                               [
                                                   "8f216fcf8b8e7ac9",
                                                   "1b8c6ab33d293cac"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "0356d0709e59121b",
                                           "type": "comment",
                                           "z": "347707a21df4b745",
                                           "name": "set alias_obj \\n and base topic",
                                           "info": "",
                                           "x": 100,
                                           "y": 1200,
                                           "wires": []
                                       },
                                       {
                                           "id": "a7ff286eeb7f78c2",
                                           "type": "comment",
                                           "z": "347707a21df4b745",
                                           "name": "get alias obj with \\n alias and enum",
                                           "info": "",
                                           "x": 100,
                                           "y": 1120,
                                           "wires": []
                                       },
                                       {
                                           "id": "b1a54bf0257b02aa",
                                           "type": "comment",
                                           "z": "347707a21df4b745",
                                           "name": "set alias_status to \\n state",
                                           "info": "",
                                           "x": 110,
                                           "y": 1060,
                                           "wires": []
                                       },
                                       {
                                           "id": "1b8c6ab33d293cac",
                                           "type": "iobgetobject",
                                           "z": "347707a21df4b745",
                                           "name": "",
                                           "objectId": "",
                                           "outputProperty": "payload",
                                           "outputMode": "single",
                                           "objectType": "",
                                           "useWildcard": false,
                                           "includeEnums": true,
                                           "enumTypes": "all",
                                           "server": "156c0c01949ae8c4",
                                           "x": 380,
                                           "y": 1280,
                                           "wires": [
                                               [
                                                   "109f927759f1cd95"
                                               ]
                                           ]
                                       },
                                       {
                                           "id": "109f927759f1cd95",
                                           "type": "debug",
                                           "z": "347707a21df4b745",
                                           "name": "debug 81",
                                           "active": true,
                                           "tosidebar": true,
                                           "console": false,
                                           "tostatus": false,
                                           "complete": "true",
                                           "targetType": "full",
                                           "statusVal": "",
                                           "statusType": "auto",
                                           "x": 700,
                                           "y": 1280,
                                           "wires": []
                                       },
                                       {
                                           "id": "156c0c01949ae8c4",
                                           "type": "iob-config",
                                           "name": "Test-ioB",
                                           "iobhost": "iobroker",
                                           "iobport": "8081",
                                           "user": "",
                                           "password": "",
                                           "usessl": false
                                       }
                                    ]
                                    

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

                                    @rewenode

                                    Exportiere bitte noch die verarbeiteten Datenpunkte aus MQTT.* und alias.* aus dem Objektbaum als JSON und stelle sie hier rein.

                                    Ahh, Fehler gefunden. Der letzte Node bekommt durch die Verkettung als ObjectType "any" (als String) mitgegeben, den es so nicht gibt. Ich schleife ja die Suchparameter mit. Als Quickfix diese Eigenschaft im letzen Change-Node einfach löschen.

                                    d3ec120f-285c-4192-af1c-e1cc77ba146c-grafik.png

                                    Ich schau mal, dass ich den Eingabe-Parameter "any" und "null" gleichsetze.

                                    Das ist wie die Geschichte mit der "any"-Key ... :-)

                                    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 2 Antworten Letzte Antwort
                                    1
                                    • Marc BergM Marc Berg

                                      @rewenode

                                      Exportiere bitte noch die verarbeiteten Datenpunkte aus MQTT.* und alias.* aus dem Objektbaum als JSON und stelle sie hier rein.

                                      Ahh, Fehler gefunden. Der letzte Node bekommt durch die Verkettung als ObjectType "any" (als String) mitgegeben, den es so nicht gibt. Ich schleife ja die Suchparameter mit. Als Quickfix diese Eigenschaft im letzen Change-Node einfach löschen.

                                      d3ec120f-285c-4192-af1c-e1cc77ba146c-grafik.png

                                      Ich schau mal, dass ich den Eingabe-Parameter "any" und "null" gleichsetze.

                                      Das ist wie die Geschichte mit der "any"-Key ... :-)

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

                                      @marc-berg Hoffe, ich habs richtig exportiert.
                                      mqtt.0.stTasmota-8.json alias.0.Klima.office.Temperatur.json

                                      Marc BergM 1 Antwort Letzte Antwort
                                      0
                                      • R rewenode

                                        @marc-berg Hoffe, ich habs richtig exportiert.
                                        mqtt.0.stTasmota-8.json alias.0.Klima.office.Temperatur.json

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

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

                                        Hoffe, ich habs richtig exportiert.

                                        ja, sorry. Habe meinen letzten Post editiert.

                                        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.

                                        1 Antwort Letzte Antwort
                                        0
                                        • Marc BergM Marc Berg

                                          @rewenode

                                          Exportiere bitte noch die verarbeiteten Datenpunkte aus MQTT.* und alias.* aus dem Objektbaum als JSON und stelle sie hier rein.

                                          Ahh, Fehler gefunden. Der letzte Node bekommt durch die Verkettung als ObjectType "any" (als String) mitgegeben, den es so nicht gibt. Ich schleife ja die Suchparameter mit. Als Quickfix diese Eigenschaft im letzen Change-Node einfach löschen.

                                          d3ec120f-285c-4192-af1c-e1cc77ba146c-grafik.png

                                          Ich schau mal, dass ich den Eingabe-Parameter "any" und "null" gleichsetze.

                                          Das ist wie die Geschichte mit der "any"-Key ... :-)

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

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

                                          Als Quickfix diese Eigenschaft im letzen Change-Node einfach löschen.

                                          Ja passt so:+1: Und keine Eile, das läuft ja noch nicht produktiv.

                                          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

                                          931

                                          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