Duet muti printer server anyone?
-
Cool, we have also asked Christian to have a look at this.
Assuming the "Duet print farm control " (DPFC?) Code is not big we should aim to load it from a Duet so no internet connection is required. Any Duet could be the webserver for that and then all the other could be added.
-
Something like this? (Click to enlarge)
…
What commands would you like to see, and associated with what status? (statuses? stati? You know what I mean.)I was thinking of showing the same printing/paused/pausing/resuming etc. status that DWC and PanelDue display, or "disconnected"; the filename if it is printing; the % complete if it is printing; a "Connect" button for a disconnected printer if we can't make connection fully automatic; and a "Go to printer" button. Possibly also a pause or Resume/Cancel button when the printer is in the appropriate state. I don't see much point in duplicating much more of the functionality in DWC.
As David mentioned, these bits of web html/css/js would NOT load from a Duet. Absolutely no changes needed to the Duets that would be multi-monitored/controlled. This would load from the Internet (or the local disk on the PC/Mac/whatever, maybe). The only requirement to control a Duet would be that it is "reachable" from the browser where this is running; if you can load the given Duet's own DWC, this would work as well. In fact, those IP addresses above, even in the mockup, are links to the actual printer's DWC page.
I see no reason why the page shouldn't be loaded from a Duet. It should use the same bootstrap css files as DWC. But the printer configuration data (e.g. IP addresses) will need to be stored somewhere.
-
Great, I will take this a step or two further, and then we can checkpoint on how to proceed. Eventually, I will publish on github.
A few notes:
-
This can/could be served from anywhere. A Duet (any one of the Duets available) for those who wish… it will probably be one html and one js that uploads to that Duet, and an alternate URL from that Duet to launch it. It could also be served from the local filesystem on a PC/Mac/Linux, Or the Internet, for those who don't want to store it locally.
-
The mockup is built on the same css file, and bits and pieces of the js from DWC. As such, the same mechanism that is used to store browser settings in DWC can (will) be used that being - local browser storage. This has some pluses/minuses, we can discuss more in the future.
-
David, thank you for the specifics on status and buttons/commands. Good list. I also agree with you about not going to far into duplicating function. I see this as an "Arms length" status page as much as anything. The Name/IP is clickable to launch full DWC at any time.
More to come…
-
-
A "Working Draft" is now ready for review. To load it:
-
Click this URL: http://danalspub.com/MultiDWMC/
-
After it loads, use the "Add Printer" button to enter the IP address (and password, if applicable) of at least one Duet that can be reached by regular Duet Web. You can add as many as you wish. You can delete the example, if you wish. Entries will be preserved across reloads.
-
Wait a few moments (about 10 seconds each for first connect, and first status update).
Comments welcome. Post right here in this thread.
P.S. This will eventually be able to be loaded from a Duet. For right now, loadable only from the internet.
-
-
If you re-visit after a few hours or days, be sure and refresh cache.
Example: In Chrome, do a Ctrl+Shift-r
-
Can it be changed to use hostnames instead of IP?
-
Can it be changed to use hostnames instead of IP?
Assuming that "normal" DWC would work with the same host-name, sure. I'll take the check for IP out.
Edit: Done. Be sure and Ctrl-Shift-r to see the change.
-
It works!
-
Hey, it looks great! Im having an issue connecting, I added the IP for one and waited but it fails. I dont have a password on this board so I left the password blank. Could that be the issue? I have Deleted and retried a few times just to be sure. Thanks for the help.
-
Hey, it looks great! Im having an issue connecting, I added the IP for one and waited but it fails. I dont have a password on this board so I left the password blank. Could that be the issue? I have Deleted and retried a few times just to be sure. Thanks for the help.
Blank password, meaning "just click done, or just hit enter" is fine. I use that. I've tested it (a little) with a password as well.
Things to check:
- Does DWC connect from that same browser/computer, etc. using the same IP (or name)
And, for curiosity: What OS and Browser? And what firmware on your Duet?
Thanks,
Danal
-
1.18 duet firmware
Chrome browser
Also DWC opens in the browserI just clicked done with the blank password field.
-
1.18 duet firmware
Chrome browser
Also DWC opens in the browserI just clicked done with the blank password field.
Very interesting. Close to what I'm using. Hmmm… I may have to put a debugging console log in temporarily... but... I've just changed the central dispatcher/connector to make it more reliable, so, if you don't mind, try again.
You should see "V1.02" in the block of notes, if things have successfully refreshed. (Ctrl+Shift+R).
-
V1.02 Now available.
Release Notes, 1.02:
- Speedup initial connect on page load.
- Cleanup wording around IP or HostName in several places
- Added "Disconnect and Close" button.
- Made individual line "Disconnect" buttons active.
- Added completion percentage to status while printing
Release Notes, 1.01:
- Allow hostnames (in addition to IP addresses)
- Fixed table sometimes not (re-)built properly after add or delete
-
-
Nice!
-
Everything in the above picture is real, updated from connections to real duets, and will perform the labeled actions when clicked, EXCEPT for the gray (white) buttons.
-
One little bug: under Chrome the printer names are displayed, but under Firefox it continues to show "TBD at first status update".
-
1.18 duet firmware
Chrome browser
Also DWC opens in the browserI just clicked done with the blank password field.
Very interesting. Close to what I'm using. Hmmm… I may have to put a debugging console log in temporarily... but... I've just changed the central dispatcher/connector to make it more reliable, so, if you don't mind, try again.
You should see "V1.02" in the block of notes, if things have successfully refreshed. (Ctrl+Shift+R).
Will do, I'll let you know how it works
-
One little bug: under Chrome the printer names are displayed, but under Firefox it continues to show "TBD at first status update".
Interesting. Some subtle Javascript difference, no doubt.
Thanks, I will check it out on FF.
-
One little bug: under Chrome the printer names are displayed, but under Firefox it continues to show "TBD at first status update".
In the spirit of transparency: I'd broken this updating of the name from the board in all browsers.
V1.03 now available.
Release Notes, 1.03:
Fixed a bug that sometimes prevented newly added printers from obtaining and displaying the board name (i.e. the name stayed "TBD" forever).