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. ioBroker Allgemein
  4. [gelöst] MQTT nur bestimmte Werte auslesen

NEWS

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    16
    1
    238

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    17
    1
    4.5k

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

[gelöst] MQTT nur bestimmte Werte auslesen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
15 Beiträge 2 Kommentatoren 1.8k Aufrufe
  • Ä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.
  • paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #2

    Das ist offenbar ein JSON-String.
    @jp@risum.de:

    Möchte aber nur "CruisingRangeAcOff": "124000" auslesen, geht so etwas ? `

    Das sollte so funktionieren:

    const idRaw = '...'; // Datenpunkt-ID MQTT
    
    on(idRaw, function(dp) {
       var obj = JSON.parse(dp.state.val);
       var range = parseFloat(obj.BatteryStatusRecords.CruisingRangeAcOff);
       ...
    });
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    1 Antwort Letzte Antwort
    0
    • J Offline
      J Offline
      jprisum.de
      schrieb am zuletzt editiert von
      #3

      @paul53:

      Das ist offenbar ein JSON-String.
      @jp@risum.de:

      Möchte aber nur "CruisingRangeAcOff": "124000" auslesen, geht so etwas ? `

      Das sollte so funktionieren:

      const idRaw = '...'; // Datenpunkt-ID MQTT
      
      on(idRaw, function(dp) {
         var obj = JSON.parse(dp.state.val);
         var range = parseFloat(obj.BatteryStatusRecords.CruisingRangeAcOff);
         ...
      });
      ```` `  
      

      Vielen Dank für die schnelle Antwort, wie kann ich diese Infoliation von Dir in IOBroker integrieren.

      Mfg

      JP

      1 Antwort Letzte Antwort
      0
      • paul53P Offline
        paul53P Offline
        paul53
        schrieb am zuletzt editiert von
        #4

        @jp@risum.de:

        wie kann ich diese Infoliation von Dir in IOBroker integrieren. `
        Im Javascript-Adapter.

        Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
        Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

        1 Antwort Letzte Antwort
        0
        • J Offline
          J Offline
          jprisum.de
          schrieb am zuletzt editiert von
          #5

          Super :-) ich mach mich gleich mal ran DANKE

          1 Antwort Letzte Antwort
          0
          • paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #6

            Dann werde ich das Skript noch um den Datenpunkt für das Ergebnis erweitern.

            const idRaw = '...'; // Datenpunkt-ID MQTT: Eintragen !
            const idRangeOff = 'USV.RangeOff'; // Datenpunkt-ID für Ergebnis (bitte anpassen)
            
            // Datenpunkt erzeugen
            createState(idRangeOff, 0, {
               type: 'number',
               name: 'Batterie Range AC Aus',
               unit: '?'  // Bitte anpassen
            });
            
            on(idRaw, function(dp) {
               var obj = JSON.parse(dp.state.val);
               var range = parseFloat(obj.BatteryStatusRecords.CruisingRangeAcOff);
               setState(idRangeOff, range, true);
            });
            

            Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
            Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

            1 Antwort Letzte Antwort
            0
            • J Offline
              J Offline
              jprisum.de
              schrieb am zuletzt editiert von
              #7

              Ich habe dein zweites Script eingefügt leider zeigt er mir nur 0 km an.

              2 = ist das so gemeint ?

              3 = das wäre der Wert den ich gerne hätte.
              12372_io-skript.png

              Mfg

              JP

              1 Antwort Letzte Antwort
              0
              • paul53P Offline
                paul53P Offline
                paul53
                schrieb am zuletzt editiert von
                #8
                /leaf/status/raw
                

                ist sicher nicht die Datenpunkt-ID, vielleicht ist es der Name ? Die Datemumkt-ID beginnt wahrscheinlich mit mqtt.0. Du kannst

                "ID einfügen" rechts oben im JS-Editor verwenden.

                Bevor die initiale 0 mit dem Wert aus dem JSON ersetzt wird, muss sich der Inhalt des JSON erst einmal ändern. Es kann also eine Weile dauern.

                Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                1 Antwort Letzte Antwort
                0
                • J Offline
                  J Offline
                  jprisum.de
                  schrieb am zuletzt editiert von
                  #9

                  12372_km-script.jpg

                  so sieht es bei mir aus !

                  Und geändert habe ich jetzt

                  const idRaw = "mqtt.0"; // Datenpunkt-ID MQTT: Eintragen !

                  const idRangeOff = "mqtt.0.leaf.status.raw"/leaf/status/raw/;

                  Danke das du mir dabei hilfst, da muss ich noch viel lernen. (:-o)

                  1 Antwort Letzte Antwort
                  0
                  • paul53P Offline
                    paul53P Offline
                    paul53
                    schrieb am zuletzt editiert von
                    #10

                    Javascript-Code bitte in Code tags (5. Button oben) einfügen !

                    Richtig:

                    const idRaw = "mqtt.0.leaf.status.raw"/*leaf/status/raw*/; // Datenpunkt-ID MQTT: Eintragen !
                    const idRangeOff = 'CruisingRangeAcOff';
                    // oder besser mit Ordnerstruktur
                    const idRangeOff = 'Battery.CruisingRangeAcOff';
                    

                    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                    Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                    1 Antwort Letzte Antwort
                    0
                    • paul53P Offline
                      paul53P Offline
                      paul53
                      schrieb am zuletzt editiert von
                      #11

                      Wenn der richtige Wert gleich bei Skriptstart in den Ergebnis-Datenpunkt geschrieben werden soll, dann so

                      const idRaw = "mqtt.0.leaf.status.raw"/*leaf/status/raw*/; // Datenpunkt-ID MQTT
                      const idRangeOff = 'Battery.CruisingRangeAcOff';
                      
                      // Datenpunkt erzeugen
                      createState(idRangeOff, 0, {
                         type: 'number',
                         name: 'Batterie Range AC Aus',
                         unit: 'km'  
                      });
                      
                      function battery(json) {
                         var obj = JSON.parse(json);
                         var range = parseFloat(obj.BatteryStatusRecords.CruisingRangeAcOff);
                         setState(idRangeOff, range/1000, true);
                      }
                      
                      battery(getState(idRaw).val); // Skriptstart
                      
                      on(idRaw, function(dp) {
                         battery(dp.state.val);
                      });
                      
                      

                      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                      1 Antwort Letzte Antwort
                      0
                      • J Offline
                        J Offline
                        jprisum.de
                        schrieb am zuletzt editiert von
                        #12

                        > Javascript-Code bitte in Code tags (5\. Button oben) einfügen !

                        leider weiß ich noch nicht was du damit meinst :-(

                        1 Antwort Letzte Antwort
                        0
                        • paul53P Offline
                          paul53P Offline
                          paul53
                          schrieb am zuletzt editiert von
                          #13

                          @jp@risum.de:

                          leider weiß ich noch nicht was du damit meinst `
                          493_code_tags.jpg

                          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                          1 Antwort Letzte Antwort
                          0
                          • J Offline
                            J Offline
                            jprisum.de
                            schrieb am zuletzt editiert von
                            #14

                            Vielen Dank für deine schnelle und Erfolgreiche Hilfe
                            12372_finale.jpg

                            1 Antwort Letzte Antwort
                            0
                            • paul53P Offline
                              paul53P Offline
                              paul53
                              schrieb am zuletzt editiert von
                              #15

                              Bitte das Thema im Betreff des ersten Beitrags als [gelöst] markieren.

                              Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                              Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                              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
                              FAQ Cloud / IOT
                              HowTo: Node.js-Update
                              HowTo: Backup/Restore
                              Downloads
                              BLOG

                              571

                              Online

                              32.7k

                              Benutzer

                              82.5k

                              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