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

NEWS

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    11
    1
    335

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    24
    1
    1.6k

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

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

Geplant Angeheftet Gesperrt Verschoben Einsteigerfragen
11 Beiträge 3 Kommentatoren 931 Aufrufe 1 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.
  • 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: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

    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: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          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 - es gibt fast nichts, was nicht auch für andere interessant ist.

              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

              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: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

                  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 - es gibt fast nichts, was nicht auch für andere interessant ist.

                    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                    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
                      Antworten
                      • In einem neuen Thema antworten
                      Anmelden zum Antworten
                      • Älteste zuerst
                      • Neuste zuerst
                      • Meiste Stimmen


                      Support us

                      ioBroker
                      Community Adapters
                      Donate

                      595

                      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