Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. Node-Red Hilfe

NEWS

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

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

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

Node-Red Hilfe

Scheduled Pinned Locked Moved Node-Red
103 Posts 3 Posters 10.0k Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • mickymM mickym

    @stefan22 OK - dann dürfte Dir aber der Tipp mit der aggregator Node soweit erst mal hoffentlich weiter geholfen haben.

    S Offline
    S Offline
    stefan22
    wrote on last edited by
    #61

    @mickym Soooo ich hätt da mal wieder ein kleines Problem Lach . Ich bekomme nen Werte String von meinen IPSteckdosen per UDP rein diesen möchte ich umändern. Damit ich meine 3 Steckdosen mit True und False auswerten kann.

    NET-PwrCtrl:ANEL.INTERN :192.168.2.16:255.255.255.0:192.168.2.1:0.4.163.18.8.89:Nr. 1,1:Nr. 2,1:Nr. 3,1:Nr. 4,0:Nr. 5,0:Nr. 6,0:Nr. 7,0:Nr. 8,0:248:80:NET-PWRCTRL_04.6:H:xor:

    So kommt der Code rein.

    Jetzt hab ich es per Change Node probiert Sprich Nr. 1,1 durch True zu ersetzen Nr.1,0 durch false . Hm leider klappt das nicht.

    IMG_2899.jpeg

    mickymM 3 Replies Last reply
    0
    • S stefan22

      @mickym Soooo ich hätt da mal wieder ein kleines Problem Lach . Ich bekomme nen Werte String von meinen IPSteckdosen per UDP rein diesen möchte ich umändern. Damit ich meine 3 Steckdosen mit True und False auswerten kann.

      NET-PwrCtrl:ANEL.INTERN :192.168.2.16:255.255.255.0:192.168.2.1:0.4.163.18.8.89:Nr. 1,1:Nr. 2,1:Nr. 3,1:Nr. 4,0:Nr. 5,0:Nr. 6,0:Nr. 7,0:Nr. 8,0:248:80:NET-PWRCTRL_04.6:H:xor:

      So kommt der Code rein.

      Jetzt hab ich es per Change Node probiert Sprich Nr. 1,1 durch True zu ersetzen Nr.1,0 durch false . Hm leider klappt das nicht.

      IMG_2899.jpeg

      mickymM Online
      mickymM Online
      mickym
      Most Active
      wrote on last edited by mickym
      #62

      @stefan22 Du musst doch den String erst mal aufteilen nach den Bedeutungen. - siehe Flow danach!

      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

      1 Reply Last reply
      0
      • S stefan22

        @mickym Soooo ich hätt da mal wieder ein kleines Problem Lach . Ich bekomme nen Werte String von meinen IPSteckdosen per UDP rein diesen möchte ich umändern. Damit ich meine 3 Steckdosen mit True und False auswerten kann.

        NET-PwrCtrl:ANEL.INTERN :192.168.2.16:255.255.255.0:192.168.2.1:0.4.163.18.8.89:Nr. 1,1:Nr. 2,1:Nr. 3,1:Nr. 4,0:Nr. 5,0:Nr. 6,0:Nr. 7,0:Nr. 8,0:248:80:NET-PWRCTRL_04.6:H:xor:

        So kommt der Code rein.

        Jetzt hab ich es per Change Node probiert Sprich Nr. 1,1 durch True zu ersetzen Nr.1,0 durch false . Hm leider klappt das nicht.

        IMG_2899.jpeg

        mickymM Online
        mickymM Online
        mickym
        Most Active
        wrote on last edited by mickym
        #63

        @stefan22 So ich habe Dir den Flow fertig gemacht - Du musst nur noch DEINE UDP Node vorne statt oder zusätzlich zu dem Inject Node machen.

        [
            {
                "id": "13716b60.f67195",
                "type": "inject",
                "z": "98fc4b41.33d6f8",
                "name": "",
                "props": [
                    {
                        "p": "payload"
                    },
                    {
                        "p": "topic",
                        "vt": "str"
                    }
                ],
                "repeat": "",
                "crontab": "",
                "once": false,
                "onceDelay": 0.1,
                "topic": "",
                "payload": "NET-PwrCtrl:ANEL.INTERN :192.168.2.16:255.255.255.0:192.168.2.1:0.4.163.18.8.89:Nr. 1,1:Nr. 2,1:Nr. 3,1:Nr. 4,0:Nr. 5,0:Nr. 6,0:Nr. 7,0:Nr. 8,0:248:80:NET-PWRCTRL_04.6:H:xor:",
                "payloadType": "str",
                "x": 190,
                "y": 500,
                "wires": [
                    [
                        "a8cffdaa.8c57f"
                    ]
                ]
            },
            {
                "id": "a8cffdaa.8c57f",
                "type": "split",
                "z": "98fc4b41.33d6f8",
                "name": "",
                "splt": ":",
                "spltType": "str",
                "arraySplt": 1,
                "arraySpltType": "len",
                "stream": false,
                "addname": "",
                "x": 350,
                "y": 500,
                "wires": [
                    [
                        "3c05f116.b85dfe"
                    ]
                ]
            },
            {
                "id": "3c05f116.b85dfe",
                "type": "switch",
                "z": "98fc4b41.33d6f8",
                "name": "",
                "property": "payload",
                "propertyType": "msg",
                "rules": [
                    {
                        "t": "regex",
                        "v": "Nr.\\W\\d,(\\d)",
                        "vt": "str",
                        "case": false
                    }
                ],
                "checkall": "true",
                "repair": false,
                "outputs": 1,
                "x": 510,
                "y": 500,
                "wires": [
                    [
                        "3f8e3c49.d55c64"
                    ]
                ]
            },
            {
                "id": "3f8e3c49.d55c64",
                "type": "change",
                "z": "98fc4b41.33d6f8",
                "name": "",
                "rules": [
                    {
                        "t": "set",
                        "p": "topic",
                        "pt": "msg",
                        "to": "payload",
                        "tot": "msg"
                    },
                    {
                        "t": "change",
                        "p": "topic",
                        "pt": "msg",
                        "from": "(Nr.\\W\\d),\\d",
                        "fromt": "re",
                        "to": "$1",
                        "tot": "str"
                    },
                    {
                        "t": "change",
                        "p": "payload",
                        "pt": "msg",
                        "from": "Nr.\\W\\d,(\\d)",
                        "fromt": "re",
                        "to": "$1",
                        "tot": "str"
                    },
                    {
                        "t": "change",
                        "p": "payload",
                        "pt": "msg",
                        "from": "0",
                        "fromt": "str",
                        "to": "false",
                        "tot": "bool"
                    },
                    {
                        "t": "change",
                        "p": "payload",
                        "pt": "msg",
                        "from": "1",
                        "fromt": "str",
                        "to": "true",
                        "tot": "bool"
                    }
                ],
                "action": "",
                "property": "",
                "from": "",
                "to": "",
                "reg": false,
                "x": 690,
                "y": 500,
                "wires": [
                    [
                        "d68131f7.489bd"
                    ]
                ]
            },
            {
                "id": "d68131f7.489bd",
                "type": "switch",
                "z": "98fc4b41.33d6f8",
                "name": "",
                "property": "topic",
                "propertyType": "msg",
                "rules": [
                    {
                        "t": "eq",
                        "v": "Nr. 1",
                        "vt": "str"
                    },
                    {
                        "t": "eq",
                        "v": "Nr. 2",
                        "vt": "str"
                    },
                    {
                        "t": "eq",
                        "v": "Nr. 3",
                        "vt": "str"
                    },
                    {
                        "t": "eq",
                        "v": "Nr. 4",
                        "vt": "str"
                    },
                    {
                        "t": "eq",
                        "v": "Nr. 5",
                        "vt": "str"
                    },
                    {
                        "t": "eq",
                        "v": "Nr. 6",
                        "vt": "str"
                    },
                    {
                        "t": "eq",
                        "v": "Nr. 7",
                        "vt": "str"
                    },
                    {
                        "t": "eq",
                        "v": "Nr. 8",
                        "vt": "str"
                    }
                ],
                "checkall": "true",
                "repair": false,
                "outputs": 8,
                "x": 900,
                "y": 500,
                "wires": [
                    [
                        "43236246.2a3cdc"
                    ],
                    [
                        "f2342240.43dce"
                    ],
                    [
                        "4c422a88.79b674"
                    ],
                    [
                        "7360dd9a.b9b404"
                    ],
                    [
                        "b44fe117.25c32"
                    ],
                    [
                        "7db66d75.b4ae14"
                    ],
                    [
                        "b2547ef7.a8d86"
                    ],
                    [
                        "ed920844.f36628"
                    ]
                ]
            },
            {
                "id": "43236246.2a3cdc",
                "type": "debug",
                "z": "98fc4b41.33d6f8",
                "name": "Steckdose 1",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 1110,
                "y": 360,
                "wires": []
            },
            {
                "id": "f2342240.43dce",
                "type": "debug",
                "z": "98fc4b41.33d6f8",
                "name": "Steckdose 2",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 1110,
                "y": 400,
                "wires": []
            },
            {
                "id": "4c422a88.79b674",
                "type": "debug",
                "z": "98fc4b41.33d6f8",
                "name": "Steckdose 3",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 1110,
                "y": 440,
                "wires": []
            },
            {
                "id": "7360dd9a.b9b404",
                "type": "debug",
                "z": "98fc4b41.33d6f8",
                "name": "Steckdose 4",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 1110,
                "y": 480,
                "wires": []
            },
            {
                "id": "b44fe117.25c32",
                "type": "debug",
                "z": "98fc4b41.33d6f8",
                "name": "Steckdose 5",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 1110,
                "y": 520,
                "wires": []
            },
            {
                "id": "7db66d75.b4ae14",
                "type": "debug",
                "z": "98fc4b41.33d6f8",
                "name": "Steckdose 6",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 1110,
                "y": 560,
                "wires": []
            },
            {
                "id": "b2547ef7.a8d86",
                "type": "debug",
                "z": "98fc4b41.33d6f8",
                "name": "Steckdose 7",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 1110,
                "y": 600,
                "wires": []
            },
            {
                "id": "ed920844.f36628",
                "type": "debug",
                "z": "98fc4b41.33d6f8",
                "name": "Steckdose 8",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 1110,
                "y": 640,
                "wires": []
            }
        ]
        

        Schaut dann so aus:

        screen.png

        Mit dem FLOW ist es egal - was davor oder dahinter steht - das wird einfach ignoriert. 😉

        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

        1 Reply Last reply
        0
        • S stefan22

          @mickym Soooo ich hätt da mal wieder ein kleines Problem Lach . Ich bekomme nen Werte String von meinen IPSteckdosen per UDP rein diesen möchte ich umändern. Damit ich meine 3 Steckdosen mit True und False auswerten kann.

          NET-PwrCtrl:ANEL.INTERN :192.168.2.16:255.255.255.0:192.168.2.1:0.4.163.18.8.89:Nr. 1,1:Nr. 2,1:Nr. 3,1:Nr. 4,0:Nr. 5,0:Nr. 6,0:Nr. 7,0:Nr. 8,0:248:80:NET-PWRCTRL_04.6:H:xor:

          So kommt der Code rein.

          Jetzt hab ich es per Change Node probiert Sprich Nr. 1,1 durch True zu ersetzen Nr.1,0 durch false . Hm leider klappt das nicht.

          IMG_2899.jpeg

          mickymM Online
          mickymM Online
          mickym
          Most Active
          wrote on last edited by
          #64

          @stefan22 said in Node-Red Hilfe:

          @mickym Soooo ich hätt da mal wieder ein kleines Problem Lach . Ich bekomme nen Werte String von meinen IPSteckdosen per UDP rein diesen möchte ich umändern. Damit ich meine 3 Steckdosen mit True und False auswerten kann.

          NET-PwrCtrl:ANEL.INTERN :192.168.2.16:255.255.255.0:192.168.2.1:0.4.163.18.8.89:Nr. 1,1:Nr. 2,1:Nr. 3,1:Nr. 4,0:Nr. 5,0:Nr. 6,0:Nr. 7,0:Nr. 8,0:248:80:NET-PWRCTRL_04.6:H:xor:

          So kommt der Code rein.

          Jetzt hab ich es per Change Node probiert Sprich Nr. 1,1 durch True zu ersetzen Nr.1,0 durch false . Hm leider klappt das nicht.

          IMG_2899.jpeg

          Warum das nicht geht ist einfach zu erklären. Die msg.payload enthält den ganzen String und nicht nur einen Teil. Also kann die Change Node nichts zum ersetzen finden. Und die letzte Festlegung ist unsinnig - da Du msg.payload = msg.payload setzt.

          Ansonsten wenn Du zu meinem Flow Fragen hast - ich erkläre es Dir gerne.

          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

          S 1 Reply Last reply
          0
          • mickymM mickym

            @stefan22 said in Node-Red Hilfe:

            @mickym Soooo ich hätt da mal wieder ein kleines Problem Lach . Ich bekomme nen Werte String von meinen IPSteckdosen per UDP rein diesen möchte ich umändern. Damit ich meine 3 Steckdosen mit True und False auswerten kann.

            NET-PwrCtrl:ANEL.INTERN :192.168.2.16:255.255.255.0:192.168.2.1:0.4.163.18.8.89:Nr. 1,1:Nr. 2,1:Nr. 3,1:Nr. 4,0:Nr. 5,0:Nr. 6,0:Nr. 7,0:Nr. 8,0:248:80:NET-PWRCTRL_04.6:H:xor:

            So kommt der Code rein.

            Jetzt hab ich es per Change Node probiert Sprich Nr. 1,1 durch True zu ersetzen Nr.1,0 durch false . Hm leider klappt das nicht.

            IMG_2899.jpeg

            Warum das nicht geht ist einfach zu erklären. Die msg.payload enthält den ganzen String und nicht nur einen Teil. Also kann die Change Node nichts zum ersetzen finden. Und die letzte Festlegung ist unsinnig - da Du msg.payload = msg.payload setzt.

            Ansonsten wenn Du zu meinem Flow Fragen hast - ich erkläre es Dir gerne.

            S Offline
            S Offline
            stefan22
            wrote on last edited by
            #65

            @mickym ok 🙂 Dann fangen wir mal an. Es würde quasi nur mit der Change Node klappen wenn z.b. eine json (java) sprich wo die Objekte und Variablen schon bestehen?
            Würde es z.B. , auch wenn es umständlich wäre, gehen wenn ich nach dem UPD Eingang ne Function Node setzte und den eingehend String mit variablen und Objekte definiere ????
            Oder bin ich da auch auf dem Holzweg

            Mal davon abgesehen das es nicht geht wie ich es mir gedacht habe , was müsste dann zum Festlegen in der Change Node angegeben werden.
            Das Festlegen definiert doch was mit der eingehenden msg.payload passiert und wie sie dann übergeben wird oder ?

            Gruß

            mickymM 1 Reply Last reply
            0
            • S stefan22

              @mickym ok 🙂 Dann fangen wir mal an. Es würde quasi nur mit der Change Node klappen wenn z.b. eine json (java) sprich wo die Objekte und Variablen schon bestehen?
              Würde es z.B. , auch wenn es umständlich wäre, gehen wenn ich nach dem UPD Eingang ne Function Node setzte und den eingehend String mit variablen und Objekte definiere ????
              Oder bin ich da auch auf dem Holzweg

              Mal davon abgesehen das es nicht geht wie ich es mir gedacht habe , was müsste dann zum Festlegen in der Change Node angegeben werden.
              Das Festlegen definiert doch was mit der eingehenden msg.payload passiert und wie sie dann übergeben wird oder ?

              Gruß

              mickymM Online
              mickymM Online
              mickym
              Most Active
              wrote on last edited by mickym
              #66

              @stefan22 Ich habe Dir doch einen kompletten Flow gemacht - importiere den mal und dann siehst Du doch was ich gemacht habe.

              Also den Code unten in Zwischenablage und dann bei Dir auf Import gehen und dort den Inhalt der Zwischenablage rein. Du musst dann nur noch Deine UDP Node davorklemmen. In dem Inject Node - habe ich exakt den String reinkopiert den Du gepostet hast - deswegen müsste das eigentlich funktionieren.

              Im Großen und Ganzen habe ich Deinen String mit dem Doppelpunkt in einzelne Nachrichten aufgeteilt, dann kümmere ich mich nur noch um den relevanten Teil mit den Nr. 1-8 und setze das topic und die payload.

              Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

              S 1 Reply Last reply
              0
              • mickymM mickym

                @stefan22 Ich habe Dir doch einen kompletten Flow gemacht - importiere den mal und dann siehst Du doch was ich gemacht habe.

                Also den Code unten in Zwischenablage und dann bei Dir auf Import gehen und dort den Inhalt der Zwischenablage rein. Du musst dann nur noch Deine UDP Node davorklemmen. In dem Inject Node - habe ich exakt den String reinkopiert den Du gepostet hast - deswegen müsste das eigentlich funktionieren.

                Im Großen und Ganzen habe ich Deinen String mit dem Doppelpunkt in einzelne Nachrichten aufgeteilt, dann kümmere ich mich nur noch um den relevanten Teil mit den Nr. 1-8 und setze das topic und die payload.

                S Offline
                S Offline
                stefan22
                wrote on last edited by
                #67

                @mickym Jo hat er sooooo. Also bei der Split-Node wird der einkommende Befehl, bei mir von der UPD-Node, genommen und mit : aufgeteilt in einzelne Arrays richtig ? Oder in ein ganzes Array ????

                Sprich alles was zwischen : .... : ist ein Array

                Ahh echt schlimm wenn man null Plan hat

                mickymM 1 Reply Last reply
                0
                • S stefan22

                  @mickym Jo hat er sooooo. Also bei der Split-Node wird der einkommende Befehl, bei mir von der UPD-Node, genommen und mit : aufgeteilt in einzelne Arrays richtig ? Oder in ein ganzes Array ????

                  Sprich alles was zwischen : .... : ist ein Array

                  Ahh echt schlimm wenn man null Plan hat

                  mickymM Online
                  mickymM Online
                  mickym
                  Most Active
                  wrote on last edited by mickym
                  #68

                  @stefan22 Nein nicht in ein Array - sondern in einzelne Nachrichten. Das heißt alles zwischen ein ":" wird eine eigene einzelne Nachricht - die damit eigenständig behandeln kannst. Mit dem nachfolgenden Switch Befehl lasse ich dann nur die Nachrichten durch die dem Schema: Nr. <Zahl>,<0 oder 1> enthalten durch usw.

                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                  S 1 Reply Last reply
                  0
                  • mickymM mickym

                    @stefan22 Nein nicht in ein Array - sondern in einzelne Nachrichten. Das heißt alles zwischen ein ":" wird eine eigene einzelne Nachricht - die damit eigenständig behandeln kannst. Mit dem nachfolgenden Switch Befehl lasse ich dann nur die Nachrichten durch die dem Schema: Nr. <Zahl>,<0 oder 1> enthalten durch usw.

                    S Offline
                    S Offline
                    stefan22
                    wrote on last edited by
                    #69

                    @mickym na weil du laut node mit : trennst dachte ich es wäre : . Wo kommen dann die "." her ???

                    mickymM 1 Reply Last reply
                    0
                    • S stefan22

                      @mickym na weil du laut node mit : trennst dachte ich es wäre : . Wo kommen dann die "." her ???

                      mickymM Online
                      mickymM Online
                      mickym
                      Most Active
                      wrote on last edited by mickym
                      #70

                      @stefan22 Habe mich verschrieben ist schon korrigiert. 😉 Ich habe halt Deinen UDP String so interpretiert - dass mit ":" einzelne Felder oder Informationen von einander getrennt werden.

                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                      S 1 Reply Last reply
                      0
                      • mickymM mickym

                        @stefan22 Habe mich verschrieben ist schon korrigiert. 😉 Ich habe halt Deinen UDP String so interpretiert - dass mit ":" einzelne Felder oder Informationen von einander getrennt werden.

                        S Offline
                        S Offline
                        stefan22
                        wrote on last edited by
                        #71

                        @mickym 🙂 :Nr. 1,1: wird zu einem Array. Ist das Array dann ein Objekt ?

                        mickymM S 2 Replies Last reply
                        0
                        • S stefan22

                          @mickym 🙂 :Nr. 1,1: wird zu einem Array. Ist das Array dann ein Objekt ?

                          mickymM Online
                          mickymM Online
                          mickym
                          Most Active
                          wrote on last edited by mickym
                          #72

                          @stefan22 Nein kein Array. Nr. 1,1 - wird eine eigene msg.payload.
                          Mach mal ein Debug Node hinter den Split Node - drücke auf den Injekt Node und Du siehst dass der Split Node alles zwischen den ":" in einzelne Nachrichten mit einer msg.payload auftteilt.
                          Wenn das ein Array wäre dann wäre es nur eine payload mit Objekten.
                          Das heißt der Split Node macht Nachrichten, wobei eine Nachricht** dann in der msg.payload: Nr. 1,1 stehen hat.
                          Es ist also kein Objekt oder Array - sondern eine Nachricht mit einem schnöden String. 😉
                          Die Doppelpunkte dienen der Split Node als Marker zur Auftrennung der Nachricht und sind anschließend nicht mehr Bestandteil der Nachricht.

                          Hier ein Video dazu. 😉

                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                          S 1 Reply Last reply
                          0
                          • S stefan22

                            @mickym 🙂 :Nr. 1,1: wird zu einem Array. Ist das Array dann ein Objekt ?

                            S Offline
                            S Offline
                            stefan22
                            wrote on last edited by
                            #73

                            @stefan22 Dann kommt die msg.payload zur ersten Switch-Node.
                            Die bewirkt das du alle Objekt mit Nr. (kriege ich noch hin) das W ist die Leerstelle
                            das d die erste Zahl dann , dann die zweite Zahl da keine Leerstelle nach dem Komma wird diese in Klammern gesetzt ???????

                            Woher weiß man das ????? Lach

                            mickymM 1 Reply Last reply
                            0
                            • mickymM mickym

                              @stefan22 Nein kein Array. Nr. 1,1 - wird eine eigene msg.payload.
                              Mach mal ein Debug Node hinter den Split Node - drücke auf den Injekt Node und Du siehst dass der Split Node alles zwischen den ":" in einzelne Nachrichten mit einer msg.payload auftteilt.
                              Wenn das ein Array wäre dann wäre es nur eine payload mit Objekten.
                              Das heißt der Split Node macht Nachrichten, wobei eine Nachricht** dann in der msg.payload: Nr. 1,1 stehen hat.
                              Es ist also kein Objekt oder Array - sondern eine Nachricht mit einem schnöden String. 😉
                              Die Doppelpunkte dienen der Split Node als Marker zur Auftrennung der Nachricht und sind anschließend nicht mehr Bestandteil der Nachricht.

                              Hier ein Video dazu. 😉

                              S Offline
                              S Offline
                              stefan22
                              wrote on last edited by
                              #74

                              @mickym Ahh ok sprich es werden nur einzelne Objekte erzeugt die mit der msg.payload weitergeben werden

                              mickymM 1 Reply Last reply
                              0
                              • S stefan22

                                @stefan22 Dann kommt die msg.payload zur ersten Switch-Node.
                                Die bewirkt das du alle Objekt mit Nr. (kriege ich noch hin) das W ist die Leerstelle
                                das d die erste Zahl dann , dann die zweite Zahl da keine Leerstelle nach dem Komma wird diese in Klammern gesetzt ???????

                                Woher weiß man das ????? Lach

                                mickymM Online
                                mickymM Online
                                mickym
                                Most Active
                                wrote on last edited by mickym
                                #75

                                @stefan22 Das nutzen von regulären Ausdrücken ist wirklich nicht leicht - und ich behelfe mir zur Analyse immer mit einer Webseite.
                                https://regexr.com/

                                mit dem switch-Node filtere ich also alle Nachrichten aus, die dem Schema genügen.

                                Mit einer Klammer kannst Du gruppieren und dann mit $1 auf den Inhalt der Gruppe zugreifen. - das habe ich dann vor allen Dingen in der Change Node gemacht. In der Switch Node hätte ich die Klammern gar nicht gebraucht zum Matchen - das war wohl Copy & Paste - Entschuldigung.

                                Ich habe das alles mal hier in einem ScreenShot festgehalten:

                                screen.png

                                Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                S 1 Reply Last reply
                                0
                                • S stefan22

                                  @mickym Ahh ok sprich es werden nur einzelne Objekte erzeugt die mit der msg.payload weitergeben werden

                                  mickymM Online
                                  mickymM Online
                                  mickym
                                  Most Active
                                  wrote on last edited by
                                  #76

                                  @stefan22 said in Node-Red Hilfe:

                                  @mickym Ahh ok sprich es werden nur einzelne Objekte erzeugt die mit der msg.payload weitergeben werden

                                  Du kannst es einzelne Nachrichtenobejkte nennen.

                                  Ein Nachrichtenobjekt kannst Du Dir ebenfalls mit der Debug Node anschauen - in dem Du Dir nicht die Payload - sondern das ganze Objekt ausgeben lässt. Dann siehst Du dass die payload nur ein Bestandteil ist.

                                  Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                  1 Reply Last reply
                                  0
                                  • mickymM mickym

                                    @stefan22 Das nutzen von regulären Ausdrücken ist wirklich nicht leicht - und ich behelfe mir zur Analyse immer mit einer Webseite.
                                    https://regexr.com/

                                    mit dem switch-Node filtere ich also alle Nachrichten aus, die dem Schema genügen.

                                    Mit einer Klammer kannst Du gruppieren und dann mit $1 auf den Inhalt der Gruppe zugreifen. - das habe ich dann vor allen Dingen in der Change Node gemacht. In der Switch Node hätte ich die Klammern gar nicht gebraucht zum Matchen - das war wohl Copy & Paste - Entschuldigung.

                                    Ich habe das alles mal hier in einem ScreenShot festgehalten:

                                    screen.png

                                    S Offline
                                    S Offline
                                    stefan22
                                    wrote on last edited by
                                    #77

                                    @mickym heisst du Gruppierst in der Switch nach dem Komma .
                                    In der änder gruppierst du mal vor dem Komma und hinter dem Komma und greifst mit der $1 jeweils auf die Gruppierungen zu um dann weiter unter die nach dem Komma entstehend 1 und 0 in Boolen umzuwandeln , sprich true und false
                                    Was hat das dann mit msg.topic auf sich. msg.payload ist die kommende von der Switch-Node.
                                    Kommt das durch boolean ???

                                    mickymM 3 Replies Last reply
                                    0
                                    • S stefan22

                                      @mickym heisst du Gruppierst in der Switch nach dem Komma .
                                      In der änder gruppierst du mal vor dem Komma und hinter dem Komma und greifst mit der $1 jeweils auf die Gruppierungen zu um dann weiter unter die nach dem Komma entstehend 1 und 0 in Boolen umzuwandeln , sprich true und false
                                      Was hat das dann mit msg.topic auf sich. msg.payload ist die kommende von der Switch-Node.
                                      Kommt das durch boolean ???

                                      mickymM Online
                                      mickymM Online
                                      mickym
                                      Most Active
                                      wrote on last edited by
                                      #78

                                      @stefan22 Nein habe ich gerade in der Erklärung korrigiert. Im Switch kannst die Klammern weglassen. Das war Copy & Paste. Sorry.

                                      Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                      1 Reply Last reply
                                      0
                                      • S stefan22

                                        @mickym heisst du Gruppierst in der Switch nach dem Komma .
                                        In der änder gruppierst du mal vor dem Komma und hinter dem Komma und greifst mit der $1 jeweils auf die Gruppierungen zu um dann weiter unter die nach dem Komma entstehend 1 und 0 in Boolen umzuwandeln , sprich true und false
                                        Was hat das dann mit msg.topic auf sich. msg.payload ist die kommende von der Switch-Node.
                                        Kommt das durch boolean ???

                                        mickymM Online
                                        mickymM Online
                                        mickym
                                        Most Active
                                        wrote on last edited by mickym
                                        #79

                                        @stefan22 said in Node-Red Hilfe:

                                        @mickym heisst du Gruppierst in der Switch nach dem Komma .
                                        In der änder gruppierst du mal vor dem Komma und hinter dem Komma und greifst mit der $1 jeweils auf die Gruppierungen zu um dann weiter unter die nach dem Komma entstehend 1 und 0 in Boolen umzuwandeln , sprich true und false
                                        Was hat das dann mit msg.topic auf sich. msg.payload ist die kommende von der Switch-Node.
                                        Kommt das durch boolean ???

                                        Nun mit dem Topic - beschreibst Du in der Regel, was den die Nachricht bedeuten soll.
                                        Danach selektiere ich ja die einzelnen Steckdosen im großen Switch Node.

                                        Das topic ist also Nr. 1, Nr. 2 usw. - siehst Du auch in rot und kleiner Schrift immer als Überschrift in Deinen Debug nodes.
                                        Ja deshalb nehme ich am Anfang das vorne in Klammern als Topic und dann hinten als payload. Diese payload enthält nun den String "0" oder "1" denn ich dann durch wahr oder falsch ersetze.

                                        Die eigentliche Info ist ja nur das 0 oder 1 - das ich übersetze - das Topic beschreibt aber welche Steckdose denn nun ein oder ausgeschaltet ist.

                                        Irgendwann wirst Du noch FAN von NodeRED und Du siehst was man alles ohne Funktions-Node und ProgrammCode machen kann. Und hinter jede Node kannst eine Debug Node setzen um zu sehen, was passiert. 😉

                                        Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                        S 1 Reply Last reply
                                        0
                                        • S stefan22

                                          @mickym heisst du Gruppierst in der Switch nach dem Komma .
                                          In der änder gruppierst du mal vor dem Komma und hinter dem Komma und greifst mit der $1 jeweils auf die Gruppierungen zu um dann weiter unter die nach dem Komma entstehend 1 und 0 in Boolen umzuwandeln , sprich true und false
                                          Was hat das dann mit msg.topic auf sich. msg.payload ist die kommende von der Switch-Node.
                                          Kommt das durch boolean ???

                                          mickymM Online
                                          mickymM Online
                                          mickym
                                          Most Active
                                          wrote on last edited by mickym
                                          #80

                                          @stefan22 Die Change Node ist tatsächlich bissi Kompliziert - aber das wird auch nacheinender abgearbeitet.

                                          Es sind ja 5 Regeln:

                                          1. Da es bislang keine msg.topic gibt - kopiere ich die msg.payload in msg.topic.
                                          2. Ich extrahiere ändere msg.topic das nur noch der vordere Teil (Klammer) drin steht - also msg.topic= "Nr. 2"
                                          3. Dann änder ich die msg.payload - dass diese nur noch "0" oder "1" enthält hintere Teil (Klammer) also msg.payload="1"
                                          4. Wenn msg.payload = "0" dann ändere msg.payload=true
                                          5. Wenn msg.payload = "1" dann ändere msg.payload= false

                                          Du kannst "0" auch in "aus" und "1" in "an" übersetzen - egal was Du halt brauchst.

                                          Wie gesagt mach Dir Debug Nodes hinter jede Node - oder verdrahte diese mehrfach und Du siehst wie man die Nachrichten so verändert wie man sie braucht. 😉

                                          Jeder Flow bzw. jedes Script, das ich hier poste implementiert jeder auf eigene Gefahr. Flows und Scripts können Fehler aufweisen und weder der Seitenbetreiber noch ich persönlich können hierfür haftbar gemacht werden. Das gleiche gilt für Empfehlungen aller Art.

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          658

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe