Creating a printer emulator to capture PDL/PCL data coming in on port 9100.
I have a number of Windows CE operator terminals. They have facility to print alarms/messages to ...
aser or Inkjet (so they're using PCL).
USB or IP. IP connection takes just the IP address.
Question
How could I create a service or daemon on a server to capture all this data? Then ...
I would set all the terminals to print to the server IP address.
The server would emulate a printer (as far as the terminals are concerned).
The server then needs to parse and database the messages or write them to individual log files for later processing. (The individual files are so I know which terminal sent the message.)
I've learned that PCL uses port 9100 so, I presume, my service should as well.
The capture process could be as simple as listening for connections on 9100 and slurping up all the data... Not positive since I haven't dealt with PCL network printers, just postscript ones, but it seems logical to guess it's a uninteractive stream since people deal with "pcl files" as well as pcl printers. That would give you raw PCL data. Once you have that, the pcltotxt tool might help you. You might have to force the print driver to output PCL5 instead of PCL6.
I tried using Windump - a port of tcpdump - to see if I could catch anything. I set it to listen for incoming on port 9100 but couldn't see anything. (I could see traffic if I listened for other devices on the LAN.) This caused me to think that the stream might be interactive.
Any other ideas? I'll mess around with tcpdump/Windump between to laptops and see if I can understand how it's supposed to work.
---------- Post updated at 07:32 PM ---------- Previous update was at 06:49 PM ----------
Right. Two XP laptops.
Source: 192.168.3.3, with a generic/text printer driver pointing to 192.168.3.4, port 9100.
Dest: 192.168.3.4 (Hohner) running WinDump. WinDump listening to port 9100.
Here's what I got when I try to print "Hallo World!" from Notepad on source machine ...
It keeps repeating this and the print queue on source machine never clears. It looks like the source is expecting a response from dest.
Any ideas how to spoof a response from the "printer"?
Am I mad?
Last edited by transistor; 01-22-2010 at 03:46 PM..
Reason: Improved clarity - I hope!
What protocol did you select when creating the TCP port? Windows auto-chooses for some port numbers I think, and might have forced it to something other than raw.
That might be my problem. Maybe WinDump is catching the incoming traffic but there is no application/service listening so the port isn't open and the source isn't getting a response. Have I got that right?
That might be my problem. Maybe WinDump is catching the incoming traffic but there is no application/service listening so the port isn't open and the source isn't getting a response. Have I got that right?
Maybye. Haven't used that tool.
Quote:
Hmm, so how do I open a port for listening?
It's already open, but nothing's there to listen. try netcat.
I would start by creating a PCL printer that prints to disk, then examine the disk file created to see if there is anything useful in it. I don't think you will find anything like a text file with one or two escape sequences at the beginning of it. You may be better off if you can create a generic/text only printer.
I am trying to get an output using the command
tcpdump -w /tmp/syn.pcap 'tcp & (tcp-syn) != 0'
But I am getting the error:
tcpdump: no suitable device found
Is there an alternate command to achieve this? (4 Replies)
I am trying to get a network printer to work that currently works from my Unix (5.0.7) server when printing text files only. When I try to print post script files like a PDF file I get all of the controls so I am not sure if I have my printer configuration setup properly in Unix
The printer... (1 Reply)
Help!
I have to solve an urgent problem!
I have a Solaris 10 server, where I created a line of printing with the command
# /usr/sbin/lpadmin -p IL_Printer -s pv24002 -v /dev/null -m netstandard_foomatic -A write -n /usr/lib/lp/model/ppd/system/foomatic/Canon/cnl66e1.ppd.gz -o... (0 Replies)
Hello all,
I need to setup a print server that listens on three separate network interfaces, and sends jobs to the corresponding print queue. Example:
192.168.69.100 - printer1 -> Out to 139.177.69.100:9100
192.168.69.101 - printer2 -> Out to 139.177.69.101:9100
192.168.69.102 - printer2 ->... (3 Replies)
I've looked around and am able to print landscape to a PCL 5 printer with this command:
lp -o landscape -o cpi=20 -o page-right=30 -o page-left=30
-d <printer> <file>.
Which gives me a nice 200 columns.
But, when I send the same output and the same commands to a PCL 6 printer, it comes... (3 Replies)
I need to setup a HP 4000 PCL printer - it seems out of the box - I can only can use PostScript. Any guidance is appreciated.
In the SCO world - I used HPNP with no problems. (2 Replies)
I installed an old laser printer using a print server. I can use from windows but not from unix. I set up the printer in unix as a remote printer and can ping the print server from a unix promt. I am thinking that I must open a port to the print server. Any suggestions? (3 Replies)
Hi All :
I wanted a unix command by which I could be able to print the output to a file and at the same time to a printer. Any help will be greatly appreciated.
Regards,
Ramamurthy Dasari (1 Reply)
Hi,
i willbe very much grateful to u if u help me out..
if i simply connect pbx machine to printer by serial port RS232 then we find this view:
But i want to capture this data into database automatically when the pbx is running.The table in database will contain similar to this view inthe... (1 Reply)
OS: HP-UX B.11.11 U
Printer: HP 8150.
I require a font to be downloaded to the printer and used.
As documented the steps are:
1. Tell printer to accept font
2. Send the font to the printer
3. Make the font permanent
4. Select font for use
or in PCL
1. <Esc>*c90D
2.... (0 Replies)