Add dual Spoolman sync mode: direct vs Moonraker plugin
Adds a 'spoolman_mode' config option ('direct' or 'moonraker'):
- direct (default): existing behavior — CFSync PUTs usage to Spoolman on print end
- moonraker: CFSync sends SET_ACTIVE_SPOOL/CLEAR_ACTIVE_SPOOL gcode macros to the
printer via Moonraker's /printer/gcode/script endpoint; the Moonraker Spoolman
plugin then tracks usage automatically
In moonraker mode, macro calls are fired at all relevant spool events:
active slot change (CFS WebSocket), spool link/unlink (manual and RFID auto-link),
and RFID swap detection. Direct Spoolman usage reporting is suppressed.
Settings card added to the UI with radio buttons to switch modes at runtime
via a new POST /api/ui/set_spoolman_mode endpoint.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> K
koen01 committed
3a65524fde02dfb7908c54f4cd63e96c4d3829cd
Parent: de647e5