Device Scripting: Known Issues and Limitations

Introduced in PaperCut MF 19.1, Device Scripting allows for programmatic control of many aspects of a user’s experience at an MFD, much akin to what Print Scripting facilitates for control of your printing workflow. With Device Scripts, PaperCut MF administrators are equipped to guide and direct user behaviour around copying and print release, as well as make adjustments to the charging of copy, scan, and fax jobs, all based on fully custom criteria, right down to individual users, or even time of day.

Whilst the initial implementation of Device Scripting enables a broad array of possible inputs and actions with which to solve problems and meet unique requirements, the sheer multitude of supported devices and methods through which PaperCut MF integrates with them incurs a small number of limitations. This article provides information around these limitations, and will be updated to reflect any changes concerning them down the line.

If you come across any issues with Device Scripting that don’t seem to be addressed here, please do let us know via the feature’s Percolator page. And of course, we’re hoping to extend Device Scripting’s capabilities over coming releases, so feedback on what improvements you’d like to see could help shape what comes next!

Device Scripting Limitations as of PaperCut MF 19.1.5

The hook deviceJobLogHook is not supported on some device types

Commonly, devices integrated with PaperCut MF will keep track of the copies, scans, and faxes a user performs whilst logged in, and then return this data to the PaperCut MF Application Server once the user logs out. The Application Server then uses the charging configuration applied to a device to calculate how much to deduct from the relevant Shared Account or Personal Account balance, as well as enter job records into the Job Log.

The deviceJobLogHook portion of a Device Script is called during that post-processing of job data by the Application Server, allowing for granular charging adjustments, updates to custom quotas, or the insertion of comments into the Job Log. However, various device types deliver job data to the Application Server in differing ways, with these differentiations dependent on how each platform behaves in tandem with our software integration. The resulting workflow of some device types is incompatible with the present implementation of this hook.

In these cases, an applied Device Script will not trigger the deviceJobLogHook, rendering that section of the script inapplicable for the device types listed below:

  • Brother
  • Fuji Xerox (Legacy AIP only - ApeosPortV+ devices are supported)
  • OKI Open Platform
  • Toshiba

If you apply a Device Script containing deviceJobLogHook to a device of one of these types, a warning message will be displayed. If you’re keen on seeing support introduced for any of these device types in future, definitely touch base with us via the Device Scripting Percolator page; bespoke solutions which sidestep our limitation on these plaforms could prove possible, and expressions of interest may direct what’s next on our slate…

The hook deviceLoginHook does not support guest/anonymous access on some devices

When included in a Device Script, deviceLoginHook will be called at the point a user attempts to login to the applicable device, giving the opportunity to take actions such as denying their login, denying them access to colour copying based on criteria such as custom quotas, or filtering the Shared Accounts they can employ in the current login session. Whilst calling this hook is supported on all devices, testing has shown that the guest access authentication method may not trigger it on certain models. This appears to be due to slight variations in the specific authentication workflow for guest access on these devices, and which families of devices are likely to be impacted is accordingly unpredictable.

A warning concerning this will be displayed when using deviceLoginHook in a Device Script applied to a device that has guest access enabled. To test if this hook is compatible with guest access on your devices, the following snippet could be inserted into a Device Script:

function deviceLoginHook(inputs, actions) {"Phew, looks like guest access is supported =)");

Once this Device Script is applied, walk up to the device and hit the Guest button to login, taking note of the time. Return to the PaperCut MF Admin web interface and check the Application Log subtab of the Logs tab. If you see an entry at the noted time of login which contains the text “Phew, looks like guest access is supported =)”, the device supports the hook in conjunction with guest access. If no matching entry can be found, please reach out to us via the Device Scripting Percolator page with the following details:

  • Make and model of the device
  • Version of firmware installed

… so that we can keep track of any unsupported models, and potentially determine ways to address this in future. Be sure to remove the Device Script snippet when you’re finished testing, too!

Note that anonymous access, an authentication method closely related to guest access, will similarly not be able to trigger this hook for any unsupported devices.

Categories: Known Issues, Devices

Keywords: script, scripting, zono, mf-only