Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Neuling?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Neuling?

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

      weis ich net ganz genau.

      Ich kann dir sagen wir man rundet

      sicherlich kann man da nen Zusatz machen dass man auch 2 Stellen nach dem Komma rundet, aber wie??

      [{"id":"cac18979.353e78","type":"inject","name":"","topic":"","payload":"99,9999","payloadType":"string","repeat":"","crontab":"","once":false,"x":167,"y":1094,"z":"fc6c7385.03939","wires":[["629e1530.9d61ec"]]},{"id":"216d9604.de926a","type":"debug","name":"","active":true,"console":"false","complete":"false","x":798,"y":1099,"z":"fc6c7385.03939","wires":[]},{"id":"629e1530.9d61ec","type":"function","name":"","func":"var Tage_Strom = msg.payload;\nvar Tage_Strom = parseInt(Tage_Strom); // in Zahl umwandeln\n//var Tage_Stromg = Tage_Strom.toFixed(2); \nmsg.payload=Tage_Strom;\nreturn msg;","outputs":1,"noerr":0,"x":451,"y":1097,"z":"fc6c7385.03939","wires":[["216d9604.de926a"]]}]
      
      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 last edited by

        Ersetze mal parseInt(Tage_Strom) durch parseFloat(Tage_Strom) und ändere in msg.payload=Tage_Stromg.

        1 Reply Last reply Reply Quote 0
        • fischi87
          fischi87 last edited by

          Sowas steht bei mir nicht?!

          [{"id":"46eaf489.b9150c","type":"inject","name":"Start","topic":"","payload":"","payloadType":"string","repeat":"900","crontab":"","once":false,"x":77.21598815917969,"y":62.86397933959961,"z":"3249cd7d.cdb632","wires":[["e832faba.17cd08"]]},{"id":"e832faba.17cd08","type":"http request","name":"Wetterinfo für Strehla über API-Key","method":"GET","ret":"obj","url":"http://api.openweathermap.org/data/2.5/ … 32":[["d69796bc.296868","62ede8a7.9d1218"]]},{"id":"d69796bc.296868","type":"function","name":"Daten extrahieren","func":"msg1 = {};\nmsg1.payload = msg.payload.main.temp;\nmsg2 = {};\nmsg2.payload = msg.payload.main.pressure;\nmsg3 = {};\nmsg3.payload = msg.payload.main.humidity;\nmsg4 = {};\nmsg4.payload = msg.payload.wind.speed;\nmsg5 = {};\nmsg5.payload = msg.payload.wind.deg;\n\nreturn [msg1,msg2,msg3,msg4,msg5];","outputs":"5","noerr":0,"x":631.2159881591797,"y":145.8639793395996,"z":"3249cd7d.cdb632","wires":[["49311bdd.b6cee4"],["1782aa54.e87d56"],["bd7c22f9.4283e"],["f39debec.0c6218"],["b02f0df9.4fd0f"]]},{"id":"49311bdd.b6cee4","type":"ioBroker out","name":"Außentemperatur","topic":"hm-rega.0.4764","ack":"false","autoCreate":"true","x":921.6127166748047,"y":62.86397933959961,"z":"3249cd7d.cdb632","wires":[]},{"id":"1782aa54.e87d56","type":"ioBroker out","name":"Luftdruck","topic":"hm-rega.0.4765","ack":"false","autoCreate":"false","x":899.0413055419922,"y":113.32455062866211,"z":"3249cd7d.cdb632","wires":[]},{"id":"bd7c22f9.4283e","type":"ioBroker out","name":"Luftfeuchtigkeit","topic":"hm-rega.0.4766","ack":"false","autoCreate":"false","x":917.6127166748047,"y":159.4673728942871,"z":"3249cd7d.cdb632","wires":[]},{"id":"f39debec.0c6218","type":"ioBroker out","name":"Windgeschwindigkeit","topic":"hm-rega.0.4767","ack":"false","autoCreate":"false","x":938.4698944091797,"y":209.75320053100586,"z":"3249cd7d.cdb632","wires":[]},{"id":"b02f0df9.4fd0f","type":"ioBroker out","name":"Windrichtung","topic":"hm-rega.0.4768","ack":"false","autoCreate":"false","x":918.6127166748047,"y":257.7530174255371,"z":"3249cd7d.cdb632","wires":[]},{"id":"62ede8a7.9d1218","type":"debug","name":"Ausgabe","active":true,"console":"false","complete":"payload","x":625.2159881591797,"y":62.86397933959961,"z":"3249cd7d.cdb632","wires":[]}]

          1 Reply Last reply Reply Quote 0
          • H
            HKF8770 last edited by

            Hallo Paul,

            kannst du mir sagen wir mann da rundet?? Bei java ist das ja .toFixed(2). Somit kann ich dann nen Wert runden auf 2 Stellen nach dem Komma. Aber bei Node geht der Befehl nicht. Was du ne Lösung?

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 last edited by

              @fischi87:

              Sowas steht bei mir nicht?! Die einzige Stelle, an der man drehen kann, sehe ich bei > msg1.payload = msg.payload.main.temp Vielleicht hilft ein Ersetzen durch ?: > msg1.payload = msg.payload.main.temp.toFixed(2) `

              1 Reply Last reply Reply Quote 0
              • Bluefox
                Bluefox last edited by

                @paul53:

                @fischi87:

                Sowas steht bei mir nicht?! Die einzige Stelle, an der man drehen kann, sehe ich bei > msg1.payload = msg.payload.main.temp Vielleicht hilft ein Ersetzen durch ?: > msg1.payload = msg.payload.main.temp.toFixed(2)
                toFixed erwartet schon number als Typ. Deswegen:

                msg.payload = parseFloat(egalWas || 0).toFixed(2);
                
                1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 last edited by

                  @Bluefox:

                  toFixed erwartet schon number als Typ. `
                  Laut http://openweathermap.org/current sollte Typ "number" geliefert werden.

                  Mit parseFloat(wert) ist es natürlich sicherer und sieht dann im konkreten Fall so aus:

                  msg1.payload = parseFloat(msg.payload.main.temp).toFixed(2)
                  

                  2678_spotify.png

                  1 Reply Last reply Reply Quote 0
                  • fischi87
                    fischi87 last edited by

                    hey paul53,

                    viele dank dein code hat funktioniert, nur wenn ich das übertrage auch auf "speed" steht bei mir in der ccm nur "nan" da????

                    Mit freundlichen Grüßen

                    1 Reply Last reply Reply Quote 0
                    • paul53
                      paul53 last edited by

                      msg4.payload = parseFloat(msg.payload.wind.speed).toFixed(2)
                      

                      funktioniert nicht ?

                      "nan" erzeugt Javascript, wenn Typ "number" erwartet wird, aber nicht vorliegt.
                      4249_spotify_playlist_016.png
                      4249_spotify_playlist_017.png

                      1 Reply Last reply Reply Quote 0
                      • fischi87
                        fischi87 last edited by

                        nein funktioniert leider nicht, selbst wenn ich das jetzt wieder ändere in original zustand komm ich nicht wieder auf die zahl??????

                        was mir auch gerade auffällt, ich bekomme jetzt immer eine 0 nach dem Komma auch wenn eine zahl übermittelt wird???

                        Mit freundlichen Grüßen

                        1 Reply Last reply Reply Quote 0
                        • fischi87
                          fischi87 last edited by

                          so jetzt hat es doch funktioniert, sorry hab mal neu gestartet, jetzt funktioniert alles, danke euch

                          Mit freundlichen Grüßen

                          ps. hab noch viel zu lernen was node-red betrifft, wo findet man die befehle und ihre Bedeutung?

                          1 Reply Last reply Reply Quote 0
                          • fischi87
                            fischi87 last edited by

                            hey paul53 ich nochmal, vielleicht kannst du oder jemand anderes nochmal helfen?!

                            wie gesagt versuche mir node-red irgendwie beizubringen.

                            ich habe vor per sind adapter eine sv zu schalten d.h. wenn alles Geräte in mehr im plan sind soll die sv sich ändern aber was schreibt man da für eine Funktion rein oder wie realisiert man dies?

                            das ist der Anfang:

                            [{"id":"f7a2cf94.085d3","type":"ioBroker in","name":"PS 4","topic":"ping.0.RaspberryPi.192_168_178_31","payloadType":"value","x":136,"y":434,"z":"751d0e6f.8ae2f","wires":[[]]}]
                            
                            1 Reply Last reply Reply Quote 0
                            • fischi87
                              fischi87 last edited by

                              @fischi87:

                              hey paul53 ich nochmal, vielleicht kannst du oder jemand anderes nochmal helfen?!

                              wie gesagt versuche mir node-red irgendwie beizubringen.

                              ich habe vor per sind adapter eine sv zu schalten d.h. wenn alles Geräte in mehr im plan sind soll die sv sich ändern aber was schreibt man da für eine Funktion rein oder wie realisiert man dies?

                              das ist der Anfang:

                              [{"id":"f7a2cf94.085d3","type":"ioBroker in","name":"PS 4","topic":"ping.0.RaspberryPi.192_168_178_31","payloadType":"value","x":136,"y":434,"z":"751d0e6f.8ae2f","wires":[[]]}]
                              ```` `  
                              

                              danke Mit freundlichen Grüßen

                              1 Reply Last reply Reply Quote 0
                              • paul53
                                paul53 last edited by

                                Von node-red habe ich nicht die geringste Ahnung. Lediglich mit der darin eingebetten Javascript-Funktion (hinter "func":) kann ich etwas anfangen.

                                1 Reply Last reply Reply Quote 0
                                • fischi87
                                  fischi87 last edited by

                                  und kannst du mir da mit meinem Projekt helfen? ich werde ja eine Funktion brauchen und den true and false status der jeweiligen Geräte zu erkennen und dann eine "wenn oder" Auswertung zu bekommen?!

                                  Mit freundlichen Grüßen

                                  1 Reply Last reply Reply Quote 0
                                  • paul53
                                    paul53 last edited by

                                    Bei der Funktion kann ich Dir sicherlich helfen, wenn Du genau beschreibst, was diese Funktion machen soll und was die Eingangs- und Ausgangsgrößen sind.

                                    1 Reply Last reply Reply Quote 0
                                    • paul53
                                      paul53 last edited by

                                      So sieht die Javascript-Lösung für die Aufgabenstellng aus:

                                      var request = require('request');
                                      var url = 'http://api.openweathermap.org/data/2.5/weather?q=Strehla,DE&units=metric&APPID=e5de2c3e2339a69b6d181c0cb9d2e5d8';
                                      var wetter = {};
                                      
                                      // alle 15 Minuten
                                      schedule("*/15 * * * *", function () {
                                      
                                          request(url, function(error, response, body) {
                                          if (!error && response.statusCode == 200) {
                                              wetter = JSON.parse(body);
                                      
                                              setState("hm-rega.0.4764",wetter.main.temp.toFixed(2) + " °C");
                                              setState("hm-rega.0.4765",wetter.main.pressure.toFixed(1) + " hPa");
                                              setState("hm-rega.0.4766",wetter.main.humidity;.toFixed(0) + " %");
                                              setState("hm-rega.0.4767",wetter.wind.speed.toFixed(1) + " m/s");
                                              setState("hm-rega.0.4768",wetter.wind.deg.toFixed(0) + " °");
                                              }
                                          });
                                      });
                                      
                                      
                                      1 Reply Last reply Reply Quote 0
                                      • First post
                                        Last post

                                      Support us

                                      ioBroker
                                      Community Adapters
                                      Donate

                                      753
                                      Online

                                      31.7k
                                      Users

                                      79.7k
                                      Topics

                                      1.3m
                                      Posts

                                      4
                                      22
                                      3548
                                      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