Ankündigung

Einklappen

Serverwartung 21.2.



Am 21.2. im Laufe des späten Abends wird eine Serverwartung durchgeführt. Das Forum ist dadurch für gut zwei Stunden nicht erreichbar.
Es wird eine Wartungsseite geschaltet.

Mehr anzeigen
Weniger anzeigen

Repetier Drucker auslesen (JSON)

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

    Repetier Drucker auslesen (JSON)

    Hallo,

    versuche gerade von meinem Drucker Server Werte auszulesen, bekomme aber nix raus.

    JSON von meinem Server (http://192.168.1.227:3344/printer/list):
    Code:
     {"data":[{"active":true,"analysed":1,"done":27.660875324807662,"job":"1_Z_Rod_Holder_Right.","jobid":1,"linesSend":76006,"name":"ANET","ofLayer":150,"online":1,"pauseState":0,"paused":false,"printTime":30866.774395069377,"printedTimeComp":10672.231792928571,"slug":"ANET2","start":1519923701,"totalLines":274778}]}
    Openhab wirft immer einen Fehler raus, keine Ahnung warum.
    LOG:
    Code:
    2018-03-01 21:22:22.722 [WARN ] [ab.binding.http.internal.HttpBinding] - Transformation 'JSONPATH($.data.done)' threw an exception. [response={"data":[{"active":true,"analysed":1,"done":29.242879706526722,"job":"1_Z_Rod_Holder_Right.","jobid":1,"linesSend":80353,"name":"ANET","ofLayer":150,"online":1,"pauseState":0,"paused":false,"printTime":30866.774395069377,"printedTimeComp":11126.476415411827,"slug":"ANET2","start":1519923701,"totalLines":274778}]}]
    
    org.openhab.core.transform.TransformationException: Invalid path '$.data.done' in '{"data":[{"active":true,"analysed":1,"done":29.242879706526722,"job":"1_Z_Rod_Holder_Right.","jobid":1,"linesSend":80353,"name":"ANET","ofLayer":150,"online":1,"pauseState":0,"paused":false,"printTime":30866.774395069377,"printedTimeComp":11126.476415411827,"slug":"ANET2","start":1519923701,"totalLines":274778}]}'

    ITEM:
    Code:
    Number RepetierFortschritt "Fertig [%s]"    {http="<[http://192.168.1.227:3344/printer/list:10000:JSONPATH($.data.done)]"}
    bin ratlos
    Zuletzt geändert von noxx; 01.03.2018, 21:27.

    #2
    Probier mal
    Code:
    JSONPATH($.data[0].done)
    Deine Struktur gibt für data ein Array zurück, erkennbar an den []

    Andreas

    Kommentar


      #3
      danke. hat geklappt. weiß einer wie man rundet? bekomme als Wert
      0.011014530000826011
      würde gerne auf 1 Kommastelle runden

      Kommentar


        #4
        Wenn es nur um die Anzeige geht, kannst Du das mit [%.1f] als Formatierung erreichen. wenn der Wert im Number Item gerundet gespeichert werden soll, musst Du auf ein kleines Java Script ausweichen, welches sowohl die JSON-Auswertung als auch das Runden übernimmt.

        Kommentar


          #5
          Falls Du es direkt als Prozentwert anzeigen lassen willst, dann nutze [%.1f %%]

          Kommentar

          Lädt...
          X