NEWS
[gelöst]JSON parsen, bräuchte Hilfe
-
Super, danke Dir funktioniert.
Kannst du mir vielleicht noch sagen, wie ich den Wert auf 2 Nachkommastellen kürze?
-
wie ich den Wert auf 2 Nachkommastellen kürze? `
var tempExtruder = Math.round(100 * body.AM8.extruder[0].tempRead) / 100;
-
Na seht ihr was aus einem Vorschlag im Halbschlaf alles werden kann
Da sieht man dass Javascript nur meine 5. Fremdsprache ist - ohne zu testen gerade da viele solche Fehlerchen rein…
Aber Deine Objektdefinition ist - auch wenn es jetzt funktioniert - sagen wir mal suboptimal. Ich würde den Wert der Temperatur jedenfalls nicht einfach in einen DP mit der Bezeichnung "3dDrucker" schreiben sondern die Struktur des DP an die der Daten die vom Drucker kommen "anlehnen". Das mag aber noch als persönliche Geschmackssache durchgehen - ist nur ein Hinweis.
Was du aber auf keinen Fall machen solltest ist die Typdeklaration des Datenpunkts zu "vermatschen". So wie du den jetzt anlegst (createState('javascript.1.3dDrucker', ""); ist der Typ zwar überhaupt nicht deklariert, wird also vermutlich "variabel" und dann gibst du als Defaultwert auch noch einen String an (""), also zumindest der Datentyp 'number' sollte für einen Zahlenwert schon definiert sein und als Default wenigstens 0.
Das mag zwar so wie du das jetzt hast funktionieren und für den Moment auch keine Probleme machen, aber erstens ist es programmiertechnischer 'Murks' und zweitens wird es dir schmerzlich auf die Füße fallen wenn du die Daten mal historisieren und vielleicht in einem Diagramm auswerten willst.
Aber ist nur ein Hinweis - ich mache auch manchmal gerne selbst die Fehler um dann aus Schmerzen zu lernen
-
> Aber Deine Objektdefinition ist - auch wenn es jetzt funktioniert - sagen wir mal suboptimal
Das war alles nur mal zum testen ob es überhaupt funktioniert. Natürlich habe ich jetzt eine Struktur drin z.B. für Extruder, Bett usw. und auch für 2 Drucker. Wie gesagt, der Datenpunkt war nur zum testen, deshalb lief es auch in der zweiten Javascript Instanz.
-
Na dann ist ja alles Bestens
-
Ich hoffe das Skript gibt es dann hier [emoji847]
Oder gar einen Repetier Adapter [emoji6]
-
Script kann ich mal posten wenn ich es fertig hab, da sollen noch paar mehr Sachen rein.
Adapter wäre cool, bin ich aber leider der falsche Ansprechpartner für, da hab ich zu wenig Kenntnisse mit Javascript.
-
Json parse geht mit dem Systeminfo Adapter andere dafür sind nicht geplant.
Also entweder den oder JavaScript
–-----------------------
Send from mobile device
Das schöne ios hat Auto Korrektur zum k****
Wer Schreibfehler findet darf sie behalten oder auf eBay verkaufen, mindest Umsatz 10% für die community
-
Json parse geht mit dem Systeminfo Adapter andere dafür sind nicht geplant.
Also entweder den oder JavaScript `
Nee, er meinte ja einen extra Adapter für die Repetier Server Software für den 3d Drucker
-
Hey,
leider muss ich nochmal nachfragen, da ich jetzt noch ein zweites JSON hab, bei dem ich Zeit und Status in Prozent lesen könnte. Funktioniert nur nicht so wie ich dachte.
[{"active":true,"analysed":1,"done":0.26915197043345518,"job":"Halter_rechts.","jobid":4,"linesSend":67,"name":"AM8","ofLayer":146,"online":1,"pauseState":0,"paused":false,"printTime":4266.7126891287853,"printedTimeComp":412.82550469314651,"slug":"AM8","start":1515704149,"totalLines":24893}]
Das ist das JSON und ich brauche "done", "printTime" und "printedTimeComp". Ok, dachte ich mir dann müsste "done" ja "body.done" sein, stimmt aber anscheinend nicht, der Datenpunkt wird nicht gefüllt. Leider verstehe ich nicht warum. Helft mir bitte mal auf die Sprünge.
-
-
Danke paul53, ich wusste irgendwo kommt die [0] hin, nur war mir nicht klar dass sie an "body" kommt. Wieder ein Stück dazu gelernt.
-
Script kann ich mal posten wenn ich es fertig hab, da sollen noch paar mehr Sachen rein.
Adapter wäre cool, bin ich aber leider der falsche Ansprechpartner für, da hab ich zu wenig Kenntnisse mit Javascript. ` Läuft das Skript und willst du es veröffentlichen?
Seit diesem WE läuft mein repetiersever [emoji16]
-
Da wäre auch sehr intressiert dran.
Am liebsten sogar ein Adapter.
-
Würde mich auch sehr darüber freuen
-
Da der Themen Owner sich nicht meldet vielleicht kann uns ja ein Experte mal erklären wie wir/ich vorgen muss damit das funktioniert!
Lieb Guck
-
Keiner da der etwas hilfe geben kann?
-
damit das funktioniert! `
Damit was funktioniert ? Habe gerade meine Glaskugel verlegt. -
Zu erklärung,
wir/ich haben einen Repetier server am laufen, diesen möchten wir gerne mit in IObroker bringen. der Themen Owner hat ein Script dafür geschrieben.
Leider meldet er sich nicht mehr, um mal diesen Script zu veröffentlichen.
Wie muss ich vorgehen damit ich so ein script schreiben kann? Ich will es gerne lernen!
-
Ich (als JS-Legastheniker) würde den Parser-Adapter dazu verwenden.
Habe gestern auch schon etwas mit dem Code, der anfangs gepostet wurde versucht, sah recht nett aus.
Ich bräuchte nur wesentlich mehr Informationen.
Wie sieht bei dir eine solche Antwort aus?
- hier bitte den Code
Welche Daten willst du haben?
- bitte anhend der Antwort mit den dort enthaltenen Werten.
Gruß
Rainer