NEWS
Test Adapter OctoPrint
-
@negalein
bitte sehr ... (geht sicher noch eleganter, bin für jede Anregung dankbar)
Die Datenpunkte unter javascript.0 händisch anlegen und los geht´s (ip vom octopi auch noch einfügen)!on({id: 'octoprint.0.printjob.file.name', change: "any"}, async function (obj) { var octo_thumb=''; var thumb_file=''; if ((obj.state.val)!== null) { thumb_file=getState("octoprint.0.printjob.file.origin").val +"_" + obj.state.val.replace(".gcode",""); if (existsState("octoprint.0.files." + thumb_file + ".thumbnail_url")) { octo_thumb= getState("octoprint.0.files." + thumb_file + ".thumbnail_url").val; }; }; setState("javascript.0.3D-Drucker.dir_thumb", thumb_file, true); setState("javascript.0.3D-Drucker.thumbnail", octo_thumb, true); });@latzi erstmal thnx! :+1:
allerdings bekomm ich immer warn.warn javascript.0 (615) at Object.<anonymous> (script.js.common.Diverses.Octothumb:6:45)script angepasst, IMHO richtig...
on({id: 'octoprint.0.printjob.file.name', change: "any"}, async function (obj) { var octo_thumb=''; var thumb_file=''; if ((obj.state.val)!== null) { thumb_file=getState("octoprint.0.printjob.file.origin").val +"_" + obj.state.val.replace(".gcode",""); octo_thumb= "http://192.168.2.59/" + getState("octoprint.0.files." + thumb_file + ".thumbnail_url").val; } setState("javascript.0.Octothumb.dir_thumb", thumb_file, true); setState("javascript.0.Octothumb.thumbnail", octo_thumb, true); });DPs sind da:

in thumbnail hab ich allerdings:http://192.168.2.59/nullverschluckt nach der IP alles...
zu bekloppt für JS... -
@latzi erstmal thnx! :+1:
allerdings bekomm ich immer warn.warn javascript.0 (615) at Object.<anonymous> (script.js.common.Diverses.Octothumb:6:45)script angepasst, IMHO richtig...
on({id: 'octoprint.0.printjob.file.name', change: "any"}, async function (obj) { var octo_thumb=''; var thumb_file=''; if ((obj.state.val)!== null) { thumb_file=getState("octoprint.0.printjob.file.origin").val +"_" + obj.state.val.replace(".gcode",""); octo_thumb= "http://192.168.2.59/" + getState("octoprint.0.files." + thumb_file + ".thumbnail_url").val; } setState("javascript.0.Octothumb.dir_thumb", thumb_file, true); setState("javascript.0.Octothumb.thumbnail", octo_thumb, true); });DPs sind da:

in thumbnail hab ich allerdings:http://192.168.2.59/nullverschluckt nach der IP alles...
zu bekloppt für JS... -
@da_woody
hast den DP octoprint.0.files.local_Düse.thumbnail_url?
Scheint, als ob der nicht existiert oder nichts Vernünftiges darin enthalten ist -
@latzi nope, der ist nicht vorhanden...
in octo seh ich das thumb aber... generiert wirds also. in cura ja auch aktiviert.

@da_woody
sehr seltsam!
Ich traue mich fast nicht zu fragen - im Adapter hast du das Plugin angehakt?@da_woody sagte in Test Adapter OctoPrint:
@latzi nope, der ist nicht vorhanden...
Das erklärt, warum nach der IP "null" kommt - er findet den Inhalt des nicht vorhanden DP´s nicht.
-
@da_woody
sehr seltsam!
Ich traue mich fast nicht zu fragen - im Adapter hast du das Plugin angehakt?@da_woody sagte in Test Adapter OctoPrint:
@latzi nope, der ist nicht vorhanden...
Das erklärt, warum nach der IP "null" kommt - er findet den Inhalt des nicht vorhanden DP´s nicht.
@latzi sagte in Test Adapter OctoPrint:
Ich traue mich fast nicht zu fragen
bei mir depp musst du sowas fragen! :D
auf die idea wär ich nicht gekommen...
allerdings ist das mit dem plugin auch seltsam. mit dem cura thumbnails gehts nicht. musste slicer thumbnails insten, dann hab ich den DP. -
@latzi sagte in Test Adapter OctoPrint:
Ich traue mich fast nicht zu fragen
bei mir depp musst du sowas fragen! :D
auf die idea wär ich nicht gekommen...
allerdings ist das mit dem plugin auch seltsam. mit dem cura thumbnails gehts nicht. musste slicer thumbnails insten, dann hab ich den DP.@da_woody sagte in Test Adapter OctoPrint:
cura thumbnails gehts nicht
Ja, weil Slicer Thumbnail im Adapter ist ;)
War ja mein Wunsch :stuck_out_tongue_closed_eyes: -
@latzi sagte in Test Adapter OctoPrint:
Ich traue mich fast nicht zu fragen
bei mir depp musst du sowas fragen! :D
auf die idea wär ich nicht gekommen...
allerdings ist das mit dem plugin auch seltsam. mit dem cura thumbnails gehts nicht. musste slicer thumbnails insten, dann hab ich den DP. -
@haus-automatisierung sagte in Test Adapter OctoPrint:
Ich bekomme im Printjob keine Angaben über das Thumbnail
Das ist schade, dass das nicht möglich ist.
An alle und speziell @Negalein ;-)
Ich habe hier ein JS-Script zusammengeschustert, welches die Octoprint-Zeiten in HH:MM:SS umsetzt,
sowie die Gesamtdruckdauer und Fertigstellungszeit erstellt.
(Fertigstellungszeit enthält auch das Datum, weil der Druckjob ja z.B. erst am nächsten Tag fertig werden könnte).Sieht in meinem VIS z.B. so aus:

Dazu werden unter javascript.0.OctoPi insges. 4 Datenpunkte (EndeZeit, Gesamtzeit, Printzeit, Restzeit) beim ersten Start des Scriptes angelegt, deren Inhalte (Strings) im VIS eingebunden werden können

evtl. kann das ja außer @Negalein noch jemand gebrauchen?
//##################################################################### // Octoprint-Zeitberechnungen //##################################################################### // Variablen aus Octoprint-Adapter uebernehmen const anycubic_timedone = 'octoprint.0.printjob.progress.printtime' const anycubic_timeleft = 'octoprint.0.printjob.progress.printtime_left' const anycubic_completion = 'octoprint.0.printjob.progress.completion' // Eigene Datenpunkte unter "javascript.0.OctoPi." erzeugen createState('javascript.0.OctoPi.Printzeit', { name: 'Druckdauer', desc: 'Druckdauer', type: 'string' }); createState('javascript.0.OctoPi.Restzeit', { name: 'Restzeit', desc: 'Restzeit', type: 'string' }); createState('javascript.0.OctoPi.Gesamtzeit', { name: 'Gesamtzeit', desc: 'Gesamtdauer des Druckjobs', type: 'string', }); createState( 'javascript.0.OctoPi.EndeZeit', { name: 'EndeZeit', desc: 'Uhrzeit Fertigstellung des Druckes', type: 'string' }); //____________________________________________________________________________________________________ // Umrechnung der Druckzeiten von Sekunden in HH:MM:SS //##################################################### function umrechnung() { var time_left = getState("octoprint.0.printjob.progress.printtime_left").val; var job_time = getState('octoprint.0.printjob.progress.printtime').val; var duration = time_left + job_time; // Hours var hours_restzeit = Math.floor( time_left / 3600 ); var hours_printzeit = Math.floor( job_time / 3600 ); var hours_duration = Math.floor( duration / 3600 ); // Fuehrende 0 notwendig ? if ( hours_restzeit < 10 ){var std_restzeit = "0" + String(hours_restzeit);} else var std_restzeit = String(hours_restzeit) if ( hours_printzeit < 10 ){var std_printzeit= "0" + String(hours_printzeit); } else var std_printzeit = String(hours_printzeit) if ( hours_duration < 10 ){var std_duration= "0" + String(hours_duration); } else var std_duration = String(hours_duration) // Minutes var minutes_restzeit = Math.floor( (time_left%3600) / 60 ); var minutes_printzeit = Math.floor( (job_time%3600) / 60 ); var minutes_duration = Math.floor( (duration%3600) / 60 ); if ( minutes_restzeit < 10 ){var min_restzeit = "0" + String(minutes_restzeit);} else var min_restzeit = String(minutes_restzeit) if ( minutes_printzeit < 10 ){var min_printzeit= "0" + String(minutes_printzeit); } else var min_printzeit = String(minutes_printzeit) if ( minutes_duration < 10 ){var min_duration= "0" + String(minutes_duration); } else var min_duration = String(minutes_duration) // Seconds var seconds_restzeit = Math.floor( time_left%60 ); var seconds_printzeit = Math.floor( job_time%60 ); var seconds_duration = Math.floor( duration%60 ); if ( seconds_restzeit < 10 ){var sec_restzeit = "0" + String(seconds_restzeit);} else var sec_restzeit = String(seconds_restzeit) if ( seconds_printzeit < 10 ){var sec_printzeit= "0" + String(seconds_printzeit); } else var sec_printzeit = String(seconds_printzeit) if ( seconds_duration < 10 ){var sec_duration= "0" + String(seconds_duration); } else var sec_duration = String(seconds_duration) // Zeiten in HH:MM:SS format var restzeit = std_restzeit + ':' + min_restzeit + ':' + sec_restzeit; var printzeit = std_printzeit + ':' + min_printzeit + ':' + sec_printzeit; var dauer = std_duration + ':' + min_duration + ':' + sec_duration; //console.log("Restzeit:" + restzeit + "__" + " Printzeit:" + printzeit + "__" +" Dauer:" + dauer); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Restzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Restzeit", restzeit, true); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Printzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Printzeit", printzeit, true); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Gesamtzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Gesamtzeit", dauer, true); } //____________________________________________________________________________________________________ // Druck-Ende Uhrzeit berechnen // //################################# function endezeit(){ var time_left = getState("octoprint.0.printjob.progress.printtime_left").val; var sekunden_restzeit = time_left; // Restzeit in Sekunden aus Octopi if(time_left == null || time_left == 0 ){ setState("javascript.0.OctoPi.EndeZeit", '---', true) }; var Zeit = new Date(); //log('jetzt: ' + Zeit); var z0_neu = Zeit.getSeconds()+ sekunden_restzeit; var z_neu = Zeit.setSeconds(z0_neu); var ZeitNeu = new Date(z_neu); //console.log('Endezeit: ' + ZeitNeu); var h_ende = ZeitNeu.getHours(); var m_ende = ZeitNeu.getMinutes(); var s_ende = ZeitNeu.getSeconds(); var tag_ende = ZeitNeu.getDate(); var months = ["Jan", "Feb", "Mrz", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"]; var monat_ende = months[ZeitNeu.getMonth()]; var EndeZeit = tag_ende + '.' + monat_ende + ' ' + h_ende + ':' + m_ende + ':' + s_ende; //console.log('EndeZeit: ' + EndeZeit); // Führende 0 hinzufügen und als String wandeln if ( tag_ende < 10 ){var endtag = "0" + String(tag_ende);} else var endtag = String(tag_ende) if ( h_ende < 10 ){var endstunde = "0" + String(h_ende);} else var endstunde = String(h_ende) if ( m_ende < 10 ){var endminute = "0" + String(m_ende);} else var endminute = String(m_ende) if ( s_ende < 10 ){var endsekunde = "0" + String(s_ende);} else var endsekunde = String(s_ende) var EndeZeit = endtag + '. ' + monat_ende + ' ' + endstunde + ':' + endminute + ':' + endsekunde; //console.log('EndeZeit: ' + EndeZeit); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.EndeZeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.EndeZeit", EndeZeit, true); } // end of function EndeZeit() //____________________________________________________________________________________________________ //Druckfortschritt abfragen on({id: anycubic_timeleft , change: 'lt'}, function() { umrechnung() endezeit() });Gruß
Jörg -
@da_woody sagte in Test Adapter OctoPrint:
cura thumbnails gehts nicht
Ja, weil Slicer Thumbnail im Adapter ist ;)
War ja mein Wunsch :stuck_out_tongue_closed_eyes: -
An alle und speziell @Negalein ;-)
Ich habe hier ein JS-Script zusammengeschustert, welches die Octoprint-Zeiten in HH:MM:SS umsetzt,
sowie die Gesamtdruckdauer und Fertigstellungszeit erstellt.
(Fertigstellungszeit enthält auch das Datum, weil der Druckjob ja z.B. erst am nächsten Tag fertig werden könnte).Sieht in meinem VIS z.B. so aus:

Dazu werden unter javascript.0.OctoPi insges. 4 Datenpunkte (EndeZeit, Gesamtzeit, Printzeit, Restzeit) beim ersten Start des Scriptes angelegt, deren Inhalte (Strings) im VIS eingebunden werden können

evtl. kann das ja außer @Negalein noch jemand gebrauchen?
//##################################################################### // Octoprint-Zeitberechnungen //##################################################################### // Variablen aus Octoprint-Adapter uebernehmen const anycubic_timedone = 'octoprint.0.printjob.progress.printtime' const anycubic_timeleft = 'octoprint.0.printjob.progress.printtime_left' const anycubic_completion = 'octoprint.0.printjob.progress.completion' // Eigene Datenpunkte unter "javascript.0.OctoPi." erzeugen createState('javascript.0.OctoPi.Printzeit', { name: 'Druckdauer', desc: 'Druckdauer', type: 'string' }); createState('javascript.0.OctoPi.Restzeit', { name: 'Restzeit', desc: 'Restzeit', type: 'string' }); createState('javascript.0.OctoPi.Gesamtzeit', { name: 'Gesamtzeit', desc: 'Gesamtdauer des Druckjobs', type: 'string', }); createState( 'javascript.0.OctoPi.EndeZeit', { name: 'EndeZeit', desc: 'Uhrzeit Fertigstellung des Druckes', type: 'string' }); //____________________________________________________________________________________________________ // Umrechnung der Druckzeiten von Sekunden in HH:MM:SS //##################################################### function umrechnung() { var time_left = getState("octoprint.0.printjob.progress.printtime_left").val; var job_time = getState('octoprint.0.printjob.progress.printtime').val; var duration = time_left + job_time; // Hours var hours_restzeit = Math.floor( time_left / 3600 ); var hours_printzeit = Math.floor( job_time / 3600 ); var hours_duration = Math.floor( duration / 3600 ); // Fuehrende 0 notwendig ? if ( hours_restzeit < 10 ){var std_restzeit = "0" + String(hours_restzeit);} else var std_restzeit = String(hours_restzeit) if ( hours_printzeit < 10 ){var std_printzeit= "0" + String(hours_printzeit); } else var std_printzeit = String(hours_printzeit) if ( hours_duration < 10 ){var std_duration= "0" + String(hours_duration); } else var std_duration = String(hours_duration) // Minutes var minutes_restzeit = Math.floor( (time_left%3600) / 60 ); var minutes_printzeit = Math.floor( (job_time%3600) / 60 ); var minutes_duration = Math.floor( (duration%3600) / 60 ); if ( minutes_restzeit < 10 ){var min_restzeit = "0" + String(minutes_restzeit);} else var min_restzeit = String(minutes_restzeit) if ( minutes_printzeit < 10 ){var min_printzeit= "0" + String(minutes_printzeit); } else var min_printzeit = String(minutes_printzeit) if ( minutes_duration < 10 ){var min_duration= "0" + String(minutes_duration); } else var min_duration = String(minutes_duration) // Seconds var seconds_restzeit = Math.floor( time_left%60 ); var seconds_printzeit = Math.floor( job_time%60 ); var seconds_duration = Math.floor( duration%60 ); if ( seconds_restzeit < 10 ){var sec_restzeit = "0" + String(seconds_restzeit);} else var sec_restzeit = String(seconds_restzeit) if ( seconds_printzeit < 10 ){var sec_printzeit= "0" + String(seconds_printzeit); } else var sec_printzeit = String(seconds_printzeit) if ( seconds_duration < 10 ){var sec_duration= "0" + String(seconds_duration); } else var sec_duration = String(seconds_duration) // Zeiten in HH:MM:SS format var restzeit = std_restzeit + ':' + min_restzeit + ':' + sec_restzeit; var printzeit = std_printzeit + ':' + min_printzeit + ':' + sec_printzeit; var dauer = std_duration + ':' + min_duration + ':' + sec_duration; //console.log("Restzeit:" + restzeit + "__" + " Printzeit:" + printzeit + "__" +" Dauer:" + dauer); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Restzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Restzeit", restzeit, true); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Printzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Printzeit", printzeit, true); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Gesamtzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Gesamtzeit", dauer, true); } //____________________________________________________________________________________________________ // Druck-Ende Uhrzeit berechnen // //################################# function endezeit(){ var time_left = getState("octoprint.0.printjob.progress.printtime_left").val; var sekunden_restzeit = time_left; // Restzeit in Sekunden aus Octopi if(time_left == null || time_left == 0 ){ setState("javascript.0.OctoPi.EndeZeit", '---', true) }; var Zeit = new Date(); //log('jetzt: ' + Zeit); var z0_neu = Zeit.getSeconds()+ sekunden_restzeit; var z_neu = Zeit.setSeconds(z0_neu); var ZeitNeu = new Date(z_neu); //console.log('Endezeit: ' + ZeitNeu); var h_ende = ZeitNeu.getHours(); var m_ende = ZeitNeu.getMinutes(); var s_ende = ZeitNeu.getSeconds(); var tag_ende = ZeitNeu.getDate(); var months = ["Jan", "Feb", "Mrz", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"]; var monat_ende = months[ZeitNeu.getMonth()]; var EndeZeit = tag_ende + '.' + monat_ende + ' ' + h_ende + ':' + m_ende + ':' + s_ende; //console.log('EndeZeit: ' + EndeZeit); // Führende 0 hinzufügen und als String wandeln if ( tag_ende < 10 ){var endtag = "0" + String(tag_ende);} else var endtag = String(tag_ende) if ( h_ende < 10 ){var endstunde = "0" + String(h_ende);} else var endstunde = String(h_ende) if ( m_ende < 10 ){var endminute = "0" + String(m_ende);} else var endminute = String(m_ende) if ( s_ende < 10 ){var endsekunde = "0" + String(s_ende);} else var endsekunde = String(s_ende) var EndeZeit = endtag + '. ' + monat_ende + ' ' + endstunde + ':' + endminute + ':' + endsekunde; //console.log('EndeZeit: ' + EndeZeit); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.EndeZeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.EndeZeit", EndeZeit, true); } // end of function EndeZeit() //____________________________________________________________________________________________________ //Druckfortschritt abfragen on({id: anycubic_timeleft , change: 'lt'}, function() { umrechnung() endezeit() });Gruß
Jörg -
@negalein sagte in Test Adapter OctoPrint:
War ja mein Wunsch
kloa, nur weil du jetzt mitm prusa werkelst... :D cura rulez!
@da_woody sagte in Test Adapter OctoPrint:
kloa, nur weil du jetzt mitm prusa werkelst... cura rulez!
eieieiei - und ich Blödel habe im obigen script ein paar mal den Begiff "anycubic" verwendet .....
Asche auf mein Haupt :stuck_out_tongue_winking_eye: -
An alle und speziell @Negalein ;-)
Ich habe hier ein JS-Script zusammengeschustert, welches die Octoprint-Zeiten in HH:MM:SS umsetzt,
sowie die Gesamtdruckdauer und Fertigstellungszeit erstellt.
(Fertigstellungszeit enthält auch das Datum, weil der Druckjob ja z.B. erst am nächsten Tag fertig werden könnte).Sieht in meinem VIS z.B. so aus:

Dazu werden unter javascript.0.OctoPi insges. 4 Datenpunkte (EndeZeit, Gesamtzeit, Printzeit, Restzeit) beim ersten Start des Scriptes angelegt, deren Inhalte (Strings) im VIS eingebunden werden können

evtl. kann das ja außer @Negalein noch jemand gebrauchen?
//##################################################################### // Octoprint-Zeitberechnungen //##################################################################### // Variablen aus Octoprint-Adapter uebernehmen const anycubic_timedone = 'octoprint.0.printjob.progress.printtime' const anycubic_timeleft = 'octoprint.0.printjob.progress.printtime_left' const anycubic_completion = 'octoprint.0.printjob.progress.completion' // Eigene Datenpunkte unter "javascript.0.OctoPi." erzeugen createState('javascript.0.OctoPi.Printzeit', { name: 'Druckdauer', desc: 'Druckdauer', type: 'string' }); createState('javascript.0.OctoPi.Restzeit', { name: 'Restzeit', desc: 'Restzeit', type: 'string' }); createState('javascript.0.OctoPi.Gesamtzeit', { name: 'Gesamtzeit', desc: 'Gesamtdauer des Druckjobs', type: 'string', }); createState( 'javascript.0.OctoPi.EndeZeit', { name: 'EndeZeit', desc: 'Uhrzeit Fertigstellung des Druckes', type: 'string' }); //____________________________________________________________________________________________________ // Umrechnung der Druckzeiten von Sekunden in HH:MM:SS //##################################################### function umrechnung() { var time_left = getState("octoprint.0.printjob.progress.printtime_left").val; var job_time = getState('octoprint.0.printjob.progress.printtime').val; var duration = time_left + job_time; // Hours var hours_restzeit = Math.floor( time_left / 3600 ); var hours_printzeit = Math.floor( job_time / 3600 ); var hours_duration = Math.floor( duration / 3600 ); // Fuehrende 0 notwendig ? if ( hours_restzeit < 10 ){var std_restzeit = "0" + String(hours_restzeit);} else var std_restzeit = String(hours_restzeit) if ( hours_printzeit < 10 ){var std_printzeit= "0" + String(hours_printzeit); } else var std_printzeit = String(hours_printzeit) if ( hours_duration < 10 ){var std_duration= "0" + String(hours_duration); } else var std_duration = String(hours_duration) // Minutes var minutes_restzeit = Math.floor( (time_left%3600) / 60 ); var minutes_printzeit = Math.floor( (job_time%3600) / 60 ); var minutes_duration = Math.floor( (duration%3600) / 60 ); if ( minutes_restzeit < 10 ){var min_restzeit = "0" + String(minutes_restzeit);} else var min_restzeit = String(minutes_restzeit) if ( minutes_printzeit < 10 ){var min_printzeit= "0" + String(minutes_printzeit); } else var min_printzeit = String(minutes_printzeit) if ( minutes_duration < 10 ){var min_duration= "0" + String(minutes_duration); } else var min_duration = String(minutes_duration) // Seconds var seconds_restzeit = Math.floor( time_left%60 ); var seconds_printzeit = Math.floor( job_time%60 ); var seconds_duration = Math.floor( duration%60 ); if ( seconds_restzeit < 10 ){var sec_restzeit = "0" + String(seconds_restzeit);} else var sec_restzeit = String(seconds_restzeit) if ( seconds_printzeit < 10 ){var sec_printzeit= "0" + String(seconds_printzeit); } else var sec_printzeit = String(seconds_printzeit) if ( seconds_duration < 10 ){var sec_duration= "0" + String(seconds_duration); } else var sec_duration = String(seconds_duration) // Zeiten in HH:MM:SS format var restzeit = std_restzeit + ':' + min_restzeit + ':' + sec_restzeit; var printzeit = std_printzeit + ':' + min_printzeit + ':' + sec_printzeit; var dauer = std_duration + ':' + min_duration + ':' + sec_duration; //console.log("Restzeit:" + restzeit + "__" + " Printzeit:" + printzeit + "__" +" Dauer:" + dauer); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Restzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Restzeit", restzeit, true); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Printzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Printzeit", printzeit, true); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.Gesamtzeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.Gesamtzeit", dauer, true); } //____________________________________________________________________________________________________ // Druck-Ende Uhrzeit berechnen // //################################# function endezeit(){ var time_left = getState("octoprint.0.printjob.progress.printtime_left").val; var sekunden_restzeit = time_left; // Restzeit in Sekunden aus Octopi if(time_left == null || time_left == 0 ){ setState("javascript.0.OctoPi.EndeZeit", '---', true) }; var Zeit = new Date(); //log('jetzt: ' + Zeit); var z0_neu = Zeit.getSeconds()+ sekunden_restzeit; var z_neu = Zeit.setSeconds(z0_neu); var ZeitNeu = new Date(z_neu); //console.log('Endezeit: ' + ZeitNeu); var h_ende = ZeitNeu.getHours(); var m_ende = ZeitNeu.getMinutes(); var s_ende = ZeitNeu.getSeconds(); var tag_ende = ZeitNeu.getDate(); var months = ["Jan", "Feb", "Mrz", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"]; var monat_ende = months[ZeitNeu.getMonth()]; var EndeZeit = tag_ende + '.' + monat_ende + ' ' + h_ende + ':' + m_ende + ':' + s_ende; //console.log('EndeZeit: ' + EndeZeit); // Führende 0 hinzufügen und als String wandeln if ( tag_ende < 10 ){var endtag = "0" + String(tag_ende);} else var endtag = String(tag_ende) if ( h_ende < 10 ){var endstunde = "0" + String(h_ende);} else var endstunde = String(h_ende) if ( m_ende < 10 ){var endminute = "0" + String(m_ende);} else var endminute = String(m_ende) if ( s_ende < 10 ){var endsekunde = "0" + String(s_ende);} else var endsekunde = String(s_ende) var EndeZeit = endtag + '. ' + monat_ende + ' ' + endstunde + ':' + endminute + ':' + endsekunde; //console.log('EndeZeit: ' + EndeZeit); if(time_left == null || time_left == 0 ){(setState("javascript.0.OctoPi.EndeZeit", "--:--:--", true)) } else setState("javascript.0.OctoPi.EndeZeit", EndeZeit, true); } // end of function EndeZeit() //____________________________________________________________________________________________________ //Druckfortschritt abfragen on({id: anycubic_timeleft , change: 'lt'}, function() { umrechnung() endezeit() });Gruß
Jörg@joergeli sagte in Test Adapter OctoPrint:
Ich habe hier ein JS-Script zusammengeschustert, welches die Octoprint-Zeiten in HH:MM:SS umsetzt,
Merci!!!
PS: statt javascript.0 hätt ich es gerne in 0_userdate.0
Reicht es, wenn ich diecreateStateauf 0_userdata ändere? -
@joergeli oi! kaum eins zum laufen gebracht, kommst du um die ecke! :D
thnx auch dafür!
wobei die letzten beiden ja eh vorhanden sind... -
@da_woody sagte in Test Adapter OctoPrint:
wobei die letzten beiden ja eh vorhanden sind...
Ich dachte, die Zeiten würden immer noch nur in Sekunden und nicht in HH:MM:SS ausgegeben?
-
@joergeli sagte in Test Adapter OctoPrint:
Ich habe hier ein JS-Script zusammengeschustert, welches die Octoprint-Zeiten in HH:MM:SS umsetzt,
Merci!!!
PS: statt javascript.0 hätt ich es gerne in 0_userdate.0
Reicht es, wenn ich diecreateStateauf 0_userdata ändere? -
@da_woody sagte in Test Adapter OctoPrint:
wobei die letzten beiden ja eh vorhanden sind...
Ich dachte, die Zeiten würden immer noch nur in Sekunden und nicht in HH:MM:SS ausgegeben?
@joergeli sagte in Test Adapter OctoPrint:
Ich dachte, die Zeiten würden immer noch nur in Sekunden und nicht in HH:MM:SS ausgegeben?
Ja, sind noch in Sekunden.
Manche Widgets könnens direkt umrechnen. -
@joergeli sagte in Test Adapter OctoPrint:
Ich habe hier ein JS-Script zusammengeschustert, welches die Octoprint-Zeiten in HH:MM:SS umsetzt,
Merci!!!
PS: statt javascript.0 hätt ich es gerne in 0_userdate.0
Reicht es, wenn ich diecreateStateauf 0_userdata ändere?@negalein
Ich habe das Script eben noch mal überflogen:
Es reicht leider doch nicht! aus, nur die createState auf 0_userdata zu ändern.
Im Script selbst kommt javascript.0 auch noch diverse Male vor.Kannst ja mal mit z.B. Notepad++ probieren, alle auf einen Schlag mit "suchen und ersetzen" umzubiegen
-
@latzi aaarrg! ich krieg die krise...
in der thumbnail_url steht ja die komplette adresse drinnen mit http.
in deiner zeile 6 wird nochmal http... + pfad + DP aufgerufen. führt bei mir dazu, daß mein DPhttp://192.168.2.59/http://192.168.2.59:80/plugin/prusaslicerthumbnails/thumbnail/Düse.png?20220120133146anzeigt... bin ich echt schon so verblödet?

-
@negalein
Ich habe das Script eben noch mal überflogen:
Es reicht leider doch nicht! aus, nur die createState auf 0_userdata zu ändern.
Im Script selbst kommt javascript.0 auch noch diverse Male vor.Kannst ja mal mit z.B. Notepad++ probieren, alle auf einen Schlag mit "suchen und ersetzen" umzubiegen
-
@negalein
Ich habe das Script eben noch mal überflogen:
Es reicht leider doch nicht! aus, nur die createState auf 0_userdata zu ändern.
Im Script selbst kommt javascript.0 auch noch diverse Male vor.Kannst ja mal mit z.B. Notepad++ probieren, alle auf einen Schlag mit "suchen und ersetzen" umzubiegen
@joergeli sagte in Test Adapter OctoPrint:
Im Script selbst kommt javascript.0 auch noch diverse Male vor.
habs gesehn und gleich mit dem createstate geändert. :)
