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

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Node-Red
  5. Node red Wert regelmäßig senden

NEWS

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

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

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

Node red Wert regelmäßig senden

Geplant Angeheftet Gesperrt Verschoben Node-Red
19 Beiträge 4 Kommentatoren 1.3k Aufrufe 4 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.
  • B Offline
    B Offline
    Black-jocker
    schrieb am zuletzt editiert von Black-jocker
    #1

    Moin

    Ich bin ziemlicher Note red Anfänger und verwende Note Red auf einem Victron Cerbo.
    Ich möchte bei einem Batteriestand größer x ein Relais schalten.
    Die komplette Funktion wird über einen Schalter aktiviert.
    Der Wert kann über ein Numeric Node geändeet werden.
    Das Ganze funktioniert soweit, nur wir der eingestellte Numeric-Wert nicht regelmäßig, daher ist kein Wert vorhanden wenn der Schalter betätigt wird.
    Der blau markierte Wert soll zyklisch gesendet werden. Wie kann ich das bspw. durch einfügen eines triggerr oder timestamp
    anstoßen?

    Flow.png numeric.png fuction13.png

    Idee ist ein Timestamp wie hier rot markiert einzufügen.
    Aber wie muss dieser Timestamp konfiguriert werden damit der "wert" in Funktion 13 regelmäßig gesendet wird?

    timestamp.JPG

    mickymM 1 Antwort Letzte Antwort
    0
    • B Black-jocker

      Moin

      Ich bin ziemlicher Note red Anfänger und verwende Note Red auf einem Victron Cerbo.
      Ich möchte bei einem Batteriestand größer x ein Relais schalten.
      Die komplette Funktion wird über einen Schalter aktiviert.
      Der Wert kann über ein Numeric Node geändeet werden.
      Das Ganze funktioniert soweit, nur wir der eingestellte Numeric-Wert nicht regelmäßig, daher ist kein Wert vorhanden wenn der Schalter betätigt wird.
      Der blau markierte Wert soll zyklisch gesendet werden. Wie kann ich das bspw. durch einfügen eines triggerr oder timestamp
      anstoßen?

      Flow.png numeric.png fuction13.png

      Idee ist ein Timestamp wie hier rot markiert einzufügen.
      Aber wie muss dieser Timestamp konfiguriert werden damit der "wert" in Funktion 13 regelmäßig gesendet wird?

      timestamp.JPG

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

      @black-jocker sagte in Node red Wert regelmäßig senden:

      Aber wie muss dieser Timestamp konfiguriert werden damit der "wert" in Funktion 13 regelmäßig gesendet wird?

      Gar nicht - weil das Nachrichtenobjekt aus der Inject Node gar nichts von irgendeiner anderen Node kennt.

      Wenn Du aus Deinem Dashboard einen Wert regelmäßig senden willst, dann spar Dir Deine function Nodes und hänge einfach Deine GUI Node vor eine trigger Node und lass Dir dann die payload regelmäßig senden.

      a026e9d0-8e34-4841-b359-1115ebca37c3-image.png

      [
         {
             "id": "cacc9b0c3a4d7c63",
             "type": "inject",
             "z": "7e6af0015415146d",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "",
             "payload": "20",
             "payloadType": "num",
             "x": 390,
             "y": 7340,
             "wires": [
                 [
                     "274200195f7f69ca"
                 ]
             ]
         },
         {
             "id": "274200195f7f69ca",
             "type": "trigger",
             "z": "7e6af0015415146d",
             "name": "",
             "op1": "",
             "op2": "0",
             "op1type": "pay",
             "op2type": "str",
             "duration": "-20",
             "extend": false,
             "overrideDelay": false,
             "units": "s",
             "reset": "",
             "bytopic": "all",
             "topic": "topic",
             "outputs": 1,
             "x": 620,
             "y": 7400,
             "wires": [
                 [
                     "1b1e3db9b32e665d"
                 ]
             ]
         },
         {
             "id": "43081ef774c280a0",
             "type": "inject",
             "z": "7e6af0015415146d",
             "name": "",
             "props": [
                 {
                     "p": "payload"
                 },
                 {
                     "p": "topic",
                     "vt": "str"
                 }
             ],
             "repeat": "",
             "crontab": "",
             "once": false,
             "onceDelay": 0.1,
             "topic": "",
             "payload": "30",
             "payloadType": "num",
             "x": 390,
             "y": 7380,
             "wires": [
                 [
                     "274200195f7f69ca"
                 ]
             ]
         },
         {
             "id": "1b1e3db9b32e665d",
             "type": "debug",
             "z": "7e6af0015415146d",
             "name": "Wert",
             "active": true,
             "tosidebar": true,
             "console": false,
             "tostatus": false,
             "complete": "payload",
             "targetType": "msg",
             "statusVal": "",
             "statusType": "auto",
             "x": 810,
             "y": 7400,
             "wires": []
         },
         {
             "id": "32eefb3dfb29a130",
             "type": "ui_numeric",
             "z": "7e6af0015415146d",
             "name": "",
             "label": "Batterieladung ....",
             "tooltip": "",
             "group": "57f13d6f733e5c9d",
             "order": 6,
             "width": 0,
             "height": 0,
             "wrap": false,
             "passthru": true,
             "topic": "topic",
             "topicType": "msg",
             "format": "{{value}}",
             "min": 0,
             "max": 10,
             "step": 1,
             "className": "",
             "x": 370,
             "y": 7440,
             "wires": [
                 [
                     "274200195f7f69ca"
                 ]
             ]
         },
         {
             "id": "57f13d6f733e5c9d",
             "type": "ui_group",
             "name": "Test",
             "tab": "20b3095113f94d70",
             "order": 1,
             "disp": true,
             "width": "6",
             "collapse": false,
             "className": ""
         },
         {
             "id": "20b3095113f94d70",
             "type": "ui_tab",
             "name": "Home",
             "icon": "dashboard",
             "order": 2,
             "disabled": false,
             "hidden": false
         }
      ]
      

      Wenn Du mit Inject und function Node arbeiten willst, dann musst Du halt wieder codieren und schauen, von welcher Node die Nachricht kommt und dann im Kontext speichern. Würde ich Dir aber nicht raten, da meine Lösung viel einfacher 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.

      B 1 Antwort Letzte Antwort
      0
      • mickymM mickym

        @black-jocker sagte in Node red Wert regelmäßig senden:

        Aber wie muss dieser Timestamp konfiguriert werden damit der "wert" in Funktion 13 regelmäßig gesendet wird?

        Gar nicht - weil das Nachrichtenobjekt aus der Inject Node gar nichts von irgendeiner anderen Node kennt.

        Wenn Du aus Deinem Dashboard einen Wert regelmäßig senden willst, dann spar Dir Deine function Nodes und hänge einfach Deine GUI Node vor eine trigger Node und lass Dir dann die payload regelmäßig senden.

        a026e9d0-8e34-4841-b359-1115ebca37c3-image.png

        [
           {
               "id": "cacc9b0c3a4d7c63",
               "type": "inject",
               "z": "7e6af0015415146d",
               "name": "",
               "props": [
                   {
                       "p": "payload"
                   },
                   {
                       "p": "topic",
                       "vt": "str"
                   }
               ],
               "repeat": "",
               "crontab": "",
               "once": false,
               "onceDelay": 0.1,
               "topic": "",
               "payload": "20",
               "payloadType": "num",
               "x": 390,
               "y": 7340,
               "wires": [
                   [
                       "274200195f7f69ca"
                   ]
               ]
           },
           {
               "id": "274200195f7f69ca",
               "type": "trigger",
               "z": "7e6af0015415146d",
               "name": "",
               "op1": "",
               "op2": "0",
               "op1type": "pay",
               "op2type": "str",
               "duration": "-20",
               "extend": false,
               "overrideDelay": false,
               "units": "s",
               "reset": "",
               "bytopic": "all",
               "topic": "topic",
               "outputs": 1,
               "x": 620,
               "y": 7400,
               "wires": [
                   [
                       "1b1e3db9b32e665d"
                   ]
               ]
           },
           {
               "id": "43081ef774c280a0",
               "type": "inject",
               "z": "7e6af0015415146d",
               "name": "",
               "props": [
                   {
                       "p": "payload"
                   },
                   {
                       "p": "topic",
                       "vt": "str"
                   }
               ],
               "repeat": "",
               "crontab": "",
               "once": false,
               "onceDelay": 0.1,
               "topic": "",
               "payload": "30",
               "payloadType": "num",
               "x": 390,
               "y": 7380,
               "wires": [
                   [
                       "274200195f7f69ca"
                   ]
               ]
           },
           {
               "id": "1b1e3db9b32e665d",
               "type": "debug",
               "z": "7e6af0015415146d",
               "name": "Wert",
               "active": true,
               "tosidebar": true,
               "console": false,
               "tostatus": false,
               "complete": "payload",
               "targetType": "msg",
               "statusVal": "",
               "statusType": "auto",
               "x": 810,
               "y": 7400,
               "wires": []
           },
           {
               "id": "32eefb3dfb29a130",
               "type": "ui_numeric",
               "z": "7e6af0015415146d",
               "name": "",
               "label": "Batterieladung ....",
               "tooltip": "",
               "group": "57f13d6f733e5c9d",
               "order": 6,
               "width": 0,
               "height": 0,
               "wrap": false,
               "passthru": true,
               "topic": "topic",
               "topicType": "msg",
               "format": "{{value}}",
               "min": 0,
               "max": 10,
               "step": 1,
               "className": "",
               "x": 370,
               "y": 7440,
               "wires": [
                   [
                       "274200195f7f69ca"
                   ]
               ]
           },
           {
               "id": "57f13d6f733e5c9d",
               "type": "ui_group",
               "name": "Test",
               "tab": "20b3095113f94d70",
               "order": 1,
               "disp": true,
               "width": "6",
               "collapse": false,
               "className": ""
           },
           {
               "id": "20b3095113f94d70",
               "type": "ui_tab",
               "name": "Home",
               "icon": "dashboard",
               "order": 2,
               "disabled": false,
               "hidden": false
           }
        ]
        

        Wenn Du mit Inject und function Node arbeiten willst, dann musst Du halt wieder codieren und schauen, von welcher Node die Nachricht kommt und dann im Kontext speichern. Würde ich Dir aber nicht raten, da meine Lösung viel einfacher ist.

        B Offline
        B Offline
        Black-jocker
        schrieb am zuletzt editiert von
        #3

        @mickym
        Danke. Probiere ich mal aus.
        Aber anstatt vielleicht den Wert regelmäßig zu senden, (was unnötigen Traffic erzeugt) könnte auch der Schalter als Trigger genutzt werden.
        Wäre das Logischste, da wenn der Schalter betätigt wird, genau dann der Wert vorhanden sein soll.

        mickymM 1 Antwort Letzte Antwort
        0
        • B Black-jocker

          @mickym
          Danke. Probiere ich mal aus.
          Aber anstatt vielleicht den Wert regelmäßig zu senden, (was unnötigen Traffic erzeugt) könnte auch der Schalter als Trigger genutzt werden.
          Wäre das Logischste, da wenn der Schalter betätigt wird, genau dann der Wert vorhanden sein soll.

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

          @black-jocker Natürlich kannst Du auch einen Schalter oder Button als Trigger nutzen. Wie immer die Logik musst Du Dir vorher überlegen, ob das sinnvoll ist - die Umsetzung in NodeRed sollte immer der Logik folgen, die man sich vorher überlegt und nicht die Nodes verwenden ohne sich über die Logik Gedanken machen.

          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.

          B 1 Antwort Letzte Antwort
          0
          • mickymM mickym

            @black-jocker Natürlich kannst Du auch einen Schalter oder Button als Trigger nutzen. Wie immer die Logik musst Du Dir vorher überlegen, ob das sinnvoll ist - die Umsetzung in NodeRed sollte immer der Logik folgen, die man sich vorher überlegt und nicht die Nodes verwenden ohne sich über die Logik Gedanken machen.

            B Offline
            B Offline
            Black-jocker
            schrieb am zuletzt editiert von
            #5

            @mickym
            Wie könnte ich den vorhandenen Schalter als Trigger verwenden?
            Als „If then“ in der Funktion 7 hinzufügen?
            Leider weiß ich nicht wie ich das machen kann.

            mickymM F 2 Antworten Letzte Antwort
            0
            • B Black-jocker

              @mickym
              Wie könnte ich den vorhandenen Schalter als Trigger verwenden?
              Als „If then“ in der Funktion 7 hinzufügen?
              Leider weiß ich nicht wie ich das machen kann.

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

              @black-jocker Ich weiß zwar nicht welcher Schalter und welche Funktion 7 - aber wenn Du unbedingt mit function Nodes programmieren willst, dann kannst Du doch anhand des topics herausfinden, woher eine Nachricht stammt und diese dann in eine if else Abfrage einbauen.

              if (msg.topic === "Schalter"){
                  //mach was 
              }
              return msg;
              

              Ansonsten programmiert man aber nicht, sondern verzweigt seinen Flow mit switch 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.

              1 Antwort Letzte Antwort
              0
              • B Black-jocker

                @mickym
                Wie könnte ich den vorhandenen Schalter als Trigger verwenden?
                Als „If then“ in der Funktion 7 hinzufügen?
                Leider weiß ich nicht wie ich das machen kann.

                F Offline
                F Offline
                Felli
                schrieb am zuletzt editiert von
                #7

                @black-jocker wo kommt denn der Wert her? Also da ich mit IoBroker arbeite, Versuche ich stets die Werte dort zentral zu holen, mittels Adapter Integrationen, per MQTT usw. Diese werden ja zwangsweise automatisch bei Änderung oder nach Intervallen aktualisiert je nachdem. Wenn ich nun in NodeRed eine Logik baue die einen Wert oder Schaltzustand als Trigger nutzt, nehme ich gerne einen iorboker IN node. Dieser erhält einen Wert, sobald er sich in IoBroker ändert. Hinter diesem kann man dann per Switch oder Function damit eine Aktion starten. Je nachdem was es ist, natürlich was zum entprellen einbauen, damit deinem Relais im Zweifelsfall nicht schwindelig wird 😵‍💫😉

                Hier mal ein Beispiel, wie ich den DPL nach Zustand ByPass meines Zenduresystems schalte. Sobald dieser auf true geht, sage ich der DTU SolarPassthrough also Mode 2 und wenn false bekommt sie Mode 0 also Normalbetrieb. Diese Logik würde schon fast zu Deinem Usecase passen, nur wäre deine Abhängigkeit halt der Batterie-Stand wenn ich es richtig verstehe. Der Rest steckt in dem Subflow, finde das übersichtlicher.

                Screenshot_20250517-100200.png

                mickymM 1 Antwort Letzte Antwort
                0
                • F Felli

                  @black-jocker wo kommt denn der Wert her? Also da ich mit IoBroker arbeite, Versuche ich stets die Werte dort zentral zu holen, mittels Adapter Integrationen, per MQTT usw. Diese werden ja zwangsweise automatisch bei Änderung oder nach Intervallen aktualisiert je nachdem. Wenn ich nun in NodeRed eine Logik baue die einen Wert oder Schaltzustand als Trigger nutzt, nehme ich gerne einen iorboker IN node. Dieser erhält einen Wert, sobald er sich in IoBroker ändert. Hinter diesem kann man dann per Switch oder Function damit eine Aktion starten. Je nachdem was es ist, natürlich was zum entprellen einbauen, damit deinem Relais im Zweifelsfall nicht schwindelig wird 😵‍💫😉

                  Hier mal ein Beispiel, wie ich den DPL nach Zustand ByPass meines Zenduresystems schalte. Sobald dieser auf true geht, sage ich der DTU SolarPassthrough also Mode 2 und wenn false bekommt sie Mode 0 also Normalbetrieb. Diese Logik würde schon fast zu Deinem Usecase passen, nur wäre deine Abhängigkeit halt der Batterie-Stand wenn ich es richtig verstehe. Der Rest steckt in dem Subflow, finde das übersichtlicher.

                  Screenshot_20250517-100200.png

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

                  @felli sein node-red läuft auf einer victron cerbro und da läuft kein iobroker.

                  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.

                  F 1 Antwort Letzte Antwort
                  0
                  • mickymM mickym

                    @felli sein node-red läuft auf einer victron cerbro und da läuft kein iobroker.

                    F Offline
                    F Offline
                    Felli
                    schrieb am zuletzt editiert von
                    #9

                    @mickym danke habe ich verstanden 😜 Sollte auch als Beispiel dienen, irgendwie kommt der Wert ja in sein NodeRed und in seinem Falle würde ich den dann als Trigger nutzen. Sorry wenn das nicht zu 100% rüber kam ✌🏼

                    1 Antwort Letzte Antwort
                    0
                    • P Offline
                      P Offline
                      peterfido
                      schrieb am zuletzt editiert von peterfido
                      #10

                      @black-jocker Den Wert bei Änderung / Aktualisierung in einer Flow Variable ablegen und nur diese einfach per wiederholendem Trigger weitersenden. Dann macht das auch nichts, wenn der Trigger direkt mit dem Schalter evtl. zu früh kommt, weil nach dem Schalten evtl. noch irgendwas zeitbrauchendes passiert.

                      Gruß

                      Peterfido


                      Proxmox auf Intel NUC12WSHi5
                      ioBroker: Debian (VM)
                      CCU: Debmatic (VM)
                      Influx: Debian (VM)
                      Grafana: Debian (VM)
                      eBus: Debian (VM)
                      Zigbee: Debian (VM) mit zigbee2mqtt

                      B 1 Antwort Letzte Antwort
                      0
                      • P peterfido

                        @black-jocker Den Wert bei Änderung / Aktualisierung in einer Flow Variable ablegen und nur diese einfach per wiederholendem Trigger weitersenden. Dann macht das auch nichts, wenn der Trigger direkt mit dem Schalter evtl. zu früh kommt, weil nach dem Schalten evtl. noch irgendwas zeitbrauchendes passiert.

                        B Offline
                        B Offline
                        Black-jocker
                        schrieb am zuletzt editiert von Black-jocker
                        #11

                        Danke für eure Antworten.

                        Ich habe es jetzt über ein Swtich Node hinbekommen.
                        Der Wert kommt über das Dashboard, einen Numeric Node.

                        Flow.JPG

                        @mickym: Dein Ansatz gefällt mir, grundsätzlich alles mit Nodes abzubilden und nicht unbedingt in functions zu programmieren. Das ist wohl auch der grundsätzliche Gedanke von Node Red.

                        Mein Wissen über Node red basiert auf learning by doing sowie aus ein paar youTube Videos. In den Videos wurde viel mit functions programmiert.
                        Ich habe einen Automatisierungs-Background, d.h. ich habe mal SPS programmiert und im Studium mal etwas Java. Aber meine Java Kenntnisse würde ich als sehr rudimentär bezeichnen.

                        Welche Lektüre oder Webseite könnt ihr mir empfehlen um sich mal grundsätzlich mit Node Red vertraut zu machen?

                        Ich möchte noch eine paar Dinge auf meinem Dashboard abbilden, wie zum Beispiel die Signalstärke/ den Verbindungsstatus eines Teltonika RUTX 50 Router. Aber das ist wohl für einen Anfänger schon sehr ambitioniert.
                        Vielleicht stelle ich noch die eine oder andere Frage hier im Forum dazu :-)

                        mickymM F 2 Antworten Letzte Antwort
                        0
                        • B Black-jocker

                          Danke für eure Antworten.

                          Ich habe es jetzt über ein Swtich Node hinbekommen.
                          Der Wert kommt über das Dashboard, einen Numeric Node.

                          Flow.JPG

                          @mickym: Dein Ansatz gefällt mir, grundsätzlich alles mit Nodes abzubilden und nicht unbedingt in functions zu programmieren. Das ist wohl auch der grundsätzliche Gedanke von Node Red.

                          Mein Wissen über Node red basiert auf learning by doing sowie aus ein paar youTube Videos. In den Videos wurde viel mit functions programmiert.
                          Ich habe einen Automatisierungs-Background, d.h. ich habe mal SPS programmiert und im Studium mal etwas Java. Aber meine Java Kenntnisse würde ich als sehr rudimentär bezeichnen.

                          Welche Lektüre oder Webseite könnt ihr mir empfehlen um sich mal grundsätzlich mit Node Red vertraut zu machen?

                          Ich möchte noch eine paar Dinge auf meinem Dashboard abbilden, wie zum Beispiel die Signalstärke/ den Verbindungsstatus eines Teltonika RUTX 50 Router. Aber das ist wohl für einen Anfänger schon sehr ambitioniert.
                          Vielleicht stelle ich noch die eine oder andere Frage hier im Forum dazu :-)

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

                          @black-jocker sagte in Node red Wert regelmäßig senden:

                          Welche Lektüre oder Webseite könnt ihr mir empfehlen um sich mal grundsätzlich mit Node Red vertraut zu machen?

                          Ich würde nach wie vor das Tutorial von Steve empfehlen, auch wenn es in Englisch ist:

                          https://stevesnoderedguide.com/
                          https://www.youtube.com/watch?v=jWjyIz4Jz58

                          Deutschsprachig gibts eine kleine Turorialreihe auch mit dem iobroker - auch wenn das inzwischen auch schon in die Jahre gekommen ist:
                          https://www.smarthome-tricks.de/uebersicht-iobroker-node-red/

                          Im Prinzip brauchst Du anstelle von function Nodes in der Regel nur Change Nodes, um Deine Nachrichtenobjekte zu verändern und switch Nodes um Deinen Flow mit Bedingungen zu versehen.

                          Dazwischen sind Input/Trigger Nodes aus dem Dashboard oder aus verschiedenen Systemen und Ausgaben wiederum auf Dashboard oder zum Steuern in Systeme hinein.

                          Deshalb muss Dein Logik immer sein.

                          1. Was triggert meinen Flow
                          2. Was will ich ausgeben und/oder steuern

                          Und dazwischen bildest Du 3. Deine Logik ab - in dem Du die Nachrichtenobjekte entsprechende behandelst.

                          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
                          • B Black-jocker

                            Danke für eure Antworten.

                            Ich habe es jetzt über ein Swtich Node hinbekommen.
                            Der Wert kommt über das Dashboard, einen Numeric Node.

                            Flow.JPG

                            @mickym: Dein Ansatz gefällt mir, grundsätzlich alles mit Nodes abzubilden und nicht unbedingt in functions zu programmieren. Das ist wohl auch der grundsätzliche Gedanke von Node Red.

                            Mein Wissen über Node red basiert auf learning by doing sowie aus ein paar youTube Videos. In den Videos wurde viel mit functions programmiert.
                            Ich habe einen Automatisierungs-Background, d.h. ich habe mal SPS programmiert und im Studium mal etwas Java. Aber meine Java Kenntnisse würde ich als sehr rudimentär bezeichnen.

                            Welche Lektüre oder Webseite könnt ihr mir empfehlen um sich mal grundsätzlich mit Node Red vertraut zu machen?

                            Ich möchte noch eine paar Dinge auf meinem Dashboard abbilden, wie zum Beispiel die Signalstärke/ den Verbindungsstatus eines Teltonika RUTX 50 Router. Aber das ist wohl für einen Anfänger schon sehr ambitioniert.
                            Vielleicht stelle ich noch die eine oder andere Frage hier im Forum dazu :-)

                            F Offline
                            F Offline
                            Felli
                            schrieb am zuletzt editiert von
                            #13

                            @black-jocker ich habe null Plan von Javascript aber mit Programmierung von CNC Maschinen. Daher ist das logische denken nicht das Problem wie bei dir, ich brauche nur jemand der die Sprache spricht. Habe mir selbst an der Stelle viel mit KI geholfen muss ich sagen. Der große Vorteil den ich in function nodes sehe, ist halt das man komplexere Szenarien in einem Flow erschlagen kann, anstatt zig switch und Change nodes. Aber das muss jeder selbst rausfinden was man besser gehandelt bekommt.

                            Top das es läuft, freut mich 🤙🏼

                            mickymM 1 Antwort Letzte Antwort
                            0
                            • F Felli

                              @black-jocker ich habe null Plan von Javascript aber mit Programmierung von CNC Maschinen. Daher ist das logische denken nicht das Problem wie bei dir, ich brauche nur jemand der die Sprache spricht. Habe mir selbst an der Stelle viel mit KI geholfen muss ich sagen. Der große Vorteil den ich in function nodes sehe, ist halt das man komplexere Szenarien in einem Flow erschlagen kann, anstatt zig switch und Change nodes. Aber das muss jeder selbst rausfinden was man besser gehandelt bekommt.

                              Top das es läuft, freut mich 🤙🏼

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

                              @felli Man kann auch komplexere Flows mit Nodes realisieren und das muss nicht unübersichtlich sein - man kann auch Subflows verwenden.
                              f625f58a-5392-4e30-b875-c65e065e5dd2-image.png

                              Du kannst auch jeden Flow in einer function Node realisieren - nur das hat halt nichts mehr mit den Vorteilen einer wartungsfreundlichen grafischen Programmierung zu tun.

                              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.

                              F 1 Antwort Letzte Antwort
                              0
                              • mickymM mickym

                                @felli Man kann auch komplexere Flows mit Nodes realisieren und das muss nicht unübersichtlich sein - man kann auch Subflows verwenden.
                                f625f58a-5392-4e30-b875-c65e065e5dd2-image.png

                                Du kannst auch jeden Flow in einer function Node realisieren - nur das hat halt nichts mehr mit den Vorteilen einer wartungsfreundlichen grafischen Programmierung zu tun.

                                F Offline
                                F Offline
                                Felli
                                schrieb am zuletzt editiert von
                                #15

                                @mickym habe mich falsch ausgedrückt sorry meinte nicht in einem einzelnen Flow sondern einem einzelnen node sorry. Wenn ich mehr als einen Wert in der Logik habe die am Ende entscheiden ob true oder false z.B. nehme ich gerne function nodes, in anderen Fällen arbeite ich ebenso gerne mit Switch - Change usw. Aber am Ende doch egal, jeder macht es so wie es ihm am besten passt und es übersichtlich bleibt. Eine Funktion im Flow ist natürlich Blödsinn das war echt falsch gegriffen das Wort, dann kann man tatsächlich direkt in einem Script hexen 🤣

                                mickymM 1 Antwort Letzte Antwort
                                0
                                • F Felli

                                  @mickym habe mich falsch ausgedrückt sorry meinte nicht in einem einzelnen Flow sondern einem einzelnen node sorry. Wenn ich mehr als einen Wert in der Logik habe die am Ende entscheiden ob true oder false z.B. nehme ich gerne function nodes, in anderen Fällen arbeite ich ebenso gerne mit Switch - Change usw. Aber am Ende doch egal, jeder macht es so wie es ihm am besten passt und es übersichtlich bleibt. Eine Funktion im Flow ist natürlich Blödsinn das war echt falsch gegriffen das Wort, dann kann man tatsächlich direkt in einem Script hexen 🤣

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

                                  @felli Ein Function Node ist halt auch wesentlich schwieriger zu debuggen - Du musst mit node.warn arbeiten etc., wenn Deine Logik in der function Node nicht funktioniert.
                                  In einem Flow kannst Du einfach das Kabel trennen oder irgendwo eine Debug Node hinmachen.
                                  Function Nodes nutze ich wirklich nur, wenn ich einen Nodekontext benötige, ggf. andere NodeJS Funktionen nutze möchte. Je länger ich mit NodeRed arbeite, desto mehr habe ich function Nodes ersetzt.

                                  Wenn ich mehr als einen Wert in der Logik habe die am Ende entscheiden ob true oder false z.B. nehme ich gerne function nodes,

                                  Gerade hier ist das grafische Arbeiten von Vorteil, in dem man die Bedingungen als switches implementiert. Ordnet man diese nun parallel oder seriell an, hat man sofort den Überblick ob man mit UND oder ODER verknüpft hat und diese Bedingungen sind leichter zu durchschauen oder zu debuggen.

                                  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.

                                  F 1 Antwort Letzte Antwort
                                  0
                                  • mickymM mickym

                                    @felli Ein Function Node ist halt auch wesentlich schwieriger zu debuggen - Du musst mit node.warn arbeiten etc., wenn Deine Logik in der function Node nicht funktioniert.
                                    In einem Flow kannst Du einfach das Kabel trennen oder irgendwo eine Debug Node hinmachen.
                                    Function Nodes nutze ich wirklich nur, wenn ich einen Nodekontext benötige, ggf. andere NodeJS Funktionen nutze möchte. Je länger ich mit NodeRed arbeite, desto mehr habe ich function Nodes ersetzt.

                                    Wenn ich mehr als einen Wert in der Logik habe die am Ende entscheiden ob true oder false z.B. nehme ich gerne function nodes,

                                    Gerade hier ist das grafische Arbeiten von Vorteil, in dem man die Bedingungen als switches implementiert. Ordnet man diese nun parallel oder seriell an, hat man sofort den Überblick ob man mit UND oder ODER verknüpft hat und diese Bedingungen sind leichter zu durchschauen oder zu debuggen.

                                    F Offline
                                    F Offline
                                    Felli
                                    schrieb am zuletzt editiert von
                                    #17

                                    @mickym da hat du Recht aber wenns einmal läuft ist es auch gut. Wie gesagt ich nutze es oft bei einfachen Logiken mit Switch und Change aber z.B. bei einer dynamischen Berechnung der Ladeleistung aus Überschuss inkl Flow Kontext komme ich einfach nicht an der Function vorbei. Lerne hier aber auch mega gerne von Profis ehrlich gesagt, ich bin bei den Sachen noch halbwegs grün hinter den Ohren 😵‍💫🤣

                                    Schau dir gerne mal mein Werk an, ist nicht der letzte Stand aber groß hat sich hier nichts mehr geändert.

                                    https://github.com/Felliglanz/Zendure

                                    1 Antwort Letzte Antwort
                                    0
                                    • mickymM Online
                                      mickymM Online
                                      mickym
                                      Most Active
                                      schrieb am zuletzt editiert von
                                      #18

                                      @felli Na schaut schön übersichtlich aus. :+1: :smile: - jedenfalls sollte man gerade, wenn man Anfänger Tipps gibt - diesen das Codeschreiben nicht unbedingt angewöhnen und ja ich weiß, dass wenn man im Netz nach Beispielen sucht, die meisten codieren und ChatGPT codiert sowieso am liebsten, da es die Node nicht wirklich malen kann. ;)

                                      Aber gut - ich denke es wurde genügend Argumente ausgetauscht und am Ende zählt das Ergebnis. Nur wie gesagt, man sollte halt das Debuggen und das Verstehen bei der Fehlersuche immer mitbedenken, da dies in meinen Augen halt ein fundamental und wesentlicher Vorteil dieser grafischen Programmierung 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.

                                      F 1 Antwort Letzte Antwort
                                      0
                                      • mickymM mickym

                                        @felli Na schaut schön übersichtlich aus. :+1: :smile: - jedenfalls sollte man gerade, wenn man Anfänger Tipps gibt - diesen das Codeschreiben nicht unbedingt angewöhnen und ja ich weiß, dass wenn man im Netz nach Beispielen sucht, die meisten codieren und ChatGPT codiert sowieso am liebsten, da es die Node nicht wirklich malen kann. ;)

                                        Aber gut - ich denke es wurde genügend Argumente ausgetauscht und am Ende zählt das Ergebnis. Nur wie gesagt, man sollte halt das Debuggen und das Verstehen bei der Fehlersuche immer mitbedenken, da dies in meinen Augen halt ein fundamental und wesentlicher Vorteil dieser grafischen Programmierung ist.

                                        F Offline
                                        F Offline
                                        Felli
                                        schrieb am zuletzt editiert von
                                        #19

                                        @mickym ich bin doch hier vollkommen bei Dir und habe auch nicht das Gegenteil empfohlen 😜

                                        Schau in meinen Flow und die Subflows ich nutze beides und immer so wie es muss. Am liebsten mag ich es pragmatisch und einfach und das besonders weil ich auch erst vor kurzem wirklich intensiv angefangen habe mit NodeRed und IoBroker. Aber für so einen Austausch ist ein Forum doch da, alle Meinungen in einen Pott und am Ende kommt hoffentlich was lauffähiges raus 😵‍💫😉

                                        Danke das dir mein Werk gefällt habe auch Monate dran gefeilt ... Aber es läuft mehr soll es ja auch nicht.

                                        By the way, der FC ist wieder erstklassig 🎉🍻

                                        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

                                        872

                                        Online

                                        32.4k

                                        Benutzer

                                        81.4k

                                        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