Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Function mit 3 Ausgängen

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    Function mit 3 Ausgängen

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

      Hallo,

      ich möchte einen Payload splitten und in einer Function den 3 Ausgängen zuweisen

      var str = msg.payload;
      var res = str.split("|");
      var msg0=res[0];
      var msg1=res[1];
      var msg2=res[2];
      return [msg0,msg1,msg2];
      

      Das Aufspalten hat funktioniert

      Kann mir jemand bitte sagen wo hier der Fehler liegt?

      1 Reply Last reply Reply Quote 0
      • R
        rewenode last edited by

        Ich vermute mal, dass es sich um node-red handelt.

        Falls dem so ist, da kannst du keinen String als msg zurückgeben. msg muss immer ein Objekt sein.

        Mach es z.B. so:

        var str = msg.payload;
        var res = str.split("|");
        var msg0= { payload: res[0]};
        var msg1= { payload: res[1]};
        var msg2= { payload: res[2]};
        return [msg0,msg1,msg2];
        
        
        1 Reply Last reply Reply Quote 0
        • G
          Garf last edited by

          Mist, da war rewenode schneller als ich. :lol:

          Die Antwort findet man auch in der Dokumentation von Node Red.

          Quelle: https://nodered.org/docs/writing-functions
          ` > <u>Multiple Messages</u>

          A function can return multiple messages on an output by returning an array of messages within the returned array. When multiple messages are returned for an output, subsequent nodes will receive the messages one at a time in the order they were returned.

          In the following example, msg1, msg2, msg3 will be sent to the first output. msg4 will be sent to the second output.

          var msg1 = { payload:"first out of output 1" };

          var msg2 = { payload:"second out of output 1" };

          var msg3 = { payload:"third out of output 1" };

          var msg4 = { payload:"only message from output 2" };

          return [ [ msg1, msg2, msg3 ], msg4 ]; `

          @rewenode

          Du machst hier einen Mega-Job. Ich freue mich jedesmal darauf deine Antworten zu lesen und lerne jedesmal etwas dazu. Danke dafür.

          Für mich bist Du heute schon der Node Red Supporter des Jahres. 😉

          1 Reply Last reply Reply Quote 0
          • M
            magifox last edited by

            Danke erst mal für die Hilfe

            ich hatte übrigens dieses Beispiel auch gefunden und getestet

            meinen Fehler kann ich nun nicht mehr nachvollziehen

            1 Reply Last reply Reply Quote 0
            • R
              rewenode last edited by

              Achtung OT

              @Graf: Danke. Hab selber soviel vom Forum profitiert, da bin ich froh, auch mal was zurückgeben zu können.

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

              Support us

              ioBroker
              Community Adapters
              Donate

              872
              Online

              31.7k
              Users

              79.9k
              Topics

              1.3m
              Posts

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