Ankündigung

Einklappen
Keine Ankündigung bisher.

JSON Extractor LBS19001208 - Frage

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

    JSON Extractor LBS19001208 - Frage



    Was muss ich in dem genannten LBS (vonjonofe ) eintragen, damit ich die einzelnen Channels übersichtlich aufgelistet bekomm?
    Ich habe da nicht wirklich durchgeblickt

    Bildschirmfoto 2019-08-23 um 22.10.12.png
    Zuletzt geändert von shortyle; 23.08.2019, 21:14.
    Gruß David

    #2
    Inhalt von E1 wäre schon hilfreich...
    Gruß
    Michael

    Kommentar


      #3
      verdammt...das wollte ich doch noch ergänzen

      hier der komplette JSON

      Code:
      {"system":{"time":"1566592861","unit":"C","soc":59,"charge":false,"rssi":31,"online":0},"channel":[{"number":1,"name":"Kanal 1","typ":3,"temp":24.90,"min":10.00,"max":200.00,"alarm":0,"color":"#0C4C88"},{"number":2,"name":"Kanal 2","typ":3,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#22B14C"},{"number":3,"name":"Kanal 3","typ":3,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#EF562D"},{"number":4,"name":"Kanal 4","typ":0,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#FFC100"},{"number":5,"name":"Kanal 5","typ":0,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#A349A4"},{"number":6,"name":"Kanal 6","typ":0,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#804000"},{"number":7,"name":"Kanal 7","typ":3,"temp":24.60,"min":10.00,"max":50.00,"alarm":0,"color":"#5587A2"},{"number":8,"name":"Kanal 8","typ":0,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#5C7148"}],"pitmaster":{"type":["off","manual","auto"],"pm":[{"id":0,"channel":1,"pid":0,"value":0,"set":50.00,"typ":"off","set_color":"#ff0000","value_color":"#000000"}]}}
      Gruß David

      Kommentar


        #4
        Ich würde 8 JSON-Extractors nehmen und so konfigurieren

        E1 = JSON String Input
        E2 = channel|x|number
        E3 = channel|x|name
        E4 = channel|x|typ
        E5 = channel|x|temp
        E6 = channel|x|
        E7 = channel|x|max
        E8 = channel|x|alarm
        E9 = channel|x|color

        x ersetzt du dann jeweils durch die Channelnummer 0-7.

        Kommentar


          #5
          Vielen Dank für die Hilfe.
          Wir kommen der Sache auch schon näher. Nur leider werden die Werte nicht korrekt herausgelesen.

          An allen Extractoren steht bei A1 - MATCH Output5
          An A2 beginnt er beim ersten Extractor (ID 2070 - eigentlich für Kanal1) mit Kanal2 und die restlichen Werte sind dann auch von Kanal2 obwohl ich bei E1-E6 dem Schema folgte channel|1|...


          Bildschirmfoto 2019-08-24 um 09.32.44.png


          hier der aktuelle JSON
          Code:
          {"system":{"time":"1566632764","unit":"C","soc":60,"charge":false,"rssi":-55,"online":0},"channel":[{"number":1,"name":"Kanal 1","typ":3,"temp":24.90,"min":10.00,"max":200.00,"alarm":0,"color":"#0C4C88"},{"number":2,"name":"Kanal 2","typ":3,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#22B14C"},{"number":3,"name":"Kanal 3","typ":3,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#EF562D"},{"number":4,"name":"Kanal 4","typ":0,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#FFC100"},{"number":5,"name":"Kanal 5","typ":0,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#A349A4"},{"number":6,"name":"Kanal 6","typ":0,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#804000"},{"number":7,"name":"Kanal 7","typ":3,"temp":24.60,"min":10.00,"max":50.00,"alarm":0,"color":"#5587A2"},{"number":8,"name":"Kanal 8","typ":0,"temp":999.00,"min":10.00,"max":35.00,"alarm":0,"color":"#5C7148"}],"pitmaster":{"type":["off","manual","auto"],"pm":[{"id":0,"channel":1,"pid":0,"value":0,"set":50.00,"typ":"off","set_color":"#ff0000","value_color":"#000000"}]}}
          Gruß David

          Kommentar


            #6
            Ich denke es ist alles korrekt.
            Wie oben beschrieben musst du bei 0 anfangen. Kanal 1 hat den Index 0. So siehst du natürlich zuerst den Kanal 2.
            Die Daten, die du ausgibst scheinen ja bei fast allen Kanälen gleich zu sein.
            Bei Kanal 7 (bei dir der Kanal 6) siehst du ja die temp: 24. Hier fällt auf, dass offensichtlich das gepostete JSON nicht zum Screenshot passt, richtig? Denn dort ist die Temperatur 24.9°.

            Ich empfehle die Ansicht des JSON in einem online JSON Editor: https://jsonformatter.org/json-editor

            Screenshot from 2019-08-24 10-04-33.png

            Kommentar


              #7
              Kann es sein das du bei den E2-6 in jedem LBS 0,1,2,3 usw gemacht hast?
              In jedem LBS darfst du jeweils nur einen Kanal auswählen, also erster x=0 zweiter x=1 usw.
              Auch denke ich das du mit 1 und nicht mit 0 angefangen hast.
              Wenn es immer noch nicht geht dann Poste doch bitte auch die E2-6 von einem LBS.
              Gruß
              Michael

              Kommentar


                #8
                jonofe hatte recht. Ich hab nicht mit Channel0 begonnen. Wer bis zu Schluss ließt ist klar im Vorteil jetzt klappt es
                Gruß David

                Kommentar


                  #9
                  Hallo

                  Ich möchte die Ausgabe meines Stromzählers in brauchbare Einzelwerte umwandeln.
                  Ich denke dass es im JSON Format sein müsste kenn mich aber leider nicht besonders aus.

                  Folgendes wird vom MQTT Subscripe Client als Message ausgegeben
                  Code:
                  amis/out||{"1.8.0":19110069,"2.8.0":8518,"3.8.1":1290419,"4.8.1":6253590,"1.7.0":1244,"2.7.0":0,"3.7.0":0,"4.7.0":448,"1.128.0":0}||0||0||0
                  und folgendes als Payload
                  Code:
                  {"1.8.0":19110124,"2.8.0":8518,"3.8.1":1290419,"4.8.1":6253609,"1.7.0":1250,"2.7.0":0,"3.7.0":0,"4.7.0":453,"1.128.0":0}
                  Jetzt sollte die Kette auf die einzelnen Werte die hinter
                  "1.8.0":
                  ,"2.8.0":
                  usw stehen, zerlegt werden

                  1.JPG

                  Wäre dankbar für Hilfe

                  LG Jürgen
                  Angehängte Dateien

                  Kommentar


                    #10
                    Einfach mal die Anführungszeichen, Kommata und Doppelpunkte weglassen beim Extractor, also nur 1.8.0, 2.8.0, 3.8.1, usw.

                    Kommentar


                      #11
                      Und schon gehts auch
                      Danke dir für die Hilfe, und auch für die Bausteine

                      Kommentar


                        #12
                        der Json Formatter ist ja Weltklasse. Jetzt weiss ich endlich, wie ich Werte decodiere.... ...

                        Kommentar


                          #13
                          Habe mein Fehler schon selbst erkannt. Ab und zu hilft darüber schreiben scheinbar^^
                          Zuletzt geändert von baumhous3; 12.01.2021, 17:38.

                          Kommentar

                          Lädt...
                          X