FaxMan Jr
Faxing Process

Quick Fax Primer

In this section we’ll give you a quick overview of the faxing process in general. This will help you to better understand the event notifications that FaxMan Jr. sends to your application.

Phases of the Fax Process

The standard faxing process is documented in an exciting little report from the ITU, in which all of the various aspects of a "standard" fax session are described. In this report, the faxing process is broken down into several phases, labeled A through E, as follows:

 

Phase A – In this phase, the fax session is initiated. The specification leaves this section somewhat vague, implying that a fax session can be initiated in a number of ways, but practically speaking a fax session is initiated by dialing a phone number and sending that high-pitched fax tone that we’ve all become familiar with. Phase A is completed once both sides are convinced that they’re talking to another fax machine.

 

Phase B – Phase B is a negotiation phase, in which both fax devices agree on the specific parameters for the fax session (speed, resolution, etc.) It is also in this phase that both fax devices transmit an identification string (referred to in this documentation as the LocalID or RemoteID). This ID string can be up to 20 characters long.

 

Phase C – The actual data transmission occurs in Phase C. This is where your fax session will generally spend the bulk of its time.

 

Phase D – This is another negotiation phase, in which the receiving fax device confirms that it received the message OK, and in which the sending device informs the receiver whether there are more pages to be sent. If there are more pages to be sent, the fax session returns to Phase B. Note that while it is theoretically possible for new fax parameters to be negotiated for each page, in practice this very rarely occurs.

 

Phase E – This is the call disconnect phase. The fax devices agree to stop communicating and the phone line is then hung up.

 

FaxMan Jr. sends your application notification messages (through the Status/FaxStatus events) throughout each phase of a normal fax session. The following chart illustrates the general order in which you will receive these status event notification messages, for both sending and receiving:

 

 

Receiving Events

Sending Events

Initializing Modem

Initializing Modem

Initializing Modem for Receive

Initializing Faxmodem for sending

Waiting for Ring...

Dialing...

Answering...

Waiting to Connect

Negotiating...

Connected to remote fax machine...

Receiving Fax Page data...

Negotiating...

End of Page...

Sending Fax Page...

Send Complete

Sending Page Data...

Comm Port Closed

Sending Page, 10% Complete

Sending Page, 20% Complete

Sending Page, 30% Complete

Sending Page, 40% Complete

Sending Page, 50% Complete

Sending Page, 60% Complete

Sending Page, 70% Complete

Sending Page, 80% Complete

Sending Page, 90% Complete

Sending Page, 100% Complete

Send Complete...

Comm Port Closed


    

Note that not all of these messages are guaranteed to be received by your application. In general, you can only be assured that the FAXST_COMPLETE event will be received when the fax session is completed.

 

 


© 2014 Data Techniques, Inc. All Rights Reserved.

Send comments on this topic.