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. funktion optimieren

NEWS

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.3k

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

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    14
    1
    2.6k

funktion optimieren

Geplant Angeheftet Gesperrt Verschoben Node-Red
11 Beiträge 3 Kommentatoren 646 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.
  • R Offline
    R Offline
    Ragnar-Lodbrok
    schrieb am zuletzt editiert von Ragnar-Lodbrok
    #1

    Hallo,
    ich befasse mich gerade mit Node-RED und habe eine Möglichkeit gefunden über Alexa die Temperatur zu steuern.
    ( Wenn jemand einen besseren Vorschlag hat immer her damit :blush: )

    Die Schalter, zb. heizung 19 grad, senden ein on oder off !
    Das wandel ich mit einer function in eine Zahl um die wiederum in die Datei javascript.0.temp-test.testheizung geschrieben wird.

    Die Auswertung erfolg dann weiter über Blockly weil mir hier noch das wissen fehlt.
    Würde aber gerne die ganze Steuerung über Node-red laufen lassen.

    Bildschirmfoto zu 2020-11-10 14-07-29.png

    Jetzt würde ich das gerne optimieren und nur eine function nutzen mit mehreren Ausgängen für zb Heizung aus, 19 Grad, 20 Grad etc.

    Auch würde ich die function änder in "if" und "or", jedoch weiß ich nicht wie :-(

    So zb.:

    if(msg.payload == 'on' or 'off')
    {
    msg.payload = '21';
    }
    return msg;

    Gruß

    Bildschirmfoto zu 2020-11-10 13-48-11.png Bildschirmfoto zu 2020-11-10 13-48-27.png Bildschirmfoto zu 2020-11-10 13-48-44.png

    Hardwaresystem: NUC
    Arbeitsspeicher: 64GB
    Festplattenart: SSD
    Betriebssystem:Debian
    Nodejs-Version:3.1.6|
    ioBroker 4.2.1

    P 1 Antwort Letzte Antwort
    0
    • R Ragnar-Lodbrok

      Hallo,
      ich befasse mich gerade mit Node-RED und habe eine Möglichkeit gefunden über Alexa die Temperatur zu steuern.
      ( Wenn jemand einen besseren Vorschlag hat immer her damit :blush: )

      Die Schalter, zb. heizung 19 grad, senden ein on oder off !
      Das wandel ich mit einer function in eine Zahl um die wiederum in die Datei javascript.0.temp-test.testheizung geschrieben wird.

      Die Auswertung erfolg dann weiter über Blockly weil mir hier noch das wissen fehlt.
      Würde aber gerne die ganze Steuerung über Node-red laufen lassen.

      Bildschirmfoto zu 2020-11-10 14-07-29.png

      Jetzt würde ich das gerne optimieren und nur eine function nutzen mit mehreren Ausgängen für zb Heizung aus, 19 Grad, 20 Grad etc.

      Auch würde ich die function änder in "if" und "or", jedoch weiß ich nicht wie :-(

      So zb.:

      if(msg.payload == 'on' or 'off')
      {
      msg.payload = '21';
      }
      return msg;

      Gruß

      Bildschirmfoto zu 2020-11-10 13-48-11.png Bildschirmfoto zu 2020-11-10 13-48-27.png Bildschirmfoto zu 2020-11-10 13-48-44.png

      P Offline
      P Offline
      peterfido
      schrieb am zuletzt editiert von peterfido
      #2

      @Ragnar-Lodbrok Hallo, du hast für jede Temperatur ein Gerät angelegt. Besser ist es mit nur einem Gerät (dimmbare Lampe). Da übergibst du die gewünschte Temperatur als Zahl. Der Wert taucht dann unter msg.bri auf.

      Alexa, Stelle Wohnzimmerheizung auf 22.

      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

      R 1 Antwort Letzte Antwort
      0
      • P peterfido

        @Ragnar-Lodbrok Hallo, du hast für jede Temperatur ein Gerät angelegt. Besser ist es mit nur einem Gerät (dimmbare Lampe). Da übergibst du die gewünschte Temperatur als Zahl. Der Wert taucht dann unter msg.bri auf.

        Alexa, Stelle Wohnzimmerheizung auf 22.

        R Offline
        R Offline
        Ragnar-Lodbrok
        schrieb am zuletzt editiert von
        #3

        @peterfido said in funktion optimieren:

        dimmbare Lampe

        Wie meinst Du das ? Welchen Baustein soll ich zum dimmen nehmen und welche dadurch ersetzen ?

        Hardwaresystem: NUC
        Arbeitsspeicher: 64GB
        Festplattenart: SSD
        Betriebssystem:Debian
        Nodejs-Version:3.1.6|
        ioBroker 4.2.1

        J 1 Antwort Letzte Antwort
        0
        • R Ragnar-Lodbrok

          @peterfido said in funktion optimieren:

          dimmbare Lampe

          Wie meinst Du das ? Welchen Baustein soll ich zum dimmen nehmen und welche dadurch ersetzen ?

          J Offline
          J Offline
          Jan1
          schrieb am zuletzt editiert von Jan1
          #4

          @Ragnar-Lodbrok
          Mit der Funktion, nur eben ein andere Inhalt:

          var newMsg = { payload: Math.round (msg.bri*100/254) } ;
          return newMsg;
          

          e74e6198-f4d0-4c99-a81d-93d2937c106f-grafik.png

          So steure Ich meine Rollläden von 0-100.

          R 1 Antwort Letzte Antwort
          0
          • J Jan1

            @Ragnar-Lodbrok
            Mit der Funktion, nur eben ein andere Inhalt:

            var newMsg = { payload: Math.round (msg.bri*100/254) } ;
            return newMsg;
            

            e74e6198-f4d0-4c99-a81d-93d2937c106f-grafik.png

            So steure Ich meine Rollläden von 0-100.

            R Offline
            R Offline
            Ragnar-Lodbrok
            schrieb am zuletzt editiert von Ragnar-Lodbrok
            #5

            @Jan1 said in funktion optimieren:

                                                                                                                                        var newMsg = { payload: Math.round (msg.bri*100/254) } ;                                                                                                                                                                            return newMsg;                                            
            

            Danke, mir fehlt jedoch noch das Verständnis.

            Ich weiß nicht wie ich den Wert, zb heizung 24, heizung 25 an den Dimmer übergebe.
            Wenn ich heizung 24 sage erscheint nur die 0 im debug.
            0 würde ich für Heizung aus nehmen und die 25 für max, oder?

            var newMsg = { payload: Math.round (msg.bri*0/25) } ;
            return newMsg;
            

            Bildschirmfoto zu 2020-11-11 09-43-13.png

            Bildschirmfoto zu 2020-11-11 09-43-56.png

            oder muss ich im amazon echo device noch etwas eintragen ?
            hier irgendwo die 24 ?
            Bildschirmfoto zu 2020-11-11 09-47-03.png

            Hardwaresystem: NUC
            Arbeitsspeicher: 64GB
            Festplattenart: SSD
            Betriebssystem:Debian
            Nodejs-Version:3.1.6|
            ioBroker 4.2.1

            R J 2 Antworten Letzte Antwort
            0
            • R Ragnar-Lodbrok

              @Jan1 said in funktion optimieren:

                                                                                                                                          var newMsg = { payload: Math.round (msg.bri*100/254) } ;                                                                                                                                                                            return newMsg;                                            
              

              Danke, mir fehlt jedoch noch das Verständnis.

              Ich weiß nicht wie ich den Wert, zb heizung 24, heizung 25 an den Dimmer übergebe.
              Wenn ich heizung 24 sage erscheint nur die 0 im debug.
              0 würde ich für Heizung aus nehmen und die 25 für max, oder?

              var newMsg = { payload: Math.round (msg.bri*0/25) } ;
              return newMsg;
              

              Bildschirmfoto zu 2020-11-11 09-43-13.png

              Bildschirmfoto zu 2020-11-11 09-43-56.png

              oder muss ich im amazon echo device noch etwas eintragen ?
              hier irgendwo die 24 ?
              Bildschirmfoto zu 2020-11-11 09-47-03.png

              R Offline
              R Offline
              Ragnar-Lodbrok
              schrieb am zuletzt editiert von Ragnar-Lodbrok
              #6

              so langsam verstehe ich :blush:

              Wenn ich, Alex stelle Heizung auf 25 Grad, sage kommt ein okay aber es wird nur der Wert null ausgegeben ?

              Bildschirmfoto zu 2020-11-11 10-04-22.png

              Hardwaresystem: NUC
              Arbeitsspeicher: 64GB
              Festplattenart: SSD
              Betriebssystem:Debian
              Nodejs-Version:3.1.6|
              ioBroker 4.2.1

              1 Antwort Letzte Antwort
              0
              • R Ragnar-Lodbrok

                @Jan1 said in funktion optimieren:

                                                                                                                                            var newMsg = { payload: Math.round (msg.bri*100/254) } ;                                                                                                                                                                            return newMsg;                                            
                

                Danke, mir fehlt jedoch noch das Verständnis.

                Ich weiß nicht wie ich den Wert, zb heizung 24, heizung 25 an den Dimmer übergebe.
                Wenn ich heizung 24 sage erscheint nur die 0 im debug.
                0 würde ich für Heizung aus nehmen und die 25 für max, oder?

                var newMsg = { payload: Math.round (msg.bri*0/25) } ;
                return newMsg;
                

                Bildschirmfoto zu 2020-11-11 09-43-13.png

                Bildschirmfoto zu 2020-11-11 09-43-56.png

                oder muss ich im amazon echo device noch etwas eintragen ?
                hier irgendwo die 24 ?
                Bildschirmfoto zu 2020-11-11 09-47-03.png

                J Offline
                J Offline
                Jan1
                schrieb am zuletzt editiert von
                #7

                @Ragnar-Lodbrok
                Die ganzen Temperaturen kannst Dir schenken, einfach die Amazon Node und die Funktion, direkt auf den zu steuer enden DP. Alles was Du Alexa sagst, wird direkt an den DP übergeben.

                R 1 Antwort Letzte Antwort
                0
                • J Jan1

                  @Ragnar-Lodbrok
                  Die ganzen Temperaturen kannst Dir schenken, einfach die Amazon Node und die Funktion, direkt auf den zu steuer enden DP. Alles was Du Alexa sagst, wird direkt an den DP übergeben.

                  R Offline
                  R Offline
                  Ragnar-Lodbrok
                  schrieb am zuletzt editiert von
                  #8

                  @Jan1

                  habe ich gemacht aber warum kommt im debug dann immer nur die null ?

                  Bildschirmfoto zu 2020-11-11 10-07-03.png

                  Hardwaresystem: NUC
                  Arbeitsspeicher: 64GB
                  Festplattenart: SSD
                  Betriebssystem:Debian
                  Nodejs-Version:3.1.6|
                  ioBroker 4.2.1

                  J 1 Antwort Letzte Antwort
                  0
                  • R Ragnar-Lodbrok

                    @Jan1

                    habe ich gemacht aber warum kommt im debug dann immer nur die null ?

                    Bildschirmfoto zu 2020-11-11 10-07-03.png

                    J Offline
                    J Offline
                    Jan1
                    schrieb am zuletzt editiert von
                    #9

                    @Ragnar-Lodbrok
                    Mit dem Debug habe ich noch wie was angezeigt bekommen. Nimm die Funktion so wie ich sie oben gepostet habe und Du kannst von 0 -100 über Alexa steuern.

                    R 1 Antwort Letzte Antwort
                    0
                    • J Jan1

                      @Ragnar-Lodbrok
                      Mit dem Debug habe ich noch wie was angezeigt bekommen. Nimm die Funktion so wie ich sie oben gepostet habe und Du kannst von 0 -100 über Alexa steuern.

                      R Offline
                      R Offline
                      Ragnar-Lodbrok
                      schrieb am zuletzt editiert von
                      #10

                      @Jan1

                      Perfekt jetzt geht es :+1: :+1:

                      Hardwaresystem: NUC
                      Arbeitsspeicher: 64GB
                      Festplattenart: SSD
                      Betriebssystem:Debian
                      Nodejs-Version:3.1.6|
                      ioBroker 4.2.1

                      J 1 Antwort Letzte Antwort
                      0
                      • R Ragnar-Lodbrok

                        @Jan1

                        Perfekt jetzt geht es :+1: :+1:

                        J Offline
                        J Offline
                        Jan1
                        schrieb am zuletzt editiert von
                        #11

                        @Ragnar-Lodbrok
                        einfacher als gedacht :)
                        Ich such mir bei Node-Red auch immer alles zusammen was ich brauch, da mir die Logik von Node-Red gegen mein Verständnis geht.

                        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

                        550

                        Online

                        32.5k

                        Benutzer

                        81.7k

                        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