Ad

How Do I Tell When A CUPS Print Jobs Has Been Completed Plus Info About That Job?

- 1 answer

I need to know each time a Mac print job is created/completed, plus some information about that job (what was printed, pages, copies, etc).

The best method I've come up with thus far is to use kqueue() on /var/spool/cups/ and then parse the c##### files as they're created, but I'm wondering if there's a better way.

Ad

Answer

I'd think about creating a filter that you can put into the CUPS pipeline that collects this information and stores it for you (say in a database). Then you can access the database to get the information using any standard database access mechanism. Basically the filter is just a command-line program that gets a number of parameters passed to it from CUPS and needs to read input on stdin and write it to stdout. You can find more information at http://www.cups.org/documentation.php/api-filter.html.

Ad
source: stackoverflow.com
Ad