Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • 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

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    10
    1
    217

  • Neuer ioBroker-Blog online: Monatsrückblick März/April 2026
    BluefoxB
    Bluefox
    8
    1
    1.8k

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    11
    1
    768

[gelöst] MQTT nur bestimmte Werte auslesen

Geplant Angeheftet Gesperrt Verschoben ioBroker Allgemein
15 Beiträge 2 Kommentatoren 1.9k 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.
  • 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: Asus PN 42 / N100 / 8 GB / 500 GB

      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: Asus PN 42 / N100 / 8 GB / 500 GB

          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: Asus PN 42 / N100 / 8 GB / 500 GB

              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: Asus PN 42 / N100 / 8 GB / 500 GB

                  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: Asus PN 42 / N100 / 8 GB / 500 GB

                    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: Asus PN 42 / N100 / 8 GB / 500 GB

                        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: Asus PN 42 / N100 / 8 GB / 500 GB

                            1 Antwort Letzte Antwort
                            0

                            Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                            Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                            Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                            Registrieren Anmelden
                            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

                            550

                            Online

                            32.9k

                            Benutzer

                            83.0k

                            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