Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Http Request / JSON

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Http Request / JSON

    This topic has been deleted. Only users with topic management privileges can see it.
    • X
      Xanaden last edited by

      Hallo

      Ich bin ganz neu in Iobroker und besitze leider keine großen programmier skills deshalb bitte ich vorab schon mal um entschuldigen

      Ich möchte Daten wie z.b. timesleft von meinem 3d Drucker Auslesen (er hat kein Octoprint).

      Ich kann den Status meines 3D-Drucker mit http://192.168.178.32/rr_status?type=3 Auslesen dort bekomme ich dann folgendes angezeigt:

      ":{"current":0,"active":0},"currentLayer":174,"currentLayerTime":8.0,"extrRaw":[21990.1,0.0],"fractionPrinted":91.6,"firstLayerDuration":1860.6,"firstLayerHeight":0.20,"printDuration":17563.9,"warmUpDuration":203.0,"timesLeft":{"file":3886.8,"filament":2347.4,"layer":9190.3}}

      Wie kann ich den daten wie fractionPrinted und oder timesLeft auslesen so das ich sie nachher im Vis anzeigen kann.?

      In Fhem ging das relativ simpel für Iobroker finde ich leider keine Anleitung dafür.

      Für kurze hilfe wäre ich sehr dankbar.

      1 Reply Last reply Reply Quote 0
      • paul53
        paul53 last edited by

        Suche mal im Forum nach request und JSON.parse. Es gibt genügend Beispiele.
        @Xanaden:

        ":{"current":0,"active":0},"currentLayer":174,"currentLayerTime":8.0,"extrRaw":[21990.1,0.0],"fractionPrinted":91.6,"firstLayerDuration":1860.6,"firstLayerHeight":0.20,"printDuration":17563.9,"warmUpDuration":203.0,"timesLeft":{"file":3886.8,"filament":2347.4,"layer":9190.3}} `
        Hier fehlt etwas am Anfang.

        1 Reply Last reply Reply Quote 0
        • X
          Xanaden last edited by

          Hallo

          Ich habe nur die letzte zeile raus kopiert. Die komplette ausgabe leutet:

          {"status":"P","coords":{"axesHomed":[1,1,1],"xyz":[84.889,279.021,0.150],"machine":[111.890,293.826,0.100],"extr":[65.2,0.0]},"currentTool":0,"params":{"atxPower":0,"fanPercent":[0.00,100.00,100.00,0.00,100.00,100.00,0.00,0.00,0.00],"speedFactor":100.00,"extrFactors":[100.00,100.00],"babystep":0.000},"seq":172,"sensors":{"probeValue":0,"fanRPM":0},"temps":{"bed":{"current":80.2,"active":80.0,"state":2,"heater":0},"current":[80.2,224.0,2000.0,2000.0,2000.0,2000.0,2000.0,2000.0],"state":[2,2,0,0,0,0,0,0],"heads":{"current":[224.0,2000.0],"active":[225.0,0.0],"standby":[225.0,0.0],"state":[2,0]},"tools":{"active":[[225.0],[0.0]],"standby":[[225.0],[0.0]]},"extra":[{"name":"MCU","temp":35.2}]},"time":21252.0,"spindle":{"current":0,"active":0},"currentLayer":1,"currentLayerTime":0.0,"extrRaw":[65.7,0.0],"fractionPrinted":0.7,"firstLayerDuration":62.2,"firstLayerHeight":0.15,"printDuration":151.2,"warmUpDuration":89.1,"timesLeft":{"file":9343.6,"filament":0.0,"layer":0.0}}

          Ich habe nur etwas gefunden wo ich mit node-red arbeiten soll jedoch lässt sich der Adapter nicht Installieren

          1 Reply Last reply Reply Quote 0
          • Jey Cee
            Jey Cee Developer last edited by

            Schau mal hier rein: viewtopic.php?t=10511

            Gesendet von meinem m8 mit Tapatalk

            1 Reply Last reply Reply Quote 0
            • paul53
              paul53 last edited by

              @Xanaden:

              Die komplette ausgabe leutet: `
              Der http://jsonviewer.stack.hu/ zeigt Dir die Struktur.

              .
              493_json_viewer.jpg

              1 Reply Last reply Reply Quote 0
              • X
                Xanaden last edited by

                Okay hab nun die halbe nacht versucht und andere threads gelesen.

                wenn ich das nun so versuche wie es in dem oben gelinkten Post verstehe müsste das ja ca so aussehen:

                createState('javascript.1.3dDrucker', "");
                
                function HoleTemp3D(){
                        var url = 'http://192.168.178.32/rr_status?type=3';
                        request(url, function (err, state, body){
                            if (body) {
                                log('Request - alles ok');
                                log(body);
                                var timesLeft = body.timesLeft.file;
                                log(timesLeft);
                                setState("javascript.1.3dDrucker", timesLeft);
                            } else {
                                log('Request meldet Fehler: ' + err, 'error');  
                            }
                
                        });
                }
                
                schedule("*/30 * * * * *" , function(){ 
                    HoleTemp3D();
                });  
                

                oder?

                als Log bekomme ich````
                09:59:19.582 [info] javascript.0 Stop script script.js.Skript1
                09:59:22.912 [info] javascript.0 Start javascript script.js.Skript1
                09:59:22.912 [info] javascript.0 script.js.Skript1: registered 0 subscriptions and 2 schedules
                09:59:31.016 [info] javascript.0 script.js.Skript1: Request - alles ok
                09:59:31.068 [error] Caught by controller[0]: at Request._callback (script.js.Skript1:32:47)
                09:59:31.070 [error] Caught by controller[1]: at Request._callback (script.js.Skript1:32:47)

                
                gibt es eine möglichkeit das in Blocky zu machen damit ich nachher (als leihe) das script nur laufen lassen kann wenn die Homematic Energie steckdose den wert XY anzeigt?
                1 Reply Last reply Reply Quote 0
                • First post
                  Last post

                Support us

                ioBroker
                Community Adapters
                Donate

                1.1k
                Online

                31.7k
                Users

                79.7k
                Topics

                1.3m
                Posts

                3
                6
                2222
                Loading More Posts
                • Oldest to Newest
                • Newest to Oldest
                • Most Votes
                Reply
                • Reply as topic
                Log in to reply
                Community
                Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                The ioBroker Community 2014-2023
                logo