Device Scripting in PaperCut 19.1

There were tonnes of new features introduced in version 19.1 of PaperCut. With so much going on it can be easy to miss things in all the excitement; one of the many exciting new features that we wanted to draw your attention is Device Scripting.

What is Device Scripting all about, and why should you want to use it?

Here at selectec we get many feature requests for PaperCut, be it via phone, email, support ticket, slack or via comments on our webinars. 

Once we’ve filtered out the noise, we present these ideas to PaperCut.

Over the years, lots of noise has been made around giving extra control over copier functions. The end result of a lot of emails and Jira tickets is Device Scripting. 

So tell me already, what is Device Scripting?

Before 19.1 if you had ever tried to introduce a colour page quota or restriction for the copying function, much like you can with a print, you would have (unfortunately) run into a dead end. While “Print Scripting” has been offering customers powerful (and flexible) control over their print jobs for a long time, it is only for print jobs and not device functions such as copying. Well, lucky for you, everything has changed now!

One of the more popular feature requests we receive has been the option to build on the print script functionality and offer it to copying. It is a natural progressive step for the feature, once you have printing under control in your organisation, bringing tighter control over reproduction makes perfect sense.

Finally, there is a way to manage user behaviour to your liking for copying, and the answer to all these problems is Device Scripting.

Perhaps we underplayed the function, it does not just cover copying you can set up rules and policies for copy, scan and fax (assuming people still fax in 2019). All of this is based on fully custom criteria, right down to individual users, or even time of day.

You’ll be able to customise your PaperCut set up with the help of Device Scripting, the only limitation being your imagination (ok… and the API!)

You might want to set a daily colour copy limit for a group of users, allow free copying during exam times, or block specific users from scanning functions. You can run wild and tweak the system exactly as you need it.

How does Device Scripting work?

Magic! And by writing a JavaScript directly into a code editor found in the PaperCut Admin web interface, it looks very similar to the Print Script editor although it is located at a different place. Device Scripting is in the Device tab, when selecting the device there is now an additional “Scripting” tab:

Device Scripting

To help get you up and running some functionality is provided as pre-built recipes that are ready to use “out of the box”, just like you can with Print Scripting. Alternatively, you can make a script or ask us to create them for you.

Does it work on every device?

Not yet, but it is early days. Currently (as of 19.1) device scripting is not supported on the following platforms:

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

All other platforms are good to go.

What if you apply a script to an unsupported device? 

Well… the world ends, and the dead rise from the grave! Human sacrifice, dogs and cats live together, mass hysteria. OK, we lied, nothing happens. The Device Script hook won’t be triggered, rendering that section of the script useless. Plus, if you accidentally apply a Device Script to an unsupported device, a warning message appears in the Admin UI. 

Can we get a thumbs up for that? You can have two if you know the movie reference used earlier. Didn’t get it? OK, fine… it was Ghostbusters.

Any limitations that you need to worry about?

The hook deviceLoginHook, which is used for Device Scripting, does not always support guest/anonymous access on some devices. Not a massive issue, but one you should be aware of. It should work on all devices – however, we have seen mixed results between devices. 

For this scenario, it is worth to add the following line in your deviceLoginHook code just in case:

That way, once the script is applied, you can walk up to the device and hit the Guest button to log in, taking note of the time. Then 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”, you are all good ☺.

Will you need to have mad programming skillz?

You’ll need the same good understanding of JavaScript that you have for PaperCut Print Scripting. To help you out, Device Scripting also comes with a handful of popular scripting recipes and snippets that can be adapted for your environment.

The built-in recipes (as of 19.1) include:

  • Deny device login over weekends
  • Send an email alert when users access the copier 
  • Impose a daily colour copy limit 
  • Give discounts for copying and scanning for staff
  • Change pricing models for user groups
  • No colour copy during peak periods
  • Free copying during class time
  • Offer discounts to encourage copier use
  • Superuser bypass for all login and colour copy restrictions
  • Place print release restrictions on users at the MFD
  • Restrict selectable shared accounts on a device
  • Send email alerts for large copy jobs

There is a new handy Device Script API reference with everything you need to know:

Need some help or a custom Device Script?

If this all looks like Klingon to you, then please give us a shout using the form below or via Slack.