| A |
It depends on what the real network status of the printer is. If the printer is truly
not accepting network connections (turned off, buffer full, etc) we will not send jobs
to the printer even if the status of the printer on our queue says
"Idle". However, the printer can look like it is off line, but still be accepting data -- this is an HP peculiarity,
but we have no choice but send data to the printer if it is accepting data (for example, on my HP2100, if I open both trays on the printer, the
'OFFLINE' light goes on, but the printer still accepts data -- I suppose this is on the assumption that the next job may be requesting
data from the manual input tray, so the firmware says it will not stop accepting jobs). The way our software works is to check two things before every job:
- We check the TCP/IP socket (port 9100) to see if it will accept data (this checks whether the printer is turned
on.
- Then we send 1000 null characters to see if the printer is actually receiving data. If it is, we send the job
.
If you have selected the 'Query printer' option, then ClusterQue checks the printer as the job is sent to see if it actually
printing the pages. If it is NOT, then at a certain point (hard to predict since it depends on the complexity of the print job, etc),
the job status will change to either AsstReq (if the job is only partially sent to the printer) or NetError (if the job is completely sent, but no
pages have printed) and the job will be put back on the queue and sent to another printer. The status of the printer will stay in the error condition until
the problem is resolved (we check this by querying the printer for a code that says paper is loaded to every tray, etc) -- note that this is a
more stringent condition than that required for starting the print job. |