Printer Job Language Technical Reference Manual
[safeq] / README
diff --git a/README b/README
index bbce74c..e6b0c57 100644 (file)
--- a/README
+++ b/README
@@ -1,7 +1,63 @@
 Goal is to write replacement SafeQ using cups and samba
 
 For now, first goal is to support SafeQ terminal protocol so we can re-use devices not supported
-by vendor any more. We are targeting only Xerox devices which we have.
+by vendor any more. We are also annoyed by SafeQ "feature" which doesn't allow us to use scanning
+if Xerox runs out of toner. This is arbitrary limitation which cripples this setup for us.
 
-./debian-install.sh # will install required Debian packages
+
+./debian-install.sh            # will install required Debian packages
+
+
+We have old Xerox WorkCentre 5225 and 7232 machines (from 2008) and getting active jobs or
+history is supported by web interface which is scraped and javascript variables inside
+used to display info.
+
+./xwc-jobs.pl 10.60.3.35               # list active jobs on Xerox WorkCentre 5225 by scraping web
+./xwc-jobs.pl 10.60.3.35 list
+
+./xwc-jobs.pl 10.60.3.35 hist  # list completed jobs
+
+Script produces tab delimited output, but if you want to format it nicely you can always use
+SEP enviroment variable to specify sparator and column to format it. This is included in
+xwc-jobs helper shell script which is useful for interactive use:
+
+dpavlin@t42:~/safeq$ ./xwc-jobs 10.60.3.35
+IP          id        Job Name   Owner       Status         Type     Quantity
+10.60.3.35  00015c2c  -          10.60.3.10  3:User Action  1:Print  0
+10.60.3.35  00015c2f  Test Page  root        3:User Action  1:Print  0
+10.60.3.35  00015c32  -          10.60.3.10  3:User Action  1:Print  0
+
+
+You can delete job using:
+
+dpavlin@t42:~/safeq$ curl -XPOST -d OPR=CANCEL -d JOBS=00015c32/ http://10.60.3.35/JOBCTRL.cmd
+
+or use d[elete] or c[ancel] aruguments and job id(s):
+
+dpavlin@t42:~/safeq$ ./xwc-jobs 10.60.3.35 d 00015c41
+10.60.3.35  00015c41  CANCEL  REQUEST: ACCEPTED
+
+
+We would like to have nice job name and user info on Xerox, so I tested how to send data
+using various protocols:
+
+dpavlin@t42:~/safeq$ lpstat -v
+device for ipp: ipp://10.60.3.35/ipp
+device for XWC5225-5KatL: socket://10.60.3.35
+
+dpavlin@t42:~/safeq$ lpr -Pipp -U lpr-U1 -C lpr-C1 -J lpr-J1 -T lpr-T1 /usr/share/doc/printer-driver-foo2zjs/manual.pdf
+
+dpavlin@t42:~/safeq$ lpr -PXWC5225-5KatL -U lpr-U2 -C lpr-C2 -J lpr-J2 -T lpr-T2 /usr/share/doc/printer-driver-foo2zjs/manual.pdf
+
+dpavlin@t42:~/safeq$ rlpr -H 10.60.3.35 -U rlpr-U -C rlpr-C -J rlpr-J -T rlpr-T /usr/share/doc/printer-driver-foo2zjs/manual.pdf
+
+And results are *VERY* different:
+
+dpavlin@t42:~/safeq$ ./xwc-jobs
+IP          id        Job Name  Owner       Status             Type     Quantity
+10.60.3.35  00015c65  lpr-T1    lpr-U1      1:Printing...      1:Print  0
+10.60.3.35  00015c68  -         10.60.3.10  0:Printing - wait  1:Print  0
+10.60.3.35  00015c6b  rlpr-J    rlpr-U      0:Printing - wait  1:Print  0
+
+So, it seems that we can't tranfer job name or owner through caps and socket connection.