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. Wasserregulierung Aquarium

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    924

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    688

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    1.9k

Wasserregulierung Aquarium

Geplant Angeheftet Gesperrt Verschoben Node-Red
150 Beiträge 3 Kommentatoren 16.6k Aufrufe 3 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.
  • AphofisA Aphofis

    @mickym
    Ja! Hab jetzt nur Schwimmer, Magnetventil und zum Testen den inject node einer mit false einer mit true und klappt auch sind wie gesagt alles virtuelle Geräte
    Zum verarbeiten, habe ich Paar Datenpunkte erstellt insofern die benötigt werden.
    Screenshot 2024-08-16 014726.png
    alles auch auf null gesetzt außer Test durchfluss, das wäre dann ja der zu verrechnende Wert. Vom Durchflußmesser.

    mickymM Online
    mickymM Online
    mickym
    Most Active
    schrieb am zuletzt editiert von mickym
    #16

    @aphofis Gut den false Inject kannst Du dir ja sparen, weil die Berechnung ja NUR stattfinden, wenn das Magnetventil auf false triggert. Sprich du startest die Berechnung mit einem eigenen Flow und filterst die Nachrichten aus, dass nur noch true als payload durchkommt.

    Ja Du kannst das jetzt mit Testdatenpunkten machen - später langt es mit Inject-Nodes zu simmulieren. Aber so ist das doch OK.

    Also triggere mit dem Magnetventil die Berechnung, wenn die payload false ist und zeige den Flow. Wir entwickeln den Schritt für Schritt aber mit STANDARD Nodes.

    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.

    AphofisA 1 Antwort Letzte Antwort
    1
    • mickymM mickym

      @aphofis Gut den false Inject kannst Du dir ja sparen, weil die Berechnung ja NUR stattfinden, wenn das Magnetventil auf false triggert. Sprich du startest die Berechnung mit einem eigenen Flow und filterst die Nachrichten aus, dass nur noch true als payload durchkommt.

      Ja Du kannst das jetzt mit Testdatenpunkten machen - später langt es mit Inject-Nodes zu simmulieren. Aber so ist das doch OK.

      Also triggere mit dem Magnetventil die Berechnung, wenn die payload false ist und zeige den Flow. Wir entwickeln den Schritt für Schritt aber mit STANDARD Nodes.

      AphofisA Offline
      AphofisA Offline
      Aphofis
      schrieb am zuletzt editiert von Aphofis
      #17

      @mickym
      Jetzt wird erst auf false die Rechnung ausgegeben. und in den Datenpunkt Test Wasser Kallibriert eingetragen.
      Screenshot 2024-08-16 015654.png

      [
          {
              "id": "e96d40e5c03c8e73",
              "type": "tab",
              "label": "Flow 2",
              "disabled": false,
              "info": "",
              "env": []
          },
          {
              "id": "8eeeee9dee4f69dd",
              "type": "junction",
              "z": "e96d40e5c03c8e73",
              "x": 180,
              "y": 80,
              "wires": [
                  [
                      "ed6a34a53f4a5f8a"
                  ]
              ]
          },
          {
              "id": "4135d8f01c675d48",
              "type": "debug",
              "z": "e96d40e5c03c8e73",
              "name": "ml aktuell",
              "active": true,
              "tosidebar": true,
              "console": false,
              "tostatus": false,
              "complete": "payload",
              "targetType": "msg",
              "statusVal": "",
              "statusType": "auto",
              "x": 880,
              "y": 180,
              "wires": []
          },
          {
              "id": "d603f22a313281eb",
              "type": "calculator",
              "z": "e96d40e5c03c8e73",
              "name": "multi ml",
              "inputMsgField": "payload",
              "outputMsgField": "payload",
              "operation": "mult",
              "constant": "5.21",
              "round": true,
              "truncate": false,
              "decimals": "2",
              "decimals2": 0,
              "x": 660,
              "y": 180,
              "wires": [
                  [
                      "4135d8f01c675d48",
                      "be1fec4a5a0c39ea"
                  ]
              ],
              "outputLabels": [
                  "ml"
              ],
              "icon": "font-awesome/fa-subscript"
          },
          {
              "id": "17fc122a8cc82dc5",
              "type": "ioBroker in",
              "z": "e96d40e5c03c8e73",
              "name": "Schwimmer",
              "attrname": "payload",
              "topic": "0_userdata.0.Test_Wasser.Test_Schwimmer",
              "payloadType": "value",
              "onlyack": "",
              "func": "all",
              "gap": "",
              "fireOnStart": "false",
              "outFormat": "MQTT",
              "x": 70,
              "y": 120,
              "wires": [
                  [
                      "8eeeee9dee4f69dd"
                  ]
              ]
          },
          {
              "id": "9f9432b0c01ceb15",
              "type": "ioBroker get",
              "z": "e96d40e5c03c8e73",
              "name": "Wasserdurchfluß",
              "topic": "0_userdata.0.Test_Wasser.Test_Durchfluss",
              "attrname": "payload",
              "payloadType": "value",
              "errOnInvalidState": "nothing",
              "x": 490,
              "y": 180,
              "wires": [
                  [
                      "d603f22a313281eb"
                  ]
              ]
          },
          {
              "id": "df1de44c69ce020f",
              "type": "inject",
              "z": "e96d40e5c03c8e73",
              "name": "",
              "props": [
                  {
                      "p": "payload"
                  }
              ],
              "repeat": "",
              "crontab": "",
              "once": false,
              "onceDelay": 0.1,
              "topic": "",
              "payload": "true",
              "payloadType": "str",
              "x": 90,
              "y": 80,
              "wires": [
                  [
                      "8eeeee9dee4f69dd"
                  ]
              ]
          },
          {
              "id": "ed6a34a53f4a5f8a",
              "type": "ioBroker out",
              "z": "e96d40e5c03c8e73",
              "name": "Magnetventil",
              "topic": "0_userdata.0.Test_Wasser.Test_Magnetventil",
              "ack": "false",
              "autoCreate": "false",
              "stateName": "",
              "role": "",
              "payloadType": "",
              "readonly": "",
              "stateUnit": "",
              "stateMin": "",
              "stateMax": "",
              "x": 890,
              "y": 80,
              "wires": []
          },
          {
              "id": "be1fec4a5a0c39ea",
              "type": "ioBroker out",
              "z": "e96d40e5c03c8e73",
              "name": "Wasser errechnet ml",
              "topic": "0_userdata.0.Test_Wasser.Test_Wasser_kallibriert",
              "ack": "true",
              "autoCreate": "false",
              "stateName": "",
              "role": "",
              "payloadType": "",
              "readonly": "",
              "stateUnit": "",
              "stateMin": "",
              "stateMax": "",
              "x": 920,
              "y": 220,
              "wires": []
          },
          {
              "id": "2eb8ac5cc0f35dca",
              "type": "ioBroker in",
              "z": "e96d40e5c03c8e73",
              "name": "Magnetventil",
              "attrname": "payload",
              "topic": "0_userdata.0.Test_Wasser.Test_Magnetventil",
              "payloadType": "value",
              "onlyack": "",
              "func": "all",
              "gap": "",
              "fireOnStart": "false",
              "outFormat": "MQTT",
              "x": 70,
              "y": 180,
              "wires": [
                  [
                      "74d17f220e91338e"
                  ]
              ]
          },
          {
              "id": "fb8e38c311376891",
              "type": "inject",
              "z": "e96d40e5c03c8e73",
              "name": "",
              "props": [
                  {
                      "p": "payload"
                  }
              ],
              "repeat": "",
              "crontab": "",
              "once": false,
              "onceDelay": 0.1,
              "topic": "",
              "payload": "false",
              "payloadType": "str",
              "x": 90,
              "y": 40,
              "wires": [
                  [
                      "8eeeee9dee4f69dd"
                  ]
              ]
          },
          {
              "id": "74d17f220e91338e",
              "type": "switch",
              "z": "e96d40e5c03c8e73",
              "name": "",
              "property": "payload",
              "propertyType": "msg",
              "rules": [
                  {
                      "t": "eq",
                      "v": "false",
                      "vt": "str"
                  }
              ],
              "checkall": "true",
              "repair": false,
              "outputs": 1,
              "x": 270,
              "y": 180,
              "wires": [
                  [
                      "9f9432b0c01ceb15"
                  ]
              ]
          }
      ]
      
      mickymM 1 Antwort Letzte Antwort
      0
      • AphofisA Aphofis

        @mickym
        Jetzt wird erst auf false die Rechnung ausgegeben. und in den Datenpunkt Test Wasser Kallibriert eingetragen.
        Screenshot 2024-08-16 015654.png

        [
            {
                "id": "e96d40e5c03c8e73",
                "type": "tab",
                "label": "Flow 2",
                "disabled": false,
                "info": "",
                "env": []
            },
            {
                "id": "8eeeee9dee4f69dd",
                "type": "junction",
                "z": "e96d40e5c03c8e73",
                "x": 180,
                "y": 80,
                "wires": [
                    [
                        "ed6a34a53f4a5f8a"
                    ]
                ]
            },
            {
                "id": "4135d8f01c675d48",
                "type": "debug",
                "z": "e96d40e5c03c8e73",
                "name": "ml aktuell",
                "active": true,
                "tosidebar": true,
                "console": false,
                "tostatus": false,
                "complete": "payload",
                "targetType": "msg",
                "statusVal": "",
                "statusType": "auto",
                "x": 880,
                "y": 180,
                "wires": []
            },
            {
                "id": "d603f22a313281eb",
                "type": "calculator",
                "z": "e96d40e5c03c8e73",
                "name": "multi ml",
                "inputMsgField": "payload",
                "outputMsgField": "payload",
                "operation": "mult",
                "constant": "5.21",
                "round": true,
                "truncate": false,
                "decimals": "2",
                "decimals2": 0,
                "x": 660,
                "y": 180,
                "wires": [
                    [
                        "4135d8f01c675d48",
                        "be1fec4a5a0c39ea"
                    ]
                ],
                "outputLabels": [
                    "ml"
                ],
                "icon": "font-awesome/fa-subscript"
            },
            {
                "id": "17fc122a8cc82dc5",
                "type": "ioBroker in",
                "z": "e96d40e5c03c8e73",
                "name": "Schwimmer",
                "attrname": "payload",
                "topic": "0_userdata.0.Test_Wasser.Test_Schwimmer",
                "payloadType": "value",
                "onlyack": "",
                "func": "all",
                "gap": "",
                "fireOnStart": "false",
                "outFormat": "MQTT",
                "x": 70,
                "y": 120,
                "wires": [
                    [
                        "8eeeee9dee4f69dd"
                    ]
                ]
            },
            {
                "id": "9f9432b0c01ceb15",
                "type": "ioBroker get",
                "z": "e96d40e5c03c8e73",
                "name": "Wasserdurchfluß",
                "topic": "0_userdata.0.Test_Wasser.Test_Durchfluss",
                "attrname": "payload",
                "payloadType": "value",
                "errOnInvalidState": "nothing",
                "x": 490,
                "y": 180,
                "wires": [
                    [
                        "d603f22a313281eb"
                    ]
                ]
            },
            {
                "id": "df1de44c69ce020f",
                "type": "inject",
                "z": "e96d40e5c03c8e73",
                "name": "",
                "props": [
                    {
                        "p": "payload"
                    }
                ],
                "repeat": "",
                "crontab": "",
                "once": false,
                "onceDelay": 0.1,
                "topic": "",
                "payload": "true",
                "payloadType": "str",
                "x": 90,
                "y": 80,
                "wires": [
                    [
                        "8eeeee9dee4f69dd"
                    ]
                ]
            },
            {
                "id": "ed6a34a53f4a5f8a",
                "type": "ioBroker out",
                "z": "e96d40e5c03c8e73",
                "name": "Magnetventil",
                "topic": "0_userdata.0.Test_Wasser.Test_Magnetventil",
                "ack": "false",
                "autoCreate": "false",
                "stateName": "",
                "role": "",
                "payloadType": "",
                "readonly": "",
                "stateUnit": "",
                "stateMin": "",
                "stateMax": "",
                "x": 890,
                "y": 80,
                "wires": []
            },
            {
                "id": "be1fec4a5a0c39ea",
                "type": "ioBroker out",
                "z": "e96d40e5c03c8e73",
                "name": "Wasser errechnet ml",
                "topic": "0_userdata.0.Test_Wasser.Test_Wasser_kallibriert",
                "ack": "true",
                "autoCreate": "false",
                "stateName": "",
                "role": "",
                "payloadType": "",
                "readonly": "",
                "stateUnit": "",
                "stateMin": "",
                "stateMax": "",
                "x": 920,
                "y": 220,
                "wires": []
            },
            {
                "id": "2eb8ac5cc0f35dca",
                "type": "ioBroker in",
                "z": "e96d40e5c03c8e73",
                "name": "Magnetventil",
                "attrname": "payload",
                "topic": "0_userdata.0.Test_Wasser.Test_Magnetventil",
                "payloadType": "value",
                "onlyack": "",
                "func": "all",
                "gap": "",
                "fireOnStart": "false",
                "outFormat": "MQTT",
                "x": 70,
                "y": 180,
                "wires": [
                    [
                        "74d17f220e91338e"
                    ]
                ]
            },
            {
                "id": "fb8e38c311376891",
                "type": "inject",
                "z": "e96d40e5c03c8e73",
                "name": "",
                "props": [
                    {
                        "p": "payload"
                    }
                ],
                "repeat": "",
                "crontab": "",
                "once": false,
                "onceDelay": 0.1,
                "topic": "",
                "payload": "false",
                "payloadType": "str",
                "x": 90,
                "y": 40,
                "wires": [
                    [
                        "8eeeee9dee4f69dd"
                    ]
                ]
            },
            {
                "id": "74d17f220e91338e",
                "type": "switch",
                "z": "e96d40e5c03c8e73",
                "name": "",
                "property": "payload",
                "propertyType": "msg",
                "rules": [
                    {
                        "t": "eq",
                        "v": "false",
                        "vt": "str"
                    }
                ],
                "checkall": "true",
                "repair": false,
                "outputs": 1,
                "x": 270,
                "y": 180,
                "wires": [
                    [
                        "9f9432b0c01ceb15"
                    ]
                ]
            }
        ]
        
        mickymM Online
        mickymM Online
        mickym
        Most Active
        schrieb am zuletzt editiert von
        #18

        @aphofis Ja Du machst zwar immer mehr, als wir zusammen entwickeln aber immerhin bist Du jetzt auf dem richtigen Weg, aber schmei0 diese Kalkulator Node weg - sondern lerne mit den Standardnodes umzugehen. Es gibt NOdes die man sich zusätzlich installieren kann, aber das braucht man nicht.

        Für Berechnungen nutzt man JSONATA. Also schmeiß das weg und nutze die Node, die man nutzt um ein payload zu Ändern.

        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.

        AphofisA 1 Antwort Letzte Antwort
        0
        • mickymM mickym

          @aphofis Ja Du machst zwar immer mehr, als wir zusammen entwickeln aber immerhin bist Du jetzt auf dem richtigen Weg, aber schmei0 diese Kalkulator Node weg - sondern lerne mit den Standardnodes umzugehen. Es gibt NOdes die man sich zusätzlich installieren kann, aber das braucht man nicht.

          Für Berechnungen nutzt man JSONATA. Also schmeiß das weg und nutze die Node, die man nutzt um ein payload zu Ändern.

          AphofisA Offline
          AphofisA Offline
          Aphofis
          schrieb am zuletzt editiert von Aphofis
          #19

          @mickym sagte in Wasserregulierung Aquarium:

          JSONATA

          Welche ist denn JSONATA
          oder meinst du json

          mickymM 1 Antwort Letzte Antwort
          0
          • AphofisA Aphofis

            @mickym sagte in Wasserregulierung Aquarium:

            JSONATA

            Welche ist denn JSONATA
            oder meinst du json

            mickymM Online
            mickymM Online
            mickym
            Most Active
            schrieb am zuletzt editiert von
            #20

            @aphofis

            dfd16435-5328-45a6-9652-90007da428da-image.png

            Sowas braucht kein Mensch und ICH werde diese NODES nicht installieren

            Um eine payload zu ÄNDERN gibt es eine Standardnode. Wie heißt die wohl ÄNDERN = ...... - NOde

            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.

            AphofisA 1 Antwort Letzte Antwort
            1
            • mickymM mickym

              @aphofis

              dfd16435-5328-45a6-9652-90007da428da-image.png

              Sowas braucht kein Mensch und ICH werde diese NODES nicht installieren

              Um eine payload zu ÄNDERN gibt es eine Standardnode. Wie heißt die wohl ÄNDERN = ...... - NOde

              AphofisA Offline
              AphofisA Offline
              Aphofis
              schrieb am zuletzt editiert von Aphofis
              #21

              @mickym
              ok also change node
              hab die calculator Node rausgeschmissen.

              mickymM 1 Antwort Letzte Antwort
              0
              • AphofisA Aphofis

                @mickym
                ok also change node
                hab die calculator Node rausgeschmissen.

                mickymM Online
                mickymM Online
                mickym
                Most Active
                schrieb am zuletzt editiert von mickym
                #22

                @aphofis Sehr gut :)

                So also mit der Change Node kannst Du eine payload innerhalb des Nachrichtenobjektes verschieben, sie neu schreiben, ändern oder löschen.

                Sind dir diese 4 Fälle geläufig?

                3c344a3f-26b8-4674-82be-419827ded7f2-image.png

                Importiere Dir mal diesen Flow - und schau Dir an, was wir mit dem Nachrichtenobjekt machen können:

                [
                   {
                       "id": "cd051990e045ac73",
                       "type": "inject",
                       "z": "95d5d241e51360cd",
                       "name": "",
                       "props": [
                           {
                               "p": "payload"
                           }
                       ],
                       "repeat": "",
                       "crontab": "",
                       "once": false,
                       "onceDelay": 0.1,
                       "topic": "",
                       "payload": "20",
                       "payloadType": "num",
                       "x": 370,
                       "y": 460,
                       "wires": [
                           [
                               "070a2b4cb0049c8b",
                               "79acf22a95932020"
                           ]
                       ]
                   },
                   {
                       "id": "070a2b4cb0049c8b",
                       "type": "debug",
                       "z": "95d5d241e51360cd",
                       "name": "Komplettes Nachrichtenobjekt",
                       "active": true,
                       "tosidebar": true,
                       "console": false,
                       "tostatus": false,
                       "complete": "true",
                       "targetType": "full",
                       "statusVal": "",
                       "statusType": "auto",
                       "x": 630,
                       "y": 420,
                       "wires": []
                   },
                   {
                       "id": "79acf22a95932020",
                       "type": "change",
                       "z": "95d5d241e51360cd",
                       "name": "",
                       "rules": [
                           {
                               "t": "set",
                               "p": "payload",
                               "pt": "msg",
                               "to": "",
                               "tot": "str"
                           }
                       ],
                       "action": "",
                       "property": "",
                       "from": "",
                       "to": "",
                       "reg": false,
                       "x": 570,
                       "y": 480,
                       "wires": [
                           [
                               "3429626fc84b980b"
                           ]
                       ]
                   },
                   {
                       "id": "3429626fc84b980b",
                       "type": "debug",
                       "z": "95d5d241e51360cd",
                       "name": "Verändertes Nachrichtenobjekt",
                       "active": true,
                       "tosidebar": true,
                       "console": false,
                       "tostatus": false,
                       "complete": "true",
                       "targetType": "full",
                       "statusVal": "",
                       "statusType": "auto",
                       "x": 830,
                       "y": 480,
                       "wires": []
                   }
                ]
                


                be95be01-606f-4e6f-a229-fb34ceb8e904-image.png

                Damit siehst Du auch wie ein minimales Nachrichtenobjekt in der Regel aussieht. Schau Dir auch an, was der UNTERSCHIED ist, wenn Du Dir das komplette Nachrichtenobjekt ausgibst oder nur die payload Eigenschaft des Nachrichtenobjektes.

                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.

                AphofisA 2 Antworten Letzte Antwort
                1
                • mickymM mickym

                  @aphofis Sehr gut :)

                  So also mit der Change Node kannst Du eine payload innerhalb des Nachrichtenobjektes verschieben, sie neu schreiben, ändern oder löschen.

                  Sind dir diese 4 Fälle geläufig?

                  3c344a3f-26b8-4674-82be-419827ded7f2-image.png

                  Importiere Dir mal diesen Flow - und schau Dir an, was wir mit dem Nachrichtenobjekt machen können:

                  [
                     {
                         "id": "cd051990e045ac73",
                         "type": "inject",
                         "z": "95d5d241e51360cd",
                         "name": "",
                         "props": [
                             {
                                 "p": "payload"
                             }
                         ],
                         "repeat": "",
                         "crontab": "",
                         "once": false,
                         "onceDelay": 0.1,
                         "topic": "",
                         "payload": "20",
                         "payloadType": "num",
                         "x": 370,
                         "y": 460,
                         "wires": [
                             [
                                 "070a2b4cb0049c8b",
                                 "79acf22a95932020"
                             ]
                         ]
                     },
                     {
                         "id": "070a2b4cb0049c8b",
                         "type": "debug",
                         "z": "95d5d241e51360cd",
                         "name": "Komplettes Nachrichtenobjekt",
                         "active": true,
                         "tosidebar": true,
                         "console": false,
                         "tostatus": false,
                         "complete": "true",
                         "targetType": "full",
                         "statusVal": "",
                         "statusType": "auto",
                         "x": 630,
                         "y": 420,
                         "wires": []
                     },
                     {
                         "id": "79acf22a95932020",
                         "type": "change",
                         "z": "95d5d241e51360cd",
                         "name": "",
                         "rules": [
                             {
                                 "t": "set",
                                 "p": "payload",
                                 "pt": "msg",
                                 "to": "",
                                 "tot": "str"
                             }
                         ],
                         "action": "",
                         "property": "",
                         "from": "",
                         "to": "",
                         "reg": false,
                         "x": 570,
                         "y": 480,
                         "wires": [
                             [
                                 "3429626fc84b980b"
                             ]
                         ]
                     },
                     {
                         "id": "3429626fc84b980b",
                         "type": "debug",
                         "z": "95d5d241e51360cd",
                         "name": "Verändertes Nachrichtenobjekt",
                         "active": true,
                         "tosidebar": true,
                         "console": false,
                         "tostatus": false,
                         "complete": "true",
                         "targetType": "full",
                         "statusVal": "",
                         "statusType": "auto",
                         "x": 830,
                         "y": 480,
                         "wires": []
                     }
                  ]
                  


                  be95be01-606f-4e6f-a229-fb34ceb8e904-image.png

                  Damit siehst Du auch wie ein minimales Nachrichtenobjekt in der Regel aussieht. Schau Dir auch an, was der UNTERSCHIED ist, wenn Du Dir das komplette Nachrichtenobjekt ausgibst oder nur die payload Eigenschaft des Nachrichtenobjektes.

                  AphofisA Offline
                  AphofisA Offline
                  Aphofis
                  schrieb am zuletzt editiert von
                  #23

                  @mickym bekannt ja aber was genau verschieben und setzen heißt nicht so genau

                  mickymM 1 Antwort Letzte Antwort
                  0
                  • mickymM mickym

                    @aphofis Sehr gut :)

                    So also mit der Change Node kannst Du eine payload innerhalb des Nachrichtenobjektes verschieben, sie neu schreiben, ändern oder löschen.

                    Sind dir diese 4 Fälle geläufig?

                    3c344a3f-26b8-4674-82be-419827ded7f2-image.png

                    Importiere Dir mal diesen Flow - und schau Dir an, was wir mit dem Nachrichtenobjekt machen können:

                    [
                       {
                           "id": "cd051990e045ac73",
                           "type": "inject",
                           "z": "95d5d241e51360cd",
                           "name": "",
                           "props": [
                               {
                                   "p": "payload"
                               }
                           ],
                           "repeat": "",
                           "crontab": "",
                           "once": false,
                           "onceDelay": 0.1,
                           "topic": "",
                           "payload": "20",
                           "payloadType": "num",
                           "x": 370,
                           "y": 460,
                           "wires": [
                               [
                                   "070a2b4cb0049c8b",
                                   "79acf22a95932020"
                               ]
                           ]
                       },
                       {
                           "id": "070a2b4cb0049c8b",
                           "type": "debug",
                           "z": "95d5d241e51360cd",
                           "name": "Komplettes Nachrichtenobjekt",
                           "active": true,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "true",
                           "targetType": "full",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 630,
                           "y": 420,
                           "wires": []
                       },
                       {
                           "id": "79acf22a95932020",
                           "type": "change",
                           "z": "95d5d241e51360cd",
                           "name": "",
                           "rules": [
                               {
                                   "t": "set",
                                   "p": "payload",
                                   "pt": "msg",
                                   "to": "",
                                   "tot": "str"
                               }
                           ],
                           "action": "",
                           "property": "",
                           "from": "",
                           "to": "",
                           "reg": false,
                           "x": 570,
                           "y": 480,
                           "wires": [
                               [
                                   "3429626fc84b980b"
                               ]
                           ]
                       },
                       {
                           "id": "3429626fc84b980b",
                           "type": "debug",
                           "z": "95d5d241e51360cd",
                           "name": "Verändertes Nachrichtenobjekt",
                           "active": true,
                           "tosidebar": true,
                           "console": false,
                           "tostatus": false,
                           "complete": "true",
                           "targetType": "full",
                           "statusVal": "",
                           "statusType": "auto",
                           "x": 830,
                           "y": 480,
                           "wires": []
                       }
                    ]
                    


                    be95be01-606f-4e6f-a229-fb34ceb8e904-image.png

                    Damit siehst Du auch wie ein minimales Nachrichtenobjekt in der Regel aussieht. Schau Dir auch an, was der UNTERSCHIED ist, wenn Du Dir das komplette Nachrichtenobjekt ausgibst oder nur die payload Eigenschaft des Nachrichtenobjektes.

                    AphofisA Offline
                    AphofisA Offline
                    Aphofis
                    schrieb am zuletzt editiert von Aphofis
                    #24

                    Ja hab ich gesehen.

                    1. Debug hat den Wert 20
                    2. Debug hat den Wert 0
                    mickymM 2 Antworten Letzte Antwort
                    0
                    • AphofisA Aphofis

                      @mickym bekannt ja aber was genau verschieben und setzen heißt nicht so genau

                      mickymM Online
                      mickymM Online
                      mickym
                      Most Active
                      schrieb am zuletzt editiert von
                      #25

                      @aphofis sagte in Wasserregulierung Aquarium:

                      @mickym bekannt ja aber was genau verschieben und setzen heißt nicht so genau

                      Na deswegen machen wir erst mal diese Grundlagen.

                      Also importiere den unteren Flow - und Du musst wissen, welche Datentypen es gibt.

                      Also: Zeichenkette, Boolean, Zahl, Objekt, Array.

                      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.

                      AphofisA 1 Antwort Letzte Antwort
                      1
                      • AphofisA Aphofis

                        Ja hab ich gesehen.

                        1. Debug hat den Wert 20
                        2. Debug hat den Wert 0
                        mickymM Online
                        mickymM Online
                        mickym
                        Most Active
                        schrieb am zuletzt editiert von
                        #26

                        @aphofis Na siehst Du dass wir das GESAMTE Nachrichtenobjekt ausgegeben haben?

                        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 Antwort Letzte Antwort
                        0
                        • AphofisA Aphofis

                          Ja hab ich gesehen.

                          1. Debug hat den Wert 20
                          2. Debug hat den Wert 0
                          mickymM Online
                          mickymM Online
                          mickym
                          Most Active
                          schrieb am zuletzt editiert von
                          #27

                          @aphofis sagte in Wasserregulierung Aquarium:

                          Ja hab ich gesehen.

                          1. Debug hat den Wert 20
                          2. Debug hat den Wert 0

                          Nein - die 2. Debug Node enthält nicht den Wert 0 sondern eine leere Zeichenkette.

                          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.

                          mickymM AphofisA 2 Antworten Letzte Antwort
                          1
                          • mickymM mickym

                            @aphofis sagte in Wasserregulierung Aquarium:

                            @mickym bekannt ja aber was genau verschieben und setzen heißt nicht so genau

                            Na deswegen machen wir erst mal diese Grundlagen.

                            Also importiere den unteren Flow - und Du musst wissen, welche Datentypen es gibt.

                            Also: Zeichenkette, Boolean, Zahl, Objekt, Array.

                            AphofisA Offline
                            AphofisA Offline
                            Aphofis
                            schrieb am zuletzt editiert von
                            #28

                            @mickym
                            Ja die Datentypen sind mir bekannt. Wir wollen ja nur mit value (Zahlen) arbeiten.

                            mickymM 1 Antwort Letzte Antwort
                            0
                            • mickymM mickym

                              @aphofis sagte in Wasserregulierung Aquarium:

                              Ja hab ich gesehen.

                              1. Debug hat den Wert 20
                              2. Debug hat den Wert 0

                              Nein - die 2. Debug Node enthält nicht den Wert 0 sondern eine leere Zeichenkette.

                              mickymM Online
                              mickymM Online
                              mickym
                              Most Active
                              schrieb am zuletzt editiert von
                              #29

                              @mickym sagte in Wasserregulierung Aquarium:

                              @aphofis sagte in Wasserregulierung Aquarium:

                              Ja hab ich gesehen.

                              1. Debug hat den Wert 20
                              2. Debug hat den Wert 0

                              Nein - die 2. Debug Node enthält nicht den Wert 0 sondern eine leere Zeichenkette.

                              d427c273-530e-4ba1-8e8d-ea0b9093192d-image.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.

                              1 Antwort Letzte Antwort
                              1
                              • mickymM mickym

                                @aphofis sagte in Wasserregulierung Aquarium:

                                Ja hab ich gesehen.

                                1. Debug hat den Wert 20
                                2. Debug hat den Wert 0

                                Nein - die 2. Debug Node enthält nicht den Wert 0 sondern eine leere Zeichenkette.

                                AphofisA Offline
                                AphofisA Offline
                                Aphofis
                                schrieb am zuletzt editiert von
                                #30

                                @mickym

                                @mickym sagte in Wasserregulierung Aquarium:

                                @aphofis sagte in Wasserregulierung Aquarium:

                                Ja hab ich gesehen.

                                1. Debug hat den Wert 20
                                2. Debug hat den Wert 0

                                Nein - die 2. Debug Node enthält nicht den Wert 0 sondern eine leere Zeichenkette.

                                @mickym sagte in Wasserregulierung Aquarium:

                                @aphofis sagte in Wasserregulierung Aquarium:

                                Ja hab ich gesehen.

                                1. Debug hat den Wert 20
                                2. Debug hat den Wert 0

                                Nein - die 2. Debug Node enthält nicht den Wert 0 sondern eine leere Zeichenkette.

                                Jupp oder halt eine leere Zeichenkette durch die Change Node

                                mickymM 1 Antwort Letzte Antwort
                                0
                                • AphofisA Aphofis

                                  @mickym
                                  Ja die Datentypen sind mir bekannt. Wir wollen ja nur mit value (Zahlen) arbeiten.

                                  mickymM Online
                                  mickymM Online
                                  mickym
                                  Most Active
                                  schrieb am zuletzt editiert von
                                  #31

                                  @aphofis sagte in Wasserregulierung Aquarium:

                                  @mickym
                                  Ja die Datentypen sind mir bekannt. Wir wollen ja nur mit value (Zahlen) arbeiten.

                                  Ja aber willst Du ein paar Grundlagen lernen?

                                  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.

                                  AphofisA 1 Antwort Letzte Antwort
                                  0
                                  • mickymM mickym

                                    @aphofis sagte in Wasserregulierung Aquarium:

                                    @mickym
                                    Ja die Datentypen sind mir bekannt. Wir wollen ja nur mit value (Zahlen) arbeiten.

                                    Ja aber willst Du ein paar Grundlagen lernen?

                                    AphofisA Offline
                                    AphofisA Offline
                                    Aphofis
                                    schrieb am zuletzt editiert von
                                    #32

                                    @mickym auf jeden Fall ich bin dabei und versuche dem zu folgen was du schreibst

                                    1 Antwort Letzte Antwort
                                    0
                                    • AphofisA Aphofis

                                      @mickym

                                      @mickym sagte in Wasserregulierung Aquarium:

                                      @aphofis sagte in Wasserregulierung Aquarium:

                                      Ja hab ich gesehen.

                                      1. Debug hat den Wert 20
                                      2. Debug hat den Wert 0

                                      Nein - die 2. Debug Node enthält nicht den Wert 0 sondern eine leere Zeichenkette.

                                      @mickym sagte in Wasserregulierung Aquarium:

                                      @aphofis sagte in Wasserregulierung Aquarium:

                                      Ja hab ich gesehen.

                                      1. Debug hat den Wert 20
                                      2. Debug hat den Wert 0

                                      Nein - die 2. Debug Node enthält nicht den Wert 0 sondern eine leere Zeichenkette.

                                      Jupp oder halt eine leere Zeichenkette durch die Change Node

                                      mickymM Online
                                      mickymM Online
                                      mickym
                                      Most Active
                                      schrieb am zuletzt editiert von mickym
                                      #33

                                      @aphofis Wie ist ein Objekt definiert, wie ist ein Array definiert?

                                      und siehst du den Unterschied, ob man sich ein Nachrichtenobjekt ausgibt oder nur die Eigenschaft eines Objektes?

                                      Ändere mal in der 1. Debug Node - die Ausgabe nur auf die payload und kannst Du mir den Unterschied erklären?
                                      1789217f-eb87-4f1a-93e3-bf08a167b873-image.png
                                      cf124f17-f7ed-47f1-a5a2-998dba01fe80-image.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.

                                      1 Antwort Letzte Antwort
                                      1
                                      • AphofisA Offline
                                        AphofisA Offline
                                        Aphofis
                                        schrieb am zuletzt editiert von Aphofis
                                        #34

                                        @mickym Dann wird aus msg:Object msg:payload Number also kann man damit schon festlegen ob man ein Objekt oder ob ein Value erwartet wird bzw ausgegeben wird.
                                        hatte vergessen das man im Debug den Pfeil anklicken kann wo man dann sieht das eine object ID und das payload ausgegeben wird dh die Change Node filtert das man dann nur den payload wert hat.

                                        mickymM 1 Antwort Letzte Antwort
                                        0
                                        • AphofisA Aphofis

                                          @mickym Dann wird aus msg:Object msg:payload Number also kann man damit schon festlegen ob man ein Objekt oder ob ein Value erwartet wird bzw ausgegeben wird.
                                          hatte vergessen das man im Debug den Pfeil anklicken kann wo man dann sieht das eine object ID und das payload ausgegeben wird dh die Change Node filtert das man dann nur den payload wert hat.

                                          mickymM Online
                                          mickymM Online
                                          mickym
                                          Most Active
                                          schrieb am zuletzt editiert von mickym
                                          #35

                                          @aphofis sagte in Wasserregulierung Aquarium:

                                          @mickym Dann wird aus msg:Object msg:payload Number also kann man damit schon festlegen ob man ein Objekt oder ob ein Value erwartet wird bzw ausgegeben wird

                                          Nein, eine Debug Node legt gar nichts fest, sondern sie gibt entweder das gesamte Nachrichtenobjekt oder eine Eigenschaft des Datenpunktes aus.

                                          Mach mal wie bei mir eine 2 Debug Node an die Inject Node und gib nur den Inhalt der Inject Node aus.

                                          Dann steht noch aus, wie ein Array und ein Objekt definiert ist.

                                          Wir werden das soweit klären - hier nochmal, das gesamte Nachrichtenobjekt und nur die payload.

                                          [
                                             {
                                                 "id": "cd051990e045ac73",
                                                 "type": "inject",
                                                 "z": "95d5d241e51360cd",
                                                 "name": "",
                                                 "props": [
                                                     {
                                                         "p": "payload"
                                                     }
                                                 ],
                                                 "repeat": "",
                                                 "crontab": "",
                                                 "once": false,
                                                 "onceDelay": 0.1,
                                                 "topic": "",
                                                 "payload": "20",
                                                 "payloadType": "num",
                                                 "x": 370,
                                                 "y": 400,
                                                 "wires": [
                                                     [
                                                         "070a2b4cb0049c8b",
                                                         "0e3767a4155ad26b"
                                                     ]
                                                 ]
                                             },
                                             {
                                                 "id": "070a2b4cb0049c8b",
                                                 "type": "debug",
                                                 "z": "95d5d241e51360cd",
                                                 "name": "Komplettes Nachrichtenobjekt",
                                                 "active": true,
                                                 "tosidebar": true,
                                                 "console": false,
                                                 "tostatus": false,
                                                 "complete": "true",
                                                 "targetType": "full",
                                                 "statusVal": "",
                                                 "statusType": "auto",
                                                 "x": 630,
                                                 "y": 420,
                                                 "wires": []
                                             },
                                             {
                                                 "id": "0e3767a4155ad26b",
                                                 "type": "debug",
                                                 "z": "95d5d241e51360cd",
                                                 "name": "payload",
                                                 "active": true,
                                                 "tosidebar": true,
                                                 "console": false,
                                                 "tostatus": false,
                                                 "complete": "payload",
                                                 "targetType": "msg",
                                                 "statusVal": "",
                                                 "statusType": "auto",
                                                 "x": 560,
                                                 "y": 380,
                                                 "wires": []
                                             }
                                          ]
                                          

                                          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.

                                          AphofisA 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

                                          991

                                          Online

                                          32.6k

                                          Benutzer

                                          82.0k

                                          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