NEWS
Adapter Klipper-Moonraker
-
@stenmic Problem gefunden :D
Ich hatte ein x-beliebiges File kopiert...
Bei mir werden immer 3 Thumbs erzeugt: 32x32, 100x100 und 320x320.
Ich hab ein 32x32 kopiert ;)UND:
Ich muss an den Filenamen ein-320x320anhängen.
Damit geht es dann.Also vielen Dank nochmal :)
@Merlin123 sagte in Adapter Klipper-Moonraker:
Damit geht es dann.
Hallo
bei mir steht im Link auch http://10.0.1.244/server/files/gcodes/.thumbs/support-test_PETG_1h17m-300x300.pngWie hast du das im Blockly gelöst, dass er an support-test_PETG_1h17m noch das -300x300 anhängt
2025-12-24 22:47:13.222 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: Cannot parse "support-test_PETG_1h17m.gcode": SyntaxError: Unexpected token 's', "support-te"... is not valid JSON 2025-12-24 22:47:13.225 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: Error: TypeError: Cannot read properties of null (reading 'slice') 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at Object. (script.js.3D-Drucker.Klipper_Thumb:9:85) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/src/lib/sandbox.ts:1772:38) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at JavaScript.onStateChange (/opt/iobroker/node_modules/iobroker.javascript/src/main.ts:752:25) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at JavaScript.emit (node:events:524:28) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at JavaScript.emit (node:domain:489:12) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at Immediate. (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11138:53) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at processImmediate (node:internal/timers:483:21) -
@Merlin123 sagte in Adapter Klipper-Moonraker:
Damit geht es dann.
Hallo
bei mir steht im Link auch http://10.0.1.244/server/files/gcodes/.thumbs/support-test_PETG_1h17m-300x300.pngWie hast du das im Blockly gelöst, dass er an support-test_PETG_1h17m noch das -300x300 anhängt
2025-12-24 22:47:13.222 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: Cannot parse "support-test_PETG_1h17m.gcode": SyntaxError: Unexpected token 's', "support-te"... is not valid JSON 2025-12-24 22:47:13.225 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: Error: TypeError: Cannot read properties of null (reading 'slice') 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at Object. (script.js.3D-Drucker.Klipper_Thumb:9:85) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/src/lib/sandbox.ts:1772:38) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at JavaScript.onStateChange (/opt/iobroker/node_modules/iobroker.javascript/src/main.ts:752:25) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at JavaScript.emit (node:events:524:28) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at JavaScript.emit (node:domain:489:12) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at Immediate. (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11138:53) 2025-12-24 22:47:13.226 - error: javascript.0 (1605858) script.js.3D-Drucker.Klipper_Thumb: at processImmediate (node:internal/timers:483:21) -
@Merlin123 sagte in Adapter Klipper-Moonraker:
so :)
hab ich, aber funktioniert nicht. :(

Name und Thumbnail DB sind String?
-
@Merlin123 sagte in Adapter Klipper-Moonraker:
so :)
hab ich, aber funktioniert nicht. :(

Name und Thumbnail DB sind String?
-
@Negalein
Filename ist string.
Inhalt aktuell{"eventtime":101.473435832,"value":"Stand_0.15mm_PLA_Generic Klipper Printer_26m47s.gcode"}Ich hol das aber über die mqtt Schnittstelle
Das Bild hol ich mir direkt vom Drucker@Merlin123 sagte in Adapter Klipper-Moonraker:
Ich hol das aber über die mqtt Schnittstelle
Das Bild hol ich mir direkt vom Druckerwie machst du das?
Hast du ein kurzes How-To? :) -
@Merlin123 sagte in Adapter Klipper-Moonraker:
Ich hol das aber über die mqtt Schnittstelle
Das Bild hol ich mir direkt vom Druckerwie machst du das?
Hast du ein kurzes How-To? :) -
@Negalein Kurzfassung:
mqtt Server in ioBroker einrichten, dann Moonraker konfigurieren:
Moonraker mqtt@Merlin123 sagte in Adapter Klipper-Moonraker:
Moonraker mqtt
Danke, das hab ich vorher gefunden.
Ich finde nichts, was ich dort eintragen muss, um den Link zum Thumb zu bekommen.
Alles andere bekomm ich vom Klipper-Adapter.
-
@Merlin123 sagte in Adapter Klipper-Moonraker:
Moonraker mqtt
Danke, das hab ich vorher gefunden.
Ich finde nichts, was ich dort eintragen muss, um den Link zum Thumb zu bekommen.
Alles andere bekomm ich vom Klipper-Adapter.
@Negalein Das ist mein Blockly dazu:
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="BXYL{xhaLkN~v2Ldl!%!">text</variable> </variables> <block type="on" id="/Z2O}ZB#,a]kn33Dz4F$" x="116" y="2253"> <field name="OID">mqtt.0.printer.V2.660.klipper.state.print_stats.filename</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="variables_set" id="y[Oc#E_92,_2BKo4(5~["> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> <value name="VALUE"> <block type="get_attr" id="XXR]WqWt.=HMLUr3gR}@"> <value name="PATH"> <shadow type="text" id="rrx*$IEHd@w{;*~Z+8`n"> <field name="TEXT">value</field> </shadow> </value> <value name="OBJECT"> <shadow type="get_object" id="^cMzi*_aj{`Pl0P725m~"> <field name="OID">Object ID</field> </shadow> <block type="on_source" id="pgo{+7GzQz;]qj)e34}A"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="update" id="bIOV@RC*Q+u,j_l+cDZ,"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.3D_Drucker_K1_Filename</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_getSubstring" id=";P~^,bl^VhcaeFBrn4B7"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id=".)~:q(Mh|eeSdPJRu*2!"> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="~]oa3qPRWU)spG%YB1]]"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="PqrA)w7#cW-.+R7[s$Ut"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="r51`DlwiN)v*}8k4q}5p"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="sqPwTzw6?t1]F1dwmj|P"> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> </block> </value> <value name="FIND"> <shadow type="text" id="NN88q$[rF?qy3R1S,=Fk"> <field name="TEXT">.gcode</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="Gp.#K1A?Y{{b4u]f,mK_"> <field name="NUM">1</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="update" id="v~`h#IPc]?2X#3=M{X[a"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.3D_Drucker_K1_Thumbnail</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_join" id="=uC)c{XD(`=yL3+qnM$/"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="+hu6Z]DDV49vxZEG3^KI"> <field name="TEXT">http://192.168.0.252:4409/server/files/gcodes/.thumbs/</field> </block> </value> <value name="ADD1"> <block type="text_getSubstring" id=".jX}L{b`]tqX[lP+wIR2"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="ZUXf!~C]B[?oTqjrU3mF"> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="rArUrH5JD`!U0PI6`=Lt"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="PqrA)w7#cW-.+R7[s$Ut"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="Gji4dA%oP(rS[%9W%X(m"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="i=BXKzmS]z$x=!47DA!B"> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> </block> </value> <value name="FIND"> <shadow type="text" id="nTgAoKx?A/?1e#g9JTXQ"> <field name="TEXT">.gcode</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="u3_-Ii7/U+4%YQw8Az@I"> <field name="NUM">1</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD2"> <block type="text" id="sn3+k)T(}R(KvqNhQ6;v"> <field name="TEXT">-320x320.png</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </xml> -
@Negalein Das ist mein Blockly dazu:
<xml xmlns="https://developers.google.com/blockly/xml"> <variables> <variable id="BXYL{xhaLkN~v2Ldl!%!">text</variable> </variables> <block type="on" id="/Z2O}ZB#,a]kn33Dz4F$" x="116" y="2253"> <field name="OID">mqtt.0.printer.V2.660.klipper.state.print_stats.filename</field> <field name="CONDITION">ne</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="variables_set" id="y[Oc#E_92,_2BKo4(5~["> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> <value name="VALUE"> <block type="get_attr" id="XXR]WqWt.=HMLUr3gR}@"> <value name="PATH"> <shadow type="text" id="rrx*$IEHd@w{;*~Z+8`n"> <field name="TEXT">value</field> </shadow> </value> <value name="OBJECT"> <shadow type="get_object" id="^cMzi*_aj{`Pl0P725m~"> <field name="OID">Object ID</field> </shadow> <block type="on_source" id="pgo{+7GzQz;]qj)e34}A"> <field name="ATTR">state.val</field> </block> </value> </block> </value> <next> <block type="update" id="bIOV@RC*Q+u,j_l+cDZ,"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.3D_Drucker_K1_Filename</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_getSubstring" id=";P~^,bl^VhcaeFBrn4B7"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id=".)~:q(Mh|eeSdPJRu*2!"> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="~]oa3qPRWU)spG%YB1]]"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="PqrA)w7#cW-.+R7[s$Ut"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="r51`DlwiN)v*}8k4q}5p"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="sqPwTzw6?t1]F1dwmj|P"> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> </block> </value> <value name="FIND"> <shadow type="text" id="NN88q$[rF?qy3R1S,=Fk"> <field name="TEXT">.gcode</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="Gp.#K1A?Y{{b4u]f,mK_"> <field name="NUM">1</field> </shadow> </value> </block> </value> </block> </value> <next> <block type="update" id="v~`h#IPc]?2X#3=M{X[a"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">0_userdata.0.3D_Drucker_K1_Thumbnail</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="text_join" id="=uC)c{XD(`=yL3+qnM$/"> <mutation items="3"></mutation> <value name="ADD0"> <block type="text" id="+hu6Z]DDV49vxZEG3^KI"> <field name="TEXT">http://192.168.0.252:4409/server/files/gcodes/.thumbs/</field> </block> </value> <value name="ADD1"> <block type="text_getSubstring" id=".jX}L{b`]tqX[lP+wIR2"> <mutation at1="false" at2="true"></mutation> <field name="WHERE1">FIRST</field> <field name="WHERE2">FROM_START</field> <value name="STRING"> <block type="variables_get" id="ZUXf!~C]B[?oTqjrU3mF"> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> </block> </value> <value name="AT2"> <block type="math_arithmetic" id="rArUrH5JD`!U0PI6`=Lt"> <field name="OP">MINUS</field> <value name="A"> <shadow type="math_number" id="PqrA)w7#cW-.+R7[s$Ut"> <field name="NUM">1</field> </shadow> <block type="text_indexOf" id="Gji4dA%oP(rS[%9W%X(m"> <field name="END">FIRST</field> <value name="VALUE"> <block type="variables_get" id="i=BXKzmS]z$x=!47DA!B"> <field name="VAR" id="BXYL{xhaLkN~v2Ldl!%!">text</field> </block> </value> <value name="FIND"> <shadow type="text" id="nTgAoKx?A/?1e#g9JTXQ"> <field name="TEXT">.gcode</field> </shadow> </value> </block> </value> <value name="B"> <shadow type="math_number" id="u3_-Ii7/U+4%YQw8Az@I"> <field name="NUM">1</field> </shadow> </value> </block> </value> </block> </value> <value name="ADD2"> <block type="text" id="sn3+k)T(}R(KvqNhQ6;v"> <field name="TEXT">-320x320.png</field> </block> </value> </block> </value> </block> </next> </block> </next> </block> </statement> </block> </xml>@Merlin123 sagte in Adapter Klipper-Moonraker:
Das ist mein Blockly dazu:
ist eigentlich ident zu meinem.
komisch, dass es bei mir nicht funktioniert.
-
@Merlin123 sagte in Adapter Klipper-Moonraker:
Das ist mein Blockly dazu:
ist eigentlich ident zu meinem.
komisch, dass es bei mir nicht funktioniert.
-
@Merlin123 sagte in Adapter Klipper-Moonraker:
hmmm... dann hab ich spontan keine idee :(
ich bekomm diese Fehler
javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at processImmediate (node:internal/timers:483:21) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11138:53) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at JavaScript.emit (node:domain:489:12) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at JavaScript.emit (node:events:524:28) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at JavaScript.onStateChange (/opt/iobrokr/node_modules/iobroker.javascript/src/main.ts:752:25) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/src/lib/sandbox.ts:1772:38) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at Object.<anonymous> (script.js.3D-Drucker.Klipper_Thumb:9:81) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: Error: TypeError: Cannot read properties of null (reading 'slice') javascript.0 2025-12-27 14:23:54.081 error script.js.3D-Drucker.Klipper_Thumb: Cannot parse "Emely_2.gcode": SyntaxError: Unexpected token 'E', "Emely_2.gcode" is not valid JSON -
@Merlin123 sagte in Adapter Klipper-Moonraker:
hmmm... dann hab ich spontan keine idee :(
ich bekomm diese Fehler
javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at processImmediate (node:internal/timers:483:21) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at Immediate.<anonymous> (/opt/iobroker/node_modules/@iobroker/js-controller-adapter/src/lib/adapter/adapter.ts:11138:53) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at JavaScript.emit (node:domain:489:12) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at JavaScript.emit (node:events:524:28) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at JavaScript.onStateChange (/opt/iobrokr/node_modules/iobroker.javascript/src/main.ts:752:25) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at Object.callback (/opt/iobroker/node_modules/iobroker.javascript/src/lib/sandbox.ts:1772:38) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: at Object.<anonymous> (script.js.3D-Drucker.Klipper_Thumb:9:81) javascript.0 2025-12-27 14:23:54.082 error script.js.3D-Drucker.Klipper_Thumb: Error: TypeError: Cannot read properties of null (reading 'slice') javascript.0 2025-12-27 14:23:54.081 error script.js.3D-Drucker.Klipper_Thumb: Cannot parse "Emely_2.gcode": SyntaxError: Unexpected token 'E', "Emely_2.gcode" is not valid JSON -
@Negalein ich habe da ein JSON. Du musst dann den Text anders verarbeiten.
Trigger mal auf den Datenpunkt wo bei dir jetzt im Log Emely_2.gcode stand.ggf. das Blockly entsprechend anpassen.
@Merlin123 sagte in Adapter Klipper-Moonraker:
ich habe da ein JSON. Du musst dann den Text anders verarbeiten.
Trigger mal auf den Datenpunkt wo bei dir jetzt im Log Emely_2.gcode stand.ich bekomm weder im Adapter noch vom Script ein JSON :(

ggf. das Blockly entsprechend anpassen.
kennst du dich da aus?

