Here is in essence what my PCL file looks like with embedded codes. The fax codes are embedded where they are because that's the only location where RightFax even recognizes that they exist.

 ^[%[email protected]



... ^[*p6x3XHello world^[(s3T<TOFAXNUM:814-555-6789><COVER><FROMNAME:Shashank>^L...%1245X

I use the (s3T to pick the Courier font, without which RightFax does not recognize the codes. However, when this file gets sent to the RightFax server via the HPFAX queue, this is the error message I see (when I look at the RightFax FaxUtil):

Invalid Characters in Phone Number The number shows up as XFAXNUM:814-555-6789.

What am I missing?

+1  A: 

Is this PCL being generated by you or some print driver? If it's being created by you then you should be able to place the Embedded codes wherever you want. There should be no need for font selction on the codes. RightFax simply looks for the < > as text and tries to process what is in the middle. You also don't need any of the PJL as this is ignored by RightFax. Our common practice has been to insert Embedded codes at or near the top, in fact, where possible, we place all embedded codes on it's own page and then use the DELETEFIRSTPAGE code so that page isn't faxed.

Here is an example:

...rest of the PCL data...

I'm assuming that the ^[ is your editors representation of the Escape character mine is represented by and the formfeed is . If, for some reason, you are modifying this stream outside of you app, ensure that the editor isn't mucking with the file. You might also want to pause the HPFAX printer queue, send the job, and then check the .SPL file that is created (c:\windows\system32\spool\printers) to ensure that the file still looks the same. If this is some app that is 'printing' the file through the HPFAX queue then it will get processed by the driver associated with it and some strange things can happen. The better option for testing here is is to copy the file to the HPFAX queue such as:

copy /b <yourfile> \\server\hpfax

This may be what you are doing already, I'm just trying to cover all basis.

Douglas Anderson
The PCL file is being generated by a driver. I was using a PCL file viewer to 'print' the file to the HPFAX queue. This was causing strange things to happen. Copying the file to the HPFAX queue was an excellent suggestion, so was pausing the queue to look at the SPL file. Thank you.