Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Node-Red
    5. Wert eines ioBroker Datenpunktes als JSON ausgeben

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Wert eines ioBroker Datenpunktes als JSON ausgeben

    This topic has been deleted. Only users with topic management privileges can see it.
    • W
      wye last edited by wye

      Ich probiere gefühlt seit zwei Stunden herum um ein paar LED Streifen per DMX anzusteuern, aber das Ganze will nicht über Datenpunkte aus ioB funktionieren.

      Ich nutze Inject Nodes um meine 3 RGB Kanäle mit 0 oder 255 anzusteuern.

      {"buckets":[
      {"channel":1,"value":255},
      {"channel":2,"value":255},
      {"channel":3,"value":255}
      ]}
      

      Das funktioniert auch ohne Probleme, nur ist das ja nun etwas statisch....
      Ich möchte die Werte aus einem IoBroker Datenpunkt auslesen und entsprechend in JSON ausgeben.
      objects.PNG
      flow.PNG
      iobroker get.PNG
      func.PNG

      Mir ist nun der Syntax oder der genaue Ablauf nicht klar um den aktuellen Wert eben nicht stumpf vorzugeben, sondern dieser soll dynamisch vom ioBroker Datenpunkt eingelesen werden.

      Hoffe mir kann jemand helfen....

      Vielen Dank vorab!

      1 Reply Last reply Reply Quote 0
      • mickym
        mickym Most Active last edited by mickym

        Ich habe hierzu schon einen kompletten Flow ins Netz gestellt.

        https://forum.iobroker.net/topic/31010/gelöst-shelly-rgbw-steuern

        Importiere mal den Flow aus dem Thread und wenn Du noch Fragen hast - helfe ich, wenn ich kann.

        Hier nochmal der Flow:

        [
            {
                "id": "3830bf94.4817e",
                "type": "inject",
                "z": "6e170384.60c96c",
                "name": "Objekt",
                "topic": "",
                "payload": "{\"ison\":true,\"mode\":\"color\",\"red\":254,\"green\":158,\"blue\":91,\"white\":0,\"gain\":4,\"effect\":0,\"power\":0.46,\"overpower\":false}",
                "payloadType": "json",
                "repeat": "",
                "crontab": "",
                "once": false,
                "onceDelay": 0.1,
                "x": 190,
                "y": 3420,
                "wires": [
                    [
                        "8b0a970c.1b38d8",
                        "e02931c5.85468",
                        "6a06c3af.5aa0fc"
                    ]
                ]
            },
            {
                "id": "8b0a970c.1b38d8",
                "type": "change",
                "z": "6e170384.60c96c",
                "name": "rot",
                "rules": [
                    {
                        "t": "set",
                        "p": "payload",
                        "pt": "msg",
                        "to": "payload.red",
                        "tot": "msg"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 410,
                "y": 3340,
                "wires": [
                    [
                        "f0321cab.0adaa"
                    ]
                ]
            },
            {
                "id": "e02931c5.85468",
                "type": "change",
                "z": "6e170384.60c96c",
                "name": "grün",
                "rules": [
                    {
                        "t": "set",
                        "p": "payload",
                        "pt": "msg",
                        "to": "payload.green",
                        "tot": "msg"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 410,
                "y": 3480,
                "wires": [
                    [
                        "17d1ea55.024256"
                    ]
                ]
            },
            {
                "id": "f0321cab.0adaa",
                "type": "ui_slider",
                "z": "6e170384.60c96c",
                "name": "Roter Regler",
                "label": "Rot",
                "tooltip": "",
                "group": "b38597db.715cf8",
                "order": 0,
                "width": 0,
                "height": 0,
                "passthru": true,
                "outs": "all",
                "topic": "",
                "min": 0,
                "max": "255",
                "step": 1,
                "x": 610,
                "y": 3340,
                "wires": [
                    [
                        "c9c8c934.43d1c8"
                    ]
                ]
            },
            {
                "id": "17d1ea55.024256",
                "type": "ui_slider",
                "z": "6e170384.60c96c",
                "name": "Grüner Regler",
                "label": "Grün",
                "tooltip": "",
                "group": "b38597db.715cf8",
                "order": 0,
                "width": 0,
                "height": 0,
                "passthru": true,
                "outs": "all",
                "topic": "",
                "min": 0,
                "max": "255",
                "step": 1,
                "x": 620,
                "y": 3480,
                "wires": [
                    [
                        "785a8552.a5585c"
                    ]
                ]
            },
            {
                "id": "6a06c3af.5aa0fc",
                "type": "change",
                "z": "6e170384.60c96c",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "fobject",
                        "pt": "flow",
                        "to": "payload",
                        "tot": "msg"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 430,
                "y": 3620,
                "wires": [
                    []
                ]
            },
            {
                "id": "c9c8c934.43d1c8",
                "type": "change",
                "z": "6e170384.60c96c",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "fobject.red",
                        "pt": "flow",
                        "to": "payload",
                        "tot": "msg"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 840,
                "y": 3340,
                "wires": [
                    [
                        "aa46c4cf.934fa8"
                    ]
                ]
            },
            {
                "id": "785a8552.a5585c",
                "type": "change",
                "z": "6e170384.60c96c",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "fobject.green",
                        "pt": "flow",
                        "to": "payload",
                        "tot": "msg"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 850,
                "y": 3480,
                "wires": [
                    [
                        "aa46c4cf.934fa8"
                    ]
                ]
            },
            {
                "id": "aa46c4cf.934fa8",
                "type": "change",
                "z": "6e170384.60c96c",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "payload",
                        "pt": "msg",
                        "to": "fobject",
                        "tot": "flow"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 1100,
                "y": 3400,
                "wires": [
                    [
                        "3cd610b9.19a05"
                    ]
                ]
            },
            {
                "id": "24c16160.799c8e",
                "type": "debug",
                "z": "6e170384.60c96c",
                "name": "Json String",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "x": 1250,
                "y": 3540,
                "wires": []
            },
            {
                "id": "51f0fe94.f0705",
                "type": "json",
                "z": "6e170384.60c96c",
                "name": "",
                "property": "payload",
                "action": "",
                "pretty": false,
                "x": 1390,
                "y": 3460,
                "wires": [
                    [
                        "24c16160.799c8e"
                    ]
                ]
            },
            {
                "id": "3cd610b9.19a05",
                "type": "trigger",
                "z": "6e170384.60c96c",
                "op1": "",
                "op2": "",
                "op1type": "nul",
                "op2type": "payl",
                "duration": "1",
                "extend": true,
                "units": "s",
                "reset": "",
                "bytopic": "all",
                "name": "",
                "x": 1290,
                "y": 3400,
                "wires": [
                    [
                        "51f0fe94.f0705",
                        "f3af5049.4cc4b"
                    ]
                ]
            },
            {
                "id": "f3af5049.4cc4b",
                "type": "debug",
                "z": "6e170384.60c96c",
                "name": "Objekt",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "x": 1520,
                "y": 3380,
                "wires": []
            },
            {
                "id": "b38597db.715cf8",
                "type": "ui_group",
                "z": "",
                "name": "Default",
                "tab": "dc25fe35.866f",
                "disp": true,
                "width": "6",
                "collapse": false
            },
            {
                "id": "dc25fe35.866f",
                "type": "ui_tab",
                "z": "",
                "name": "Test",
                "icon": "dashboard",
                "disabled": false,
                "hidden": false
            }
        ]
        
        
        1 Reply Last reply Reply Quote 0
        • W
          wye last edited by

          Danke für die flotte Antwort.

          Wo würde ich dabei meinen Datenpunkt verknüpfen?

          mickym 1 Reply Last reply Reply Quote 0
          • mickym
            mickym Most Active @wye last edited by

            @wye

            Ich seh ja aus Deinem Screenshot nur, dass Du selbst Datenpunkte anlegst.

            Irgendwo musst Du doch einen Datenpunkt haben, aus dem Du den Status ausliest. Dann zeig mal wie der Kommando String aussehen muss, dass Du als ArtNet Command schickst.

            W 1 Reply Last reply Reply Quote 0
            • W
              wye @mickym last edited by wye

              @mickym
              z.B. diese Inject Node hängt direkt am ArtNet Command
              Inject.PNG
              flow2.PNG

              Meinst du das?
              Zumindest wird damit der Kanal an welchem der Draht für die grünen LEDs hängt angesteuert und leuchtet...

              mickym 1 Reply Last reply Reply Quote 0
              • mickym
                mickym Most Active @wye last edited by

                @wye
                Nein - Du willst das ja nicht mit Inject manuell senden.

                Es muss doch einen oder mehrere Datenpunkte geben, wo Deine Lampe meldet, welchen Zustand sie gerade hat.

                W 1 Reply Last reply Reply Quote 0
                • W
                  wye @mickym last edited by

                  @mickym Achso nein.
                  Bin aktuell ja nur am Testen. Daher habe ich bisher noch keine Abfrage des aktuellen Zustandes.
                  Das bisherige Ziel belief sich rein darauf 0-255 aus meinem ioBroker Objekt /Datenpunkt zu beziehen und das eben nicht manuell zu machen.
                  Der Datenpunkt wird letztenslich über die Vis geändert (zwischen 0 und 255) und entsprechend sollte das durch NodeRed laufen...
                  Verstehst du was ich meine?

                  1 Reply Last reply Reply Quote 0
                  • mickym
                    mickym Most Active last edited by mickym

                    OK - ich verstehe - dann wenn Du vis nutzt willst Du Deine eigenen Datenpunkt auch selbst befüllen.
                    Im Prinzip kannst Du meinen Flow importieren und statt der Regler nimmst Du einen iobroker in Node.

                    Du setzt also eine Flow Variable und speicherst ein Java-Objekt, dass Du dann via JSON Node in einen String umwandelst.

                    Oder anderst ausgedrückt Wenn Du Deinen Grünen Wert änderst setzt Du damit fobject.green, Rot = fObject.red usw.

                    Dieses FObject kannst Du dann via JSON Node in String umwandeln und dann an das ArtNet ausgeben.

                    Was machst Du denn im Moment in Deiner Funktion?

                    W 1 Reply Last reply Reply Quote 0
                    • W
                      wye @mickym last edited by

                      @mickym Könntest du den letzten Absatz etwas genauer ausführen?
                      Iobroker In Node ist soweit klar... Wie setze ich die Variable in Java? Welchen Node /Baustein verwende ich dafür?

                      mickym 1 Reply Last reply Reply Quote 0
                      • mickym
                        mickym Most Active @wye last edited by

                        @wye

                        Wenn Du meinen Flow implementierst und den Inject Node drückst, dann siehst Du unter den Kontextdaten das Objekt bzw. in der Debug Node.

                        screen.png

                        Oben siehst Du das Java Object und dann mit JSON Node in string umgewandelt

                        W 1 Reply Last reply Reply Quote 0
                        • W
                          wye @mickym last edited by

                          @mickym Danke für deine Hilfe.

                          Ich habe den Kopf in den Sand gesteckt bzgl. NodeRed.

                          Habe das Script von Alex ausprobiert und das sagt mir eher zu und funktioniert auch bereits wie gewünscht mit Input von meiner Vis.

                          Also nochmals vielen Dank.

                          Kann/Könnte dann geschlossen werden.

                          1 Reply Last reply Reply Quote 0
                          • First post
                            Last post

                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          799
                          Online

                          31.7k
                          Users

                          79.7k
                          Topics

                          1.3m
                          Posts

                          2
                          11
                          724
                          Loading More Posts
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes
                          Reply
                          • Reply as topic
                          Log in to reply
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                          The ioBroker Community 2014-2023
                          logo