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. Einsteigerfragen
  4. Problem beim Parsen eines JSON-Objektes aus Tasmota (MQTT)

NEWS

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    13
    1
    1.6k

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

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

Problem beim Parsen eines JSON-Objektes aus Tasmota (MQTT)

Geplant Angeheftet Gesperrt Verschoben Einsteigerfragen
11 Beiträge 3 Kommentatoren 1.1k Aufrufe 1 Beobachtet
  • Ä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.
  • H hualex

    Ich habe folgende Frage:
    An welche Stelle (welcher Adapter ist hier zuständig) gehört folgender Fehler adressiert/gemeldet?

    Kurze Beschreibung:
    Ich verarbeite Sensordaten aus Tasmota per Objekte.Alias (nicht Alias-Manager) weiter, indem ich die Sensorwerte aus dem jeweiligen JSON-Objekt der MQTT-Message parse. (z.B. so: JSON.parse(val).ADS1115.A0) das funktioniert soweit super, solange nur ein Sensor gleichen Typs existiert. Ab dem 2. Sensor sendet Tasmota zur Identifizierung des entsprechenden Sensors im Property die I2C-Adresse des Sensors mit, also statt ADS1115 nun z.B. ADS1115-48 (0x48 ist die I2C-Adresse). Dummerweise kann man den Sensornamen in Tasmota nicht ohne Eingriffe im Quellcode ändern (soweit mir bekannt). Iobroker wiederum stößt sich (wahrscheinlich) am Bindestrich im Property.
    Wenn ich die Lesefunktion unter Objekte/Alias nun auf das korrekte Property ADS1115-48.A0 ändere, schlägt das Lesen des Wertes fehl.

    das steht im Protokoll (Pfad gekürzt):

    2024-05-16 17:31:24.315 - error: admin.0 (607) Invalid read function for "alias.0.xxxx.Zisterne_Messwert": "JSON.parse(val).ADS1115-48.A0" => Invalid or unexpected token
    2024-05-16 17:31:24.315 - error: javascript.0 (637) Invalid read function for "alias.0.xxxx.Zisterne_Messwert": "JSON.parse(val).ADS1115-48.A0" => Invalid or unexpected token

    Wohin muss ich den Fehler melden? JS-Adapter? Admin-Adapter? Welcher Bereich in Iobroker ist für das Parsen in den Alias-Objekten zuständig.

    Vielleicht kann mir jemand einen Tipp geben, Vielen Dank schon mal.

    paul53P Offline
    paul53P Offline
    paul53
    schrieb am zuletzt editiert von
    #2

    @hualex sagte: einen Tipp

    JSON.parse(val)['ADS1115-48'].A0
    

    Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
    Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

    H 2 Antworten Letzte Antwort
    1
    • paul53P paul53

      @hualex sagte: einen Tipp

      JSON.parse(val)['ADS1115-48'].A0
      
      H Offline
      H Offline
      hualex
      schrieb am zuletzt editiert von
      #3

      @paul53

      das werde ich sofort ausprobieren, Danke schon mal!

      1 Antwort Letzte Antwort
      0
      • paul53P paul53

        @hualex sagte: einen Tipp

        JSON.parse(val)['ADS1115-48'].A0
        
        H Offline
        H Offline
        hualex
        schrieb am zuletzt editiert von
        #4

        @paul53 said in Problem beim Parsen eines JSON-Objektes aus Tasmota (MQTT):

        JSON.parse(val)['ADS1115-48'].A0

        Habe meine Platine kurz umgebaut und: Das funktioniert! Vielen lieben Dank!!!

        Jetzt wüsste ich nur gern, warum... Was macht ['xxx']?

        paul53P 1 Antwort Letzte Antwort
        0
        • H hualex

          @paul53 said in Problem beim Parsen eines JSON-Objektes aus Tasmota (MQTT):

          JSON.parse(val)['ADS1115-48'].A0

          Habe meine Platine kurz umgebaut und: Das funktioniert! Vielen lieben Dank!!!

          Jetzt wüsste ich nur gern, warum... Was macht ['xxx']?

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #5

          @hualex sagte: Was macht ['xxx']?

          Das ist eine alternative Schreibweise zur Punkt-Notation, die erforderlich ist, wenn unzulässige Zeichen enthalten sind. Man kann auch schreiben

          JSON.parse(val)['ADS1115-48']['A0']
          

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

          H 1 Antwort Letzte Antwort
          0
          • paul53P paul53

            @hualex sagte: Was macht ['xxx']?

            Das ist eine alternative Schreibweise zur Punkt-Notation, die erforderlich ist, wenn unzulässige Zeichen enthalten sind. Man kann auch schreiben

            JSON.parse(val)['ADS1115-48']['A0']
            
            H Offline
            H Offline
            hualex
            schrieb am zuletzt editiert von
            #6

            @paul53

            Das werde ich mir "sowas" von einprägen ;-)
            Nochmal ganz herzlichen Dank, du hast mir meinen Abend gerettet und mehrere Probleme gelöst.

            HomoranH 1 Antwort Letzte Antwort
            0
            • H hualex

              @paul53

              Das werde ich mir "sowas" von einprägen ;-)
              Nochmal ganz herzlichen Dank, du hast mir meinen Abend gerettet und mehrere Probleme gelöst.

              HomoranH Nicht stören
              HomoranH Nicht stören
              Homoran
              Global Moderator Administrators
              schrieb am zuletzt editiert von
              #7

              @hualex als Zusatz zu @hualex das - würde sonst als Rechenzeichen interpretiert werden können

              kein Support per PN! - Fragen im Forum stellen -
              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
              Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
              der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

              H 1 Antwort Letzte Antwort
              0
              • HomoranH Homoran

                @hualex als Zusatz zu @hualex das - würde sonst als Rechenzeichen interpretiert werden können

                H Offline
                H Offline
                hualex
                schrieb am zuletzt editiert von
                #8

                @homoran
                an das "Rechenzeichen" hatte ich noch gar nicht gedacht, macht das Verhalten von iob für mich aber plausibel(er)

                paul53P 1 Antwort Letzte Antwort
                0
                • H hualex

                  @homoran
                  an das "Rechenzeichen" hatte ich noch gar nicht gedacht, macht das Verhalten von iob für mich aber plausibel(er)

                  paul53P Offline
                  paul53P Offline
                  paul53
                  schrieb am zuletzt editiert von
                  #9

                  @hualex sagte: das Verhalten von iob

                  Das Verhalten von Javascript.

                  Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
                  Produktiv: Asus PN 42 / N100 / 8 GB / 500 GB

                  1 Antwort Letzte Antwort
                  0
                  • H hualex

                    Ich habe folgende Frage:
                    An welche Stelle (welcher Adapter ist hier zuständig) gehört folgender Fehler adressiert/gemeldet?

                    Kurze Beschreibung:
                    Ich verarbeite Sensordaten aus Tasmota per Objekte.Alias (nicht Alias-Manager) weiter, indem ich die Sensorwerte aus dem jeweiligen JSON-Objekt der MQTT-Message parse. (z.B. so: JSON.parse(val).ADS1115.A0) das funktioniert soweit super, solange nur ein Sensor gleichen Typs existiert. Ab dem 2. Sensor sendet Tasmota zur Identifizierung des entsprechenden Sensors im Property die I2C-Adresse des Sensors mit, also statt ADS1115 nun z.B. ADS1115-48 (0x48 ist die I2C-Adresse). Dummerweise kann man den Sensornamen in Tasmota nicht ohne Eingriffe im Quellcode ändern (soweit mir bekannt). Iobroker wiederum stößt sich (wahrscheinlich) am Bindestrich im Property.
                    Wenn ich die Lesefunktion unter Objekte/Alias nun auf das korrekte Property ADS1115-48.A0 ändere, schlägt das Lesen des Wertes fehl.

                    das steht im Protokoll (Pfad gekürzt):

                    2024-05-16 17:31:24.315 - error: admin.0 (607) Invalid read function for "alias.0.xxxx.Zisterne_Messwert": "JSON.parse(val).ADS1115-48.A0" => Invalid or unexpected token
                    2024-05-16 17:31:24.315 - error: javascript.0 (637) Invalid read function for "alias.0.xxxx.Zisterne_Messwert": "JSON.parse(val).ADS1115-48.A0" => Invalid or unexpected token

                    Wohin muss ich den Fehler melden? JS-Adapter? Admin-Adapter? Welcher Bereich in Iobroker ist für das Parsen in den Alias-Objekten zuständig.

                    Vielleicht kann mir jemand einen Tipp geben, Vielen Dank schon mal.

                    HomoranH Nicht stören
                    HomoranH Nicht stören
                    Homoran
                    Global Moderator Administrators
                    schrieb am zuletzt editiert von Homoran
                    #10

                    @hualex sagte in Problem beim Parsen eines JSON-Objektes aus Tasmota (MQTT):

                    "alias.0.xxxx.Zisterne_Messwert": "JSON.parse(val).ADS1115-48.A0"

                    du hattest hier ja weder eckige Klammern noch Hochkommata drin

                    kein Support per PN! - Fragen im Forum stellen -
                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
                    Das Forum freut sich über eine Spende. Benutzt dazu den Spendenbutton oben rechts. Danke!
                    der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

                    H 1 Antwort Letzte Antwort
                    0
                    • HomoranH Homoran

                      @hualex sagte in Problem beim Parsen eines JSON-Objektes aus Tasmota (MQTT):

                      "alias.0.xxxx.Zisterne_Messwert": "JSON.parse(val).ADS1115-48.A0"

                      du hattest hier ja weder eckige Klammern noch Hochkommata drin

                      H Offline
                      H Offline
                      hualex
                      schrieb am zuletzt editiert von
                      #11

                      @homoran
                      man (ich) muss die mögliche Fehlinterpretation nur eben erst einmal erkennen ;-) und wissen, wie man dem begegnet... ich habe heute gelernt, dass hinter einem fx... nicht nur ein schnöder Pfad zum gewünschten Wert erwartet werden kann.
                      Vielen Dank nochmal an euch für die schnelle und lehrreiche Hilfe!

                      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

                      508

                      Online

                      32.9k

                      Benutzer

                      83.2k

                      Themen

                      1.3m

                      Beiträge
                      Community
                      Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                      ioBroker Community 2014-2026
                      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