Knowledgebase
Knowledgebase: PaperCut > Mobility Print
Prevent users from printing jobs via mobility to removed queues
Last modified on 11 September 2020 02:39 PM

When a print queue is unpublished from mobility print, users who already had that printer added, e.g. via the Windows Mobility Print Client setup tool, will still be able to print to that printer. We find that you may not want them to after unpublishing the print queue. Below are a few different ways that you can use to stop these print jobs from printing. Note, some these methods assume that a Find-Me queue is being used too.

Create a group restriction on the target queues in PaperCut

You can use the filters and restrictions on the printers to remove access to them based on user group. If you have a master group with all your users in it and deny that group access to the printer, that will stop users printing directly to it, but still allow jobs to be redirected to it from a Find-Me queue. As long as the following checkbox is not checked on the virtual Find-Me queue, printing through the Find-Me should still work, but as always it's worth testing first to be sure.



This manual page talks about setting up user groups: https://www.apms.com.hk/product/ng-mf/manual/applicationserver/topics/user-groups.html

Set High Print Costs

Give the queues arbitrarily high job costs to effectively prevent printing directly to them in the same fashion. Again, with this option, make sure the above checkbox is unchecked. This will ensure that the high costs are only applied when jobs are submitted directly to the print queue, not sent via the Find-Me queue.

This manual page talks about setting up charging on your printers: https://www.apms.com.hk/product/ng-mf/manual/applicationserver/topics/printer-diff-charging.html

Rename the Print Queues

Doing this will effectively break the old printer URI which exists on those users' machines. Here's the article on describing how to rename a printer in PaperCut in order to retain the settings and printing history: https://www.apms.com.hk/product/ng-mf/manual/applicationserver/topics/printer-renaming.html

You should also be able to make use of our server commands to do this too, which you can leverage in a batch script to programmatically accomplish the same thing: https://www.apms.com.hk/product/ng-mf/manual/common/topics/tools-server-command.html

rename-printer <server_name> <printer_name> <new_server_name> <new_printer_name>

Rename a printer. This can be useful after migrating a print queue or print server
(i.e. the printer retains its history and settings under the new name). Note that
in some cases case sensitivity is important, so care should be taken to enter the
name exactly as it appears in the OS.

<server_name> - the existing printer's server name

<printer_name> - the existing printer's queue name

<new_server_name> - the new printer's server name

<new_printer_name> - the new printer's queue name

This is also mentioned in a separate KB article on the same topic: https://support.apposite.com.hk/Knowledgebase/Article/View/how-to-rename-a-printer

Use a Print Script to cancel any job which is submitted to the printer

You could set up a print script on each of your target queues, which automatically cancels any job submitted to it. If job flows through the Find-Me queue, any print script on a target queue is ignored anyway, so these scripts should only ever execute in the case of direct printing. The specific action/s you'd want to use are as follows: https://www.apms.com.hk/product/ng-mf/manual/common/topics/script-print-api.html

actions.job.cancel() Cancels the current print job so that it is not printed. It does not log the cancelled job. To log the job use actions.job.cancelAndLog. The script should typically exit using return after cancelling the job.
actions.job.cancelAndLog([comment]) Cancels the current print job and logs it under job logs. It can also add a comment to the job, which is then available in the job logs and reports. The script should typically exit using return after cancelling the job. Parameters:
→comment (string) - An optional parameter to add a comment to the print job.

Use a Print Script to cancel any MOBILITY job which is submitted to the printer

Like the above option, but slightly smarter, you could use a Print Script on the printer to cancel any job that came from mobility. Again, this won’t effect jobs from a Find-Me queue, as the scripts only fire on the first queue a job passes though.

inputs.job.isMobilityPrintJob (boolean) Determines if the job was submitted via Mobility Print
actions.job.cancel() Cancels the current print job so that it is not printed. It does not log the cancelled job. To log the job use actions.job.cancelAndLog. The script should typically exit using return after cancelling the job.

Delete The Printer

If all else fails, delete the printer from the print server. This is a drastic measure, as this will stop all printing to that printer via the print server. So make sure this is what you’re after.

This manual page goes over how to delete a printer and remove it from PaperCut: https://www.apms.com.hk/product/ng-mf/manual/applicationserver/topics/printer-add-remove-printer.html