Print Quota / Authentication / Billing System Version 4.2.0
-----------------------------------------------------------

New! Join the printbill mailing list. Send an e-mail with the subject
'subscribe' to

printbill-request@ieee.uow.edu.au

It is a very low-volume list, but I'm on it, as are a variety of other
useful people.

Printbill is a collection of print billing and/or accounting programs with
associated administration utilities and detailed statistics collection
functionality. It runs on LPRng, but as of 4.2.0, also runs on CUPS
(currently basic support has been integrated). See docs/README.INSTALLATION
for detailed instructions on how to set it up for your system.

A simple print filter and accompanying daemon perform your choice of
pre-printing billing, post-printing billing, print-accounting and print job
quote generation. In addition, various utilities for administrators and
users are provided - including programs to check your print quota and usage
patterns, a web interface for both users and administrators and a
command-line quote generator.

Charge rates may be specified on per-page, per-percent-coverage or both, and
any number of printers/print queues can be provided (with different charge
rates and printer parameters). Monochrome and CMYK colour printers are
supported (with separate charge rates for both colour and black ink). For
all filters, processing can happen out-of-order, and you may prioritise jobs
on the basis of size (jobs larger than a threshold can get lower priority or
higher priority as desired) and jobs are billed in parallel / overlapping -
jobs which finish billing first get printed first. This is not necessarily
the same as the order of arrival. Detailed stats are collected on a
per-printer basis for job size, CPU time for each job, page count and
ink/toner coverage, so you can analyse the usage patterns for your printers
and predict when a cartridge will need to be replaced. It supports an
optional user-supplied anything-to-postscript filter, so you can get
properly billed for plain text, DVI files, jpegs, and so forth as well as
PostScript. Databases and configuration files may be stored on a centralised
web server. This allows read-only access so that Unix (and conceivably
Windows) clients could easily check quota, calculate quotes etc. remotely.

For fun, an additional filter is provided which allows users to deduct fixed
amounts from their accounts (we use it to let students buy drinks and food
from an unsecured laboratory fridge). This hasn't been internationalised,
and is basically a hack - but use it if you like :-)

Printbill is released under the terms of the GNU General Public License
version 2.0 (see the COPYING file for details) and is Copyright (C) 2000,
2001, 2002 and 2003 Daniel Franklin and Phil Ciufo.

Yes, it probably *is* buggy, full of security holes, will fill your server
up with rubbish and reformat your hard drive. If it does that or anything
else which it shouldn't, send your bug reports to the principal author. It
is currently being used at UoW at least 3 low-volume environments and has
not caused any major problems. The University of Wollongong IEEE Student
Branch has printed about 100000 pages with this system so far without any
deaths or injuries reported.

If this is your favourite open-source application ever, and you'd just love
to show your appreciation in a financial way, donate some money to the Fred
Hollows Foundation (low cost eye surgery and intra-ocular lenses for the
developing world), or the Debian project. They need it more than I do.

Lastly - if Printbill is useful to you, you may also be interested in the
only Free-software alternative - PyKota, by Jermoe Alet. It may be a better
solution for CUPS at present. See http://www.librelogiciel.com/software/ for
details.

25th April 2003

Daniel Franklin (d.franklin@ieee.org)
