I found a copy of ifhp 3.5.15 on the FTP site. Was able to get it up and
running, although there are still some issues with it that need to be
worked out.
I'm working with Xerox Phaser 5400 printers at the moment. It starts out
looking ok, but then goes off into la-la-land:
thugbert(john): ./ifhp-3.5.15 -Tconfig=/afs/.cs/s/lprng/etc/ifhp-3.5.15.conf,mod
el=phaser5400,dev=3a%9100,trace < /etc/fstab
ifhp-3.5.15 16:54:52.644 [11222] main: using model 'phaser5400'
ifhp-3.5.15 16:54:52.648 [11222] snmp device '3a'
ifhp-3.5.15 16:54:52.652 [11222] Check_pagecount: pagecount using 'snmp info pag
ecount'
ifhp-3.5.15 16:54:52.658 [11222] Process_job: setting up printer
ifhp-3.5.15 16:54:52.658 [11222] Do_sync: getting sync using 'snmp' and snmp
ifhp-3.5.15 16:54:53.947 [11222] Check_device_status: status = 'processing...'
ifhp-3.5.15 16:54:53.966 [11222] Check_device_status: devicestatus = 'unknown'
ifhp-3.5.15 16:54:54.005 [11222] Check_device_status: devicedescr = 'xerox phase
r 5400 network printer - 2.24'
ifhp-3.5.15 16:54:54.046 [11222] Check_device_status: printerstatus = 'idle'
ifhp-3.5.15 16:54:54.073 [11222] Check_device_status: prtmarkerlifecount = '1252
50'
ifhp-3.5.15 16:54:55.138 [11222] Check_device_status: pagecount = '125250'
ifhp-3.5.15 16:55:12.078 [11222] Do_sync: printer not detected, trying again
ifhp-3.5.15 16:55:12.078 [11222] Do_sync: Perhaps printer offline or not detecte
d by Operating System
ifhp-3.5.15 16:55:12.078 [11222] Do_sync: If on a parallel port then parallel po
rt may not be bidirectional
ifhp-3.5.15 16:55:12.078 [11222] Do_sync: Use the 'status@' filter option to sup
press this check
ifhp-3.5.15 16:55:12.078 [11222] Do_sync: See the ifhp man page or the ifhp HOWT
O for details
When I see Do_sync errors, the display shows "processing". This is a
problem; it will never get past that. Almost like appsocket isn't closing
down the port the way it should.
Here's what I have for the top of the printer definition (PS code removed
for duplex and tray selection options omitted):
[ phaser5400 ]
tc=hp4000_pcl
pjl_console@
appsocket
snmp_monitor
sync=snmp
pagecount=snmp
waitend=snmp
ppd=/s/lprng-3.8/etc/ppd/XP5400.PPD
I put pjl_console@ in hopes ifhp was choking on the customized display
messages; i.e.: not seeing READY/POWER SAVE MODE/PAPER JAM/whatever
predictable messages on the display.
I thought about changing snmp_status_fields to "printerstatus" (dropping
"status"). There's a problem with that, though. "PRINTERSTATUS" takes
one of the following values:
1: other
2: unknown
3: idle
4: printing
5: warmup
You wind up with "other" in too many situations to be useful. Like if
there is a jam. Or if you're out of paper. Or offline. Or in power-save
mode. Not enough to differentiate between whether the printer is ready
to accept a job and whether it's still cranking away on the previous job.
I still argue it would be much better to peruse the "private" MIB for
job status and determine whether the job is finished based on that
information. This is slightly more difficult because:
- the OID is different for each printer vendor, and maybe each
printer model from that vendor
- one must do an snmp "walk" to fetch statuses and search through
all status information returned looking for a job still "printing"
to determine if the job is finished
- the exact OID where the current print job status will often
change, as many printers will only return status on the last N
jobs, and job numbers will roll-over at JOBMAX (that may differ
for each printer)
- one must be prepared for all job status results to disappear,
in the event the printer is power-cycled and all job information
is lost
But it does give you a status...and the status actually means something.
--
============================================================================
John Perkins | University of Wisconsin-Madison
Associate Researcher | Department of Computer Science
[EMAIL PROTECTED] | 1210 W. Dayton St.
608-262-0438/608-262-6626 FAX | Madison, WI 53706-1685
============================================================================
-----------------------------------------------------------------------------
YOU MUST BE A LIST MEMBER IN ORDER TO POST TO THE LPRNG MAILING LIST
The address you post from MUST be your subscription address
If you need help, send email to [EMAIL PROTECTED] (or lprng-requests
or lprng-digest-requests) with the word 'help' in the body. For the impatient,
to subscribe to a list with name LIST, send mail to [EMAIL PROTECTED]
with: | example:
subscribe LIST <mailaddr> | subscribe lprng-digest [EMAIL PROTECTED]
unsubscribe LIST <mailaddr> | unsubscribe lprng [EMAIL PROTECTED]
If you have major problems, send email to [EMAIL PROTECTED] with the word
LPRNGLIST in the SUBJECT line.
-----------------------------------------------------------------------------