|
|
|
|
What really happens when you fax (1 of many)Class 1(a quick editorial comment. Duncan wrote this, primarily to get familiar with what happens during faxing so he could answer questions in the newsgroup. Oddly enough, this venture made him decide to stay away from faxing, and we haven't seen him in the fax newsgroup since.) The CCITT TR29.2 committee accepted the Class 1 standard for faxing in 1988. At the same time the Class 2 standard was voted on, but not accepted. Some software and hardware manufacturers then unofficially adopted the Class 2 standard. Since the unofficial Class 2 standard was so widely used, the CCITT TR29.2 committee declared the official Class 2 standard would be designated as Class 2.0. In the Class 1 standard, most of the work of sending the fax is done by the application. In class 2 and 2.0, the modems handle a large part of the negotiation. In this tech tip, I will focus on the Class 1 standard (Class 2 and Class 2.0 will be visited in later documents). Before getting into the details of a Class 1 fax transmission, here are a few quirks about faxing to keep in mind.
These quirks in the faxing protocol can lead to some rather interesting behavior. Since carrier is dropped and raised many times during a fax session and is not actually required during the page send, you can end up with a situation in which the connection has dropped and the sender keeps on sending the fax with no way of realizing what happened. Sending a faxThe process of sending a fax using the Class 1 standard can be broken into six steps: configuring your modem for faxing, dialing, negotiation, sending a page, ending the page, and hanging up. Configuring your modem for faxingTo set up your fax to send or receive according to the class 1 standard, you need to send the command: AT+FCLASS=1 DialingAfter setting the fax class, the dialing is accomplished by sending the ATDTxxxxx command. When you dial with the intention of faxing, it will automatically assume a baud rate of 300 baud. This is the rate that is used for negotiating the fax. NegotiationIn the negotiation stage, things are starting to get a little tricky. Once the connection is made, the remote fax will send the NSF frame. The NSF frame contains user requirements that are not part of the fax class 1 standard. After receiving the NSF frame, the sender will send the AT+FRH=3 command. The +FRH and +FTH (receive and transmit HDLC) commands are used for negotiating the fax session. The parameter specified on the command determines the baud rate that will be used as well as the training time required and some assumptions about the hardware involved.
Not all fax machines are required to support all the baud rates. Only the lower ones are required. The normal baud rate for the negotiations is 300 baud, so you will see +FRH=3 and +FTH=3 more any of the other values. When the +FRH command is sent, the carrier is dropped (you may receive a NO CARRIER from the modem at this point) and is raised again at the new baud rate (You should receive a CONNECT from the modem at this point). In addition, the +FRH command tells the other end that it should send some information. There is now parameter to +FRH that indicates what information should be sent. What you get depends on where you are in the faxing process. After the AT+FRH=3 command is sent in response to receiving the NSF frame, the remote fax will then send the CSI (Call Station ID) frame. This frame is transmitted backwards. The local fax will send AT+FRH=3 again causing the remote fax to send the DIS (Digital Identification Signal) frame. The DIS frame contains a bitmask that describes the capabilities of fax sender and receiver. The contents of the DIS frame are:
At this point, we will transmit the AT+FTH=3 which will cause the remote fax to drop the carrier twice. The modem will reply with CONNECT when it is time for us to send the information. The first time we will send the TSI frame. The second time we will send the DCS frame. After the last frame has been sent, we will send the AT+FTS=8 (fax transmit silence – it will transmit 80ms of silence) command. This command will drop the carrier and wait 80ms. After waiting 80ms, we can send the training data. This is just a series of NULLS lasting for 1.5 seconds plus or minus 10%. The AT+FTM=xx command is sent to drop the carrier and negotiate a new baud rate (this takes the same parameter for the baud rate as the +FRH command) and after the modem returns “CONNECT”, the training data is sent. The baud rate used here is the same baud rate that will be used to send the data. After the training data has been sent, the AT+FRH=3 command is sent again and then we get the CFR frame. Sending a pageFinally, after all the negotiations, we can send a page of the fax. Compared to the fax negotiation, this is easy. First we will send the AT+FTM=xx command to drop the carrier and negotiate the baud rate. After the modem replies with CONNECT, and we can transmit the page. Ending the pageAfter the page has been sent, send the AT+FTS=8 command to wait 80ms and then the AT+FTH=3 command to drop the drop the speed to 300 baud. When we get the “CONNECT” response from the modem, we can send the end of page frame. After sending the last line of a page frame, we send the AT+FRH=3 command so that we can receive the MCF frame. The MCF frame is the receiver telling the sender whether it received the page successfully or not. Once we have received that frame, we send the AT+FTH=3 command, when the modem responds with “CONNECT”, we can send the DCN frame. The “Sending a page” and “Ending a page” steps will be performed for each page of the fax. Hanging upThis is probably the easiest step of the entire process. Just send the ATH0 command to the modem to hang it up. Receiving a faxReceiving a fax is very similar to the sending process. Again, it can be broken into six steps: configuring your modem for faxing, answering, negotiation, receiving a page, ending the page, and hanging up. Configuring your modem for faxingThis step is the same as it is for sending a fax, send the AT+FCLASS=1 command to your modem. AnsweringAfter configuring your modem for Class 1 faxing, answering the call is just like answering a data call. APRO will wait for a “RING” response from the modem indicating an incoming call. It will then send the ATA command to tell the modem to answer the call. NegotiationAs with sending, when the connection is made, we will assume it was made at 300 baud. We will send the NSF frame and drop and the modem to connect twice. The first reconnect, we will send the CSI frame, the second we will send the DSI frame. After sending the required frames, send the AT+FRH=3 and receive the TSI frame. Send the AT+FRH=3 command again, and send the DCS frame. Now, we can send the AT+FRM=xx command to set the baud rate for receiving the training data. Wait for the CONNECT; when we get it, it will be followed by the training data, then the carrier will drop. Once that happens, Send the AT+FTH=3 command, and send the CFR frame. Receiving a pageReceiving a page is fairly simple. Send the AT+FRM=xx command to receive data. The data will follow once the modems reconnect. After the page is sent, the carrier will drop. Ending the pageOnce the carrier drops after receiving a page, send the AT+FRH=3 command and wait for the EOP frame. Once the EOP frame has been received, send the AT+FTH=3 command and send the MCF frame. After that, send the AT+FRH=3 command and wait for the DCN frame. Hanging upThis is probably the easiest step of the entire process. We send the ATH0 command to the modem to hang it up. Summary of Class 1 fax commandsHere is a summary of all the commands used by the Class 1 faxing standard. +FCLASSThe +FCLASS command is used for inquiring and setting the fax class. If you call it with an AT+FCLASS?, the modem will return the current state of the modem. For example, a return value of 1 indicates the modem is ready for Class 1 faxing.
If you call it with an AT+FCLASS=?, the modem will return a comma separated list of supported fax classes. For example, a modem might return “0,1” to indicate data and class 1 faxing. The AT+FCLASS=x value will set the modem to use the specified fax class. +FTS and +FRSThe +FTS and +FRS commands will transmit and receive silence respectively. They take a single parameter that specifies the tens of milliseconds of silence that is expected. For example, AT+FTS=8 will transmit 80ms of silence. After transmitting silence, an OK is returned from the modem. When receiving silence, an OK will be returned only if the expected amount of silence is heard on the line. +FTH and +FRHThese commands are used at 300 baud to handle all the negotiation between the two faxes. The +FTH command will cause data framed in the HDLC protocol to be transmitted at the baud rate specified. The end of the data transmitted is indicated by the <DLE><ETX> characters.
The +FRH command will receive data framed in the HDLC protocol at the specified baud rate. +FTM and +FRMThe +FTM and +FRM commands transmit and receive the fax respectively. They will set the baud rate to the parameter specified (AT+FRM=96 to receive a fax at 9600 baud). The <DLE> <ETX> characters will indicate the end of the data. After the fax as has finished, the carrier will be dropped. There is really no error checking at all while the page is sending or being received. +FCERROR and +F4The +FCERROR is used to indicate when a carrier other than what is expected on a +FTM, +FRM, +FTH or +FRH command is found. +FMI, +FMM and +FMRThe +FMI, +FMM and +FMR commands are used to request information about the modem. AT+FMI? will request the manufacturer, AT+FMM? will request the model, and AT+FMR? will request the revision number. The commands are optional and are not supported on all modems. +FLOThe +FLO is an optional command used to set the flow control. It takes a single parameter that indicates the flow control:
For example, AT+FLO=0 would turn XON/XOFF off. +FLO is not supported on all modems and +FLO=2 is very optional. +FPRThe +FPR command allows the baud rate to be fixed at a specific rate. This command can be given at the same time as the +FCLASS=1 command. The command may not be supported on all modems.
Example: +FPR=0 to set the baud rates to be automatically determined. How does this show up in the dispatch log?Now that we have covered the theory, let’s see how the faxing process works from the point of the dispatch log. You can generate a dispatch log by setting the Logging property of your port to tlOn and then specifying an explicit path and file name for you LogName property. For faxing, the default log size is too small; you will need to adjust it up (add a couple of zeros to the end of the log size – that should suffice). In the dispatch logs, the various states of the faxing process are shown on the dispatch log lines with a type field of “Fax”. Fax class 1 receiving states start with “rf1” and fax class 1 transmitting states start with “tf1”. The full list of the fax subtypes is in the AwFax.pas unit. Receiving a faxAPRO v3.03Compiler : Delphi 5Operating System : Windows NT 5.0 Time Type SubType Data OtherData-------- -------- ------------ -------- ---------0000.012 TrDatChg Avail 00000001 0000.013 TrgHdAlc Window 003A0326 0001.032 User 00000000 Receive_one_page,_Class10001.032 TrDatChg Avail 00000001 0001.032 TrigAllc Timer 00000008 0001.032 TrigAllc Timer 00000010 0001.032 TrigAllc Status 0000001B (Output buffer free)0001.032 TrigAllc Status 00000024 (Output buffer used)0001.032 TrigAllc Status 00000029 (Modem status)The default INIT string sent before all faxes. If you have a custom modem init, it would show up before this one. 0001.132 Dispatch WriteCom 00000001 A0001.132 Dispatch WriteCom 00000001 T0001.132 Dispatch WriteCom 00000001 E0001.132 Dispatch WriteCom 00000001 00001.132 Dispatch WriteCom 00000001 Q0001.132 Dispatch WriteCom 00000001 00001.132 Dispatch WriteCom 00000001 V0001.132 Dispatch WriteCom 00000001 10001.132 Dispatch WriteCom 00000001 X0001.132 Dispatch WriteCom 00000001 40001.132 Dispatch WriteCom 00000001 S0001.133 Dispatch WriteCom 00000001 00001.133 Dispatch WriteCom 00000001 =0001.133 Dispatch WriteCom 00000001 00001.133 Dispatch WriteCom 00000001 S0001.133 Dispatch WriteCom 00000001 20001.133 Dispatch WriteCom 00000001 =0001.133 Dispatch WriteCom 00000001 40001.133 Dispatch WriteCom 00000001 30001.133 Dispatch WriteCom 00000001 [0D]0001.133 TrDatChg Timer 00000008 [B6][00][00][00]0001.133 TrDatChg Timer 00000008 [B6][00][00][00]0001.149 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A] Set fax class 1 0001.251 Dispatch WriteCom 00000001 A0001.251 Dispatch WriteCom 00000001 T0001.251 Dispatch WriteCom 00000001 +0001.251 Dispatch WriteCom 00000001 F0001.251 Dispatch WriteCom 00000001 C0001.251 Dispatch WriteCom 00000001 L0001.251 Dispatch WriteCom 00000001 A0001.251 Dispatch WriteCom 00000001 S0001.251 Dispatch WriteCom 00000001 S0001.251 Dispatch WriteCom 00000001 =0001.251 Dispatch WriteCom 00000001 10001.252 Dispatch WriteCom 00000001 [0D]0001.252 TrDatChg Timer 00000008 [B6][00][00][00]0001.252 TrDatChg Timer 00000008 [B6][00][00][00]0001.262 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A] Find out what receive modes the modem supports? 0001.475 Dispatch WriteCom 00000001 A0001.475 Dispatch WriteCom 00000001 T0001.475 Dispatch WriteCom 00000001 +0001.475 Dispatch WriteCom 00000001 F0001.475 Dispatch WriteCom 00000001 R0001.475 Dispatch WriteCom 00000001 M0001.475 Dispatch WriteCom 00000001 =0001.475 Dispatch WriteCom 00000001 ?0001.475 Dispatch WriteCom 00000001 [0D] In this case we support 300 baud, 2400 up to 14400. 0001.475 TrDatChg Timer 00000008 [B6][00][00][00]0001.487 Dispatch ReadCom 0000000E [0D][0A]3,24,48,72,70001.494 Dispatch ReadCom 0000000E 3,74,96,97,98,0001.503 Dispatch ReadCom 0000000E 121,122,145,140001.509 Dispatch ReadCom 00000009 6[0D][0A][0D][0A]OK[0D][0A]0001.509 TrgHdAlc Procedure 00000000 0001.509 Fax rfInit 00000000 We reset the fax class as a safeguard 0001.612 Dispatch WriteCom 00000001 A0001.612 Dispatch WriteCom 00000001 T0001.612 Dispatch WriteCom 00000001 +0001.612 Dispatch WriteCom 00000001 F0001.612 Dispatch WriteCom 00000001 C0001.612 Dispatch WriteCom 00000001 L0001.612 Dispatch WriteCom 00000001 A0001.612 Dispatch WriteCom 00000001 S0001.613 Dispatch WriteCom 00000001 S0001.613 Dispatch WriteCom 00000001 =0001.613 Dispatch WriteCom 00000001 10001.613 Dispatch WriteCom 00000001 [0D]0001.613 TrDatChg Timer 00000008 [B6][00][00][00]0001.613 TrDatChg Timer 00000008 [B6][00][00][00]0001.613 TrDatChg Timer 00000010 [12][00][00][00]0001.624 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0001.624 Trigger Avail 00000006 0001.624 Fax rf1Init1 00000000 0001.624 Fax rf1Init1 00000000 Wait for the phone to ring 0001.624 TrDatChg Timer 00000008 Deactivated0002.627 Trigger Timer 000000100002.627 Fax rfWaiting 000000000002.627 TrDatChg Timer 00000010 [12][00][00][00]0003.680 Trigger Timer 00000010...0071.644 TrDatChg Timer 00000010 [12][00][00][00]0072.647 Trigger Timer 000000100072.647 Fax rfWaiting 000000000072.647 TrDatChg Timer 00000010 [12][00][00][00]0073.700 Trigger Timer 000000100073.700 Fax rfWaiting 00000000 0073.700 TrDatChg Timer 00000010 [12][00][00][00]0074.590 Dispatch ReadCom 00000008 [0D][0A]RING[0D][0A]0074.590 Trigger Avail 000000080074.590 Fax rfWaiting 000000000074.590 Fax rfWaiting 000000000074.590 TrDatChg Timer 00000008 [B6][00][00][00]0074.590 Fax rfWaiting 000000000074.590 Fax rfWaiting 000000000074.590 TrDatChg Timer 00000008 [B6][00][00][00] We got a ring, tell the modem to answer the call. 0074.590 Fax rfAnswer 000000000074.690 Dispatch WriteCom 00000001 A0074.690 Dispatch WriteCom 00000001 T0074.690 Dispatch WriteCom 00000001 A0074.690 Dispatch WriteCom 00000001 [0D]0074.690 TrDatChg Timer 00000008 [B6][00][00][00]0074.690 TrDatChg Timer 00000008 D[04][00][00]0074.740 Trigger Timer 00000010 Every second, we have a status timer that fires. You can seehere that it’s taken 5 seconds to see that there is a fax on the other end. 0074.740 Fax rf1SendCSI 000000000074.740 TrDatChg Timer 00000010 [12][00][00][00]0075.793 Trigger Timer 000000100075.793 Fax rf1SendCSI 00000000 0075.794 TrDatChg Timer 00000010 [12][00][00][00]0076.847 Trigger Timer 000000100076.847 Fax rf1SendCSI 00000000 0076.848 TrDatChg Timer 00000010 [12][00][00][00]0077.902 Trigger Timer 000000100077.902 Fax rf1SendCSI 00000000 0077.902 TrDatChg Timer 00000010 [12][00][00][00]0078.956 Trigger Timer 000000100078.956 Fax rf1SendCSI 000000000078.956 TrDatChg Timer 00000010 [12][00][00][00]0079.959 Trigger Timer 000000100079.959 Fax rf1SendCSI 000000000079.959 TrDatChg Timer 00000010 [12][00][00][00] The local fax acknowledges that the remote is a fax and generates a “CONNECT”. 0080.163 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0080.163 Trigger Avail 0000000B We send the CSI frame (Call Station ID) property. It is sent backwards. In this case we sent “MY STATION ID”. It is padded to 20 characters and ends with an “C” followed by an ETX (0x03) and an 0xFF. 0080.163 Fax rf1SendCSI 00000000 0080.163 Fax rf1SendCSI 00000000 0080.183 Dispatch WriteCom 00000001 [FF]0080.183 Dispatch WriteCom 00000001 [03]0080.183 Dispatch WriteCom 00000001 C0080.183 Dispatch WriteCom 00000001 [20]0080.183 Dispatch WriteCom 00000001 [20]0080.183 Dispatch WriteCom 00000001 [20]0080.183 Dispatch WriteCom 00000001 [20]0080.183 Dispatch WriteCom 00000001 [20]0080.183 Dispatch WriteCom 00000001 [20]0080.183 Dispatch WriteCom 00000001 [20]0080.183 Dispatch WriteCom 00000001 D0080.184 Dispatch WriteCom 00000001 I0080.184 Dispatch WriteCom 00000001 [20]0080.184 Dispatch WriteCom 00000001 N0080.184 Dispatch WriteCom 00000001 O0080.184 Dispatch WriteCom 00000001 I0080.184 Dispatch WriteCom 00000001 T0080.184 Dispatch WriteCom 00000001 A0080.184 Dispatch WriteCom 00000001 T0080.184 Dispatch WriteCom 00000001 S0080.184 Dispatch WriteCom 00000001 [20]0080.184 Dispatch WriteCom 00000001 Y0080.184 Dispatch WriteCom 00000001 M0080.184 Dispatch WriteCom 00000001 [10]0080.184 Dispatch WriteCom 00000001 [03]0080.184 TrDatChg Timer 00000008 [B6][00][00][00] The modems will reconnect after the CSI frame was sent. 0081.037 Trigger Timer 00000010 0081.037 Fax rf1SendDIS 00000000 0081.037 TrDatChg Timer 00000010 [12][00][00][00]0082.045 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0082.045 Trigger Avail 0000000B Now we send the DIS (Digital Identification Signal) frame. The DIS is a bitmask that describes what our capabilities are. This is not reversed. 0082.045 Fax rf1SendDIS 00000000 0082.045 Fax rf1SendDIS 00000000 0082.066 Dispatch WriteCom 00000001 [FF]0082.066 Dispatch WriteCom 00000001 [13]0082.066 Dispatch WriteCom 00000001 [80]0082.066 Dispatch WriteCom 00000001 [00]0082.066 Dispatch WriteCom 00000001 N0082.066 Dispatch WriteCom 00000001 [F9]0082.066 Dispatch WriteCom 00000001 [00]0082.066 Dispatch WriteCom 00000001 [10]0082.066 Dispatch WriteCom 00000001 [03]0082.066 TrDatChg Timer 00000008 [B6][00][00][00]0082.066 Trigger Timer 00000010 0082.066 Fax rf1SendDIS 00000000 0082.066 TrDatChg Timer 00000010 [12][00][00][00] We get an OK after sending the DIS frame 0082.463 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0082.463 Trigger Avail 00000006 0082.463 Fax rf1SendDIS 00000000 0082.463 Fax rf1SendDIS 00000000 We send an AT+FRH=3 to set the baud rate to 300 and receive HDLC data. 0082.906 Dispatch WriteCom 00000001 A0082.906 Dispatch WriteCom 00000001 T0082.908 Dispatch WriteCom 00000001 +0082.908 Dispatch WriteCom 00000001 F0082.908 Dispatch WriteCom 00000001 R0082.908 Dispatch WriteCom 00000001 H0082.908 Dispatch WriteCom 00000001 =0082.908 Dispatch WriteCom 00000001 30082.908 Dispatch WriteCom 00000001 [0D]0082.908 TrDatChg Timer 00000008 [B6][00][00][00]0082.908 TrDatChg Timer 00000008 6[00][00][00]0083.109 Trigger Timer 00000010 0083.109 Fax rf1CollFrms 00000000 0083.109 TrDatChg Timer 00000010 [12][00][00][00] We have connected at 300 baud, so the modem sends a “CONNECT”. 0083.285 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0083.285 Trigger Avail 0000000B 0083.285 Fax rf1CollFrms 00000000 0083.285 Fax rf1CollFrms 00000000 0083.286 TrDatChg Timer 00000008 [B6][00][00][00] We start getting HDLC data. In this case we get the remotes station ID: “Kl 719 260 7151“. Again this is backwards and ends with the “C” ETX 0xff. 0083.662 Dispatch ReadCom 00000001 [FF]0083.662 Trigger Avail 00000001 0083.662 Fax rf1CollFrms 00000000 0083.662 Fax rf1CollFrms 00000000 0083.689 Dispatch ReadCom 00000001 [03]0083.689 Trigger Avail 00000001 0083.689 Fax rf1CollFrms 00000000 0083.689 Fax rf1CollFrms 00000000 0083.716 Dispatch ReadCom 00000001 C0083.716 Trigger Avail 00000001 0083.716 Fax rf1CollFrms 00000000 0083.716 Fax rf1CollFrms 00000000 0083.742 Dispatch ReadCom 00000001 10083.742 Trigger Avail 00000001 0083.742 Fax rf1CollFrms 00000000 0083.742 Fax rf1CollFrms 00000000 0083.769 Dispatch ReadCom 00000001 50083.769 Trigger Avail 00000001 0083.769 Fax rf1CollFrms 00000000 0083.769 Fax rf1CollFrms 00000000 0083.796 Dispatch ReadCom 00000001 10083.796 Trigger Avail 00000001 0083.796 Fax rf1CollFrms 00000000 0083.796 Fax rf1CollFrms 00000000 0083.822 Dispatch ReadCom 00000001 70083.822 Trigger Avail 00000001 0083.822 Fax rf1CollFrms 00000000 0083.822 Fax rf1CollFrms 00000000 0083.849 Dispatch ReadCom 00000001 [20]0083.849 Trigger Avail 00000001 0083.849 Fax rf1CollFrms 00000000 0083.849 Fax rf1CollFrms 00000000 0083.876 Dispatch ReadCom 00000001 00083.876 Trigger Avail 00000001 0083.876 Fax rf1CollFrms 00000000 0083.876 Fax rf1CollFrms 00000000 0083.902 Dispatch ReadCom 00000001 60083.902 Trigger Avail 00000001 0083.902 Fax rf1CollFrms 00000000 0083.902 Fax rf1CollFrms 00000000 0083.929 Dispatch ReadCom 00000001 20083.929 Trigger Avail 00000001 0083.929 Fax rf1CollFrms 00000000 0083.929 Fax rf1CollFrms 00000000 0083.956 Dispatch ReadCom 00000001 [20]0083.956 Trigger Avail 00000001 0083.956 Fax rf1CollFrms 00000000 0083.956 Fax rf1CollFrms 00000000 0083.982 Dispatch ReadCom 00000001 90083.982 Trigger Avail 00000001 0083.982 Fax rf1CollFrms 00000000 0083.982 Fax rf1CollFrms 00000000 0084.010 Dispatch ReadCom 00000001 10084.010 Trigger Avail 00000001 0084.010 Fax rf1CollFrms 00000000 0084.010 Fax rf1CollFrms 00000000 0084.036 Dispatch ReadCom 00000001 70084.036 Trigger Avail 00000001 0084.036 Fax rf1CollFrms 00000000 0084.036 Fax rf1CollFrms 00000000 0084.062 Dispatch ReadCom 00000001 [20]0084.062 Trigger Avail 00000001 0084.062 Fax rf1CollFrms 00000000 0084.062 Fax rf1CollFrms 00000000 0084.089 Dispatch ReadCom 00000001 [20]0084.089 Trigger Avail 00000001 0084.089 Fax rf1CollFrms 00000000 0084.089 Fax rf1CollFrms 00000000 0084.116 Dispatch ReadCom 00000001 [20]0084.116 Trigger Avail 00000001 0084.116 Fax rf1CollFrms 00000000 0084.116 Fax rf1CollFrms 00000000 0084.142 Dispatch ReadCom 00000001 [20]0084.142 Trigger Avail 00000001 0084.142 Fax rf1CollFrms 00000000 0084.142 Fax rf1CollFrms 00000000 0084.142 Trigger Timer 00000010 0084.142 Fax rf1CollFrms 00000000 0084.142 TrDatChg Timer 00000010 [12][00][00][00]0084.169 Dispatch ReadCom 00000001 [20]0084.169 Trigger Avail 00000001 0084.169 Fax rf1CollFrms 00000000 0084.169 Fax rf1CollFrms 00000000 0084.196 Dispatch ReadCom 00000001 [20]0084.196 Trigger Avail 00000001 0084.196 Fax rf1CollFrms 00000000 0084.196 Fax rf1CollFrms 00000000 0084.222 Dispatch ReadCom 00000001 [20]0084.222 Trigger Avail 00000001 0084.222 Fax rf1CollFrms 00000000 0084.222 Fax rf1CollFrms 00000000 0084.249 Dispatch ReadCom 00000001 [20]0084.249 Trigger Avail 00000001 0084.249 Fax rf1CollFrms 00000000 0084.249 Fax rf1CollFrms 00000000 0084.276 Dispatch ReadCom 00000001 10084.276 Trigger Avail 00000001 0084.276 Fax rf1CollFrms 00000000 0084.276 Fax rf1CollFrms 00000000 0084.302 Dispatch ReadCom 00000001 K0084.302 Trigger Avail 00000001 0084.302 Fax rf1CollFrms 00000000 0084.302 Fax rf1CollFrms 00000000 0084.333 Dispatch ReadCom 00000008 [10][03][0D][0A]OK[0D][0A]0084.333 Trigger Avail 00000008 0084.333 Fax rf1CollFrms 00000000 0084.333 Fax rf1CollFrms 00000000 0084.333 TrDatChg Timer 00000008 [B6][00][00][00] We renegotiate to 300 baud (again) and expect to receive HDLC data. 0084.373 Dispatch WriteCom 00000001 A0084.373 Dispatch WriteCom 00000001 T0084.373 Dispatch WriteCom 00000001 +0084.373 Dispatch WriteCom 00000001 F0084.373 Dispatch WriteCom 00000001 R0084.373 Dispatch WriteCom 00000001 H0084.373 Dispatch WriteCom 00000001 =0084.373 Dispatch WriteCom 00000001 30084.373 Dispatch WriteCom 00000001 [0D]0084.373 TrDatChg Timer 00000008 [B6][00][00][00] The renegotiation was successful 0084.386 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0084.386 Trigger Avail 0000000B 0084.386 Fax rf1CollFrms 00000000 0084.387 TrDatChg Timer 00000010 [12][00][00][00]0084.387 Fax rf1CollFrms 00000000 0084.387 TrDatChg Timer 00000008 [B6][00][00][00] This time we will get the bitmask indicating the remotes capabilities. This is FF 13 83 00 06 2A 95 00 followed by 10 03 to indicate the end. This is not reversed. 0084.409 Dispatch ReadCom 00000001 [FF]0084.409 Trigger Avail 00000001 0084.409 Fax rf1CollFrms 00000000 0084.409 Fax rf1CollFrms 00000000 0084.436 Dispatch ReadCom 00000001 [13]0084.436 Trigger Avail 00000001 0084.436 Fax rf1CollFrms 00000000 0084.436 Fax rf1CollFrms 00000000 0084.462 Dispatch ReadCom 00000001 [83]0084.462 Trigger Avail 00000001 0084.462 Fax rf1CollFrms 00000000 0084.462 Fax rf1CollFrms 00000000 0084.489 Dispatch ReadCom 00000001 [00]0084.489 Trigger Avail 00000001 0084.489 Fax rf1CollFrms 00000000 0084.489 Fax rf1CollFrms 00000000 0084.516 Dispatch ReadCom 00000001 [06]0084.516 Trigger Avail 00000001 0084.516 Fax rf1CollFrms 00000000 0084.516 Fax rf1CollFrms 00000000 0084.542 Dispatch ReadCom 00000001 x0084.542 Trigger Avail 00000001 0084.542 Fax rf1CollFrms 00000000 0084.542 Fax rf1CollFrms 00000000 0084.569 Dispatch ReadCom 00000001 [95]0084.569 Trigger Avail 00000001 0084.569 Fax rf1CollFrms 00000000 0084.569 Fax rf1CollFrms 00000000 0084.595 Dispatch ReadCom 00000001 [00]0084.595 Trigger Avail 00000001 0084.595 Fax rf1CollFrms 00000000 0084.595 Fax rf1CollFrms 00000000 0084.623 Dispatch ReadCom 00000002 [10][03]0084.623 Trigger Avail 00000002 0084.623 Fax rf1CollFrms 00000000 0084.623 Fax rf1CollFrms 00000000 0084.623 TrDatChg Timer 00000008 [B6][00][00][00] And the modem gives us an OK. 0084.632 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0084.632 Trigger Avail 00000006 0084.632 Fax rf1CollFrms 00000000 0084.633 TrDatChg Timer 00000010 [12][00][00][00]0084.633 Fax rf1CollFrms 00000000 We are planning on receiving the fax at 9600 baud, so we renegotiate to 9600 baud in preparation of receiving training data. 0084.673 Dispatch WriteCom 00000001 A0084.673 Dispatch WriteCom 00000001 T0084.673 Dispatch WriteCom 00000001 +0084.673 Dispatch WriteCom 00000001 F0084.673 Dispatch WriteCom 00000001 R0084.673 Dispatch WriteCom 00000001 M0084.673 Dispatch WriteCom 00000001 =0084.673 Dispatch WriteCom 00000001 90084.673 Dispatch WriteCom 00000001 60084.673 Dispatch WriteCom 00000001 [0D]0084.673 TrDatChg Timer 00000008 [B6][00][00][00] The renegotiation was successful. We are at 9600 baud. 0085.215 Dispatch ReadCom 0000000E [0D][0A]CONNECT[0D][0A][FF][FF] [FF]0085.215 Trigger Avail 0000000E We will get about 1.5 seconds a nulls. After the connect, we get 5 0xFFs followed by a lots of nulls. I have cut out a large section of the reception of the training data. 0085.215 Fax rf1StrtTrn 00000000 0085.215 Fax rf1StrtTrn 00000000 0085.222 Dispatch ReadCom 0000000E [FF][FF][00][00][00][00][00][00] [00][00][00][00][00][00]0085.222 Trigger Avail 00000011 0085.222 Fax rf1CollTrn 00000000 0085.233 Dispatch ReadCom 0000000E [00][00][00][00][00][00][00][00] [00][00][00][00][00][00]0085.233 Trigger Avail 0000000E 0085.233 Fax rf1CollTrn 00000000 0085.245 Dispatch ReadCom 0000000E [00][00][00][00][00][00][00][00] [00][00][00][00][00][00]<snip> 0086.528 Trigger Avail 0000000E 0086.528 Fax rf1CollTrn 00000000 0086.539 Dispatch ReadCom 0000000E [00][00][00][00][00][00][00][00] [00][00][00][00][00][00]0086.539 Trigger Avail 0000000E 0086.539 Fax rf1CollTrn 00000000 0086.551 Dispatch ReadCom 0000000E [00][00][00][00][00][00][00][00] [00][00][00][00][00][00]0086.551 Trigger Avail 0000000E 0086.551 Fax rf1CollTrn 00000000 0086.563 Dispatch ReadCom 0000000E [00][00][00][00][00][00][00][00] [00][00][00][00][00][00]0086.563 Trigger Avail 0000000E 0086.563 Fax rf1CollTrn 00000000 0086.574 Dispatch ReadCom 0000000E y[00][00][00][00][00][00][00][00] [00][00][00][00][00]0086.574 Trigger Avail 0000000E 0086.574 Fax rf1CollTrn 00000000 The training data terminates with 5 0xFFs followed by B1 BC 0086.586 Dispatch ReadCom 0000000E [00][F0][FF][FF][FF][FF][FF][B1] [BC]+[87]H[0E][D2]0086.586 Trigger Avail 0000000E 0086.586 Fax rf1CollTrn 00000000 0086.598 Dispatch ReadCom 0000000E [AC][FE][C9][C1][CE]z[82]S>[A1]D [A8][9D][FA]0086.598 Trigger Avail 0000000E 0086.598 Fax rf1CollTrn 00000000 0086.610 Dispatch ReadCom 0000000D [E0][18]d@$[8D][8E][B2][[90][AA]( [FF]0086.610 Trigger Avail 0000000D 0086.610 Fax rf1CollTrn 00000000 0086.637 Dispatch ReadCom 00000002 [10][03]0086.637 Trigger Avail 00000002 0086.637 Fax rf1CollTrn 00000000 0086.647 TrDatChg Timer 00000008 [B6][00][00][00] The carrier drops. We have finished training. 0086.647 Dispatch ReadCom 0000000E [0D][0A]NO[20]CARRIER[0D][0A]0086.647 Trigger Avail 0000000E 0086.647 Fax rf1FinTrn 00000000 0086.647 Fax rf1FinTrn 00000000 We will drop the speed back down to 300 baud so we can send our response to the training data. 0086.707 Dispatch WriteCom 00000001 A0086.707 Dispatch WriteCom 00000001 T0086.707 Dispatch WriteCom 00000001 +0086.707 Dispatch WriteCom 00000001 F0086.707 Dispatch WriteCom 00000001 T0086.707 Dispatch WriteCom 00000001 H0086.708 Dispatch WriteCom 00000001 =0086.708 Dispatch WriteCom 00000001 30086.708 Dispatch WriteCom 00000001 [0D]0086.708 TrDatChg Timer 00000008 [B6][00][00][00] We have reconnected at 300 baud. 0086.751 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0086.751 Trigger Avail 0000000B We send the CFR (Confirmation For Receive) to indicate that we got the training data. 0086.751 Fax rf1SendCFR 00000000 0086.751 Fax rf1SendCFR 00000000 0086.772 Dispatch WriteCom 00000001 [FF]0086.772 Dispatch WriteCom 00000001 [13]0086.772 Dispatch WriteCom 00000001 [84]0086.772 Dispatch WriteCom 00000001 [10]0086.772 Dispatch WriteCom 00000001 [03]0086.772 TrDatChg Timer 00000008 [B6][00][00][00]0086.772 Trigger Timer 00000010 0086.772 Fax rf1SendCFR 00000000 0086.772 TrDatChg Timer 00000010 [12][00][00][00]0087.778 Trigger Timer 00000010 0087.778 Fax rf1SendCFR 00000000 0087.778 TrDatChg Timer 00000010 [12][00][00][00] And the fram was sent OK 0088.062 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0088.062 Trigger Avail 00000006 0088.062 Fax rf1SendCFR 00000000 0088.062 Fax rf1SendCFR 00000000 Now we renegotiate to 9600 baud to get the fax 0088.102 Dispatch WriteCom 00000001 A0088.102 Dispatch WriteCom 00000001 T0088.102 Dispatch WriteCom 00000001 +0088.102 Dispatch WriteCom 00000001 F0088.102 Dispatch WriteCom 00000001 R0088.102 Dispatch WriteCom 00000001 M0088.102 Dispatch WriteCom 00000001 =0088.102 Dispatch WriteCom 00000001 90088.102 Dispatch WriteCom 00000001 60088.102 Dispatch WriteCom 00000001 [0D]0088.102 TrDatChg Timer 00000008 [B6][00][00][00] We have successfully renegotiated to 9600 baud 0088.661 Dispatch ReadCom 0000000E [0D][0A]CONNECT[0D][0A][FF][FF] [FF]0088.661 Trigger Avail 0000000E 0088.661 Fax rf1WtPgCnnct 00000000 0088.661 Fax rf1WtPgCnnct 00000000 We are expecting a page 0088.661 Fax rfStartPage 00000000 0088.661 TrDatChg Timer 00000010 [12][00][00][00]0088.661 TrDatChg Timer 00000008 [B6][00][00][00]0088.661 Fax rfGtPgDta 00000000 0088.661 TrDatChg Timer 00000010 [12][00][00][00]0088.661 TrDatChg Timer 00000008 [B6][00][00][00] And here it comes. This is fairly long, so I have cut out most of it. 0088.668 Dispatch ReadCom 0000000E [FF][FF][FF][FF][FF][FF][FF][FF] [FF][FF][FF][FF][FF][FF]0088.668 Trigger Avail 0000000E 0088.668 Fax rfGtPgDta 00000000 0088.668 TrDatChg Timer 00000008 [B6][00][00][00]0088.679 Dispatch ReadCom 0000000E [FF][FF][FF][FF][FF][FF][FF][FF] [FF][FF][FF][FF][FF][FF]0088.679 Trigger Avail 0000000E 0088.679 Fax rfGtPgDta 00000000 0088.679 TrDatChg Timer 00000008 [B6][00][00][00]0088.691 Dispatch ReadCom 0000000E [FF][FF][FF][FF][FF][FF][FF][FF] [FF][FF][FF][FF][FF][FF]0088.691 Trigger Avail 0000000E 0088.691 Fax rfGtPgDta 00000000 0088.691 TrDatChg Timer 00000008 [B6][00][00][00]0088.703 Dispatch ReadCom 0000000E [FF][FF][FF][FF][FF][FF][FF][FF] [FF][FF][FF][FF][FF][FF]0088.703 Trigger Avail 0000000E 0088.703 Fax rfGtPgDta 00000000 0088.703 TrDatChg Timer 00000008 [B6][00][00][00]0088.714 Dispatch ReadCom 0000000E [FF][FF][FF][FF][FF][FF][FF][FF] <snip> [FF][FF][FF][FF][FF][FF]0108.436 Trigger Avail 0000000E 0108.436 Fax rfGtPgDta 00000000 0108.436 TrDatChg Timer 00000008 [B6][00][00][00]0108.448 Dispatch ReadCom 0000000E [00][08][80][00][08][80][00][08] [80][00][FF][FF][FF][FF]0108.448 Trigger Avail 0000000E 0108.448 Fax rfGtPgDta 00000000 0108.448 TrDatChg Timer 00000008 [B6][00][00][00]0108.460 Dispatch ReadCom 0000000E [FF][FF][FF][FF][FF][FF][FF][FF] [FF][FF][FF][00][F0][FF]0108.460 Trigger Avail 0000000E 0108.460 Fax rfGtPgDta 00000000 0108.460 TrDatChg Timer 00000008 [B6][00][00][00]0108.471 Dispatch ReadCom 0000000E [FF][FF][FF][7F][D3][A6]Q[E1]$ [CE]b[91]=[8B]0108.471 Trigger Avail 0000000E 0108.471 Fax rfGtPgDta 00000000 0108.471 TrDatChg Timer 00000008 [B6][00][00][00]0108.483 Dispatch ReadCom 0000000E [84][F2][88]S[E1]<[DE]`[CE][F9]h| [E9][85]0108.483 Trigger Avail 0000000E 0108.483 Fax rfGtPgDta 00000000 0108.483 TrDatChg Timer 00000008 [B6][00][00][00]0108.491 Dispatch ReadCom 00000007 $"[E1][E2][A2]|[FF]0108.491 Trigger Avail 00000007 0108.491 Fax rfGtPgDta 00000000 0108.491 TrDatChg Timer 00000008 [B6][00][00][00] The 0x10 0x03 is the end of page marker. 0108.514 Dispatch ReadCom 00000002 [10][03]0108.514 Trigger Avail 00000002 0108.514 Fax rfGtPgDta 00000000 0108.514 TrDatChg Timer 00000008 [B6][00][00][00]0108.514 Trigger Timer 00000010 0108.514 Fax rf1FinPage 00000000 0108.515 TrDatChg Timer 00000010 [12][00][00][00] After the page completes, the carrier will drop 0108.521 Dispatch ReadCom 0000000E [0D][0A]NO[20]CARRIER[0D][0A]0108.521 Trigger Avail 0000000E 0108.521 Fax rf1FinPage 00000000 0108.521 Fax rf1FinPage 00000000 We drop back down to 300 baud. 0108.562 Dispatch WriteCom 00000001 A0108.562 Dispatch WriteCom 00000001 T0108.562 Dispatch WriteCom 00000001 +0108.562 Dispatch WriteCom 00000001 F0108.562 Dispatch WriteCom 00000001 R0108.562 Dispatch WriteCom 00000001 H0108.562 Dispatch WriteCom 00000001 =0108.562 Dispatch WriteCom 00000001 30108.562 Dispatch WriteCom 00000001 [0D]0108.562 TrDatChg Timer 00000008 [B6][00][00][00] The speed renegotiation was successful. 0108.932 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0108.932 Trigger Avail 0000000B The wait EOP here is End of Process. This is where we find out if there are more pages to receive. 0108.932 Fax rf1WaitEOP 00000000 0108.932 Fax rf1WaitEOP 00000000 0108.932 TrDatChg Timer 00000008 [B6][00][00][00]0109.588 Trigger Timer 00000010 0109.588 Fax rf1WaitEOP 00000000 0109.588 TrDatChg Timer 00000010 [12][00][00][00]0109.710 Dispatch ReadCom 00000001 [FF]0109.710 Trigger Avail 00000001 0109.710 Fax rf1WaitEOP 00000000 0109.710 Fax rf1WaitEOP 00000000 0109.737 Dispatch ReadCom 00000001 [13]0109.737 Trigger Avail 00000001 0109.737 Fax rf1WaitEOP 00000000 0109.737 Fax rf1WaitEOP 00000000 The ‘/’ indicates this is the last page. A ‘0’ would indicate there are more pages to come. 0109.764 Dispatch ReadCom 00000001 /0109.764 Trigger Avail 00000001 0109.764 Fax rf1WaitEOP 00000000 0109.764 Fax rf1WaitEOP 00000000 0109.791 Dispatch ReadCom 00000001 30109.791 Trigger Avail 00000001 0109.791 Fax rf1WaitEOP 00000000 0109.791 Fax rf1WaitEOP 00000000 0109.817 Dispatch ReadCom 00000001 f0109.817 Trigger Avail 00000001 0109.817 Fax rf1WaitEOP 00000000 0109.817 Fax rf1WaitEOP 00000000 We get the 0x10 0x03 combination to indicate that there are no more pages. 0109.844 Dispatch ReadCom 00000002 [10][03]0109.844 Trigger Avail 00000002 0109.844 Fax rf1WaitEOP 00000000 0109.844 Fax rf1WaitEOP 00000000 0109.844 TrDatChg Timer 00000008 [B6][00][00][00] We get an OK from the modem after the End of Process marker. 0109.849 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0109.849 Trigger Avail 00000006 0109.849 Fax rf1WaitEOP 00000000 0109.849 Fax rf1WaitEOP 00000000 0109.849 Fax rf1WritePage 00000000 0109.849 TrDatChg Timer 00000010 [12][00][00][00] We renegotiate to 300 baud and prepare to transmit that we successfully got the page. 0109.890 Dispatch WriteCom 00000001 A0109.890 Dispatch WriteCom 00000001 T0109.890 Dispatch WriteCom 00000001 +0109.890 Dispatch WriteCom 00000001 F0109.890 Dispatch WriteCom 00000001 T0109.890 Dispatch WriteCom 00000001 H0109.890 Dispatch WriteCom 00000001 =0109.890 Dispatch WriteCom 00000001 30109.890 Dispatch WriteCom 00000001 [0D]0109.890 TrDatChg Timer 00000008 [B6][00][00][00] We have successfully renegotiated the speed. 0109.933 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0109.933 Trigger Avail 0000000B 0109.933 Fax rf1SendMCF 00000000 0109.933 TrDatChg Timer 00000010 [12][00][00][00]0109.933 Fax rf1SendMCF 00000000 Send the MCF (Message Confirmation) frame to indicate the page was successfully received. This is also a bitmask with various flags to indicate that we did receive the page ok. 0109.953 Dispatch WriteCom 00000001 [FF]0109.953 Dispatch WriteCom 00000001 [13]0109.953 Dispatch WriteCom 00000001 [8C]0109.953 Dispatch WriteCom 00000001 [10]0109.953 Dispatch WriteCom 00000001 [03]0109.953 TrDatChg Timer 00000008 [B6][00][00][00]0111.007 Trigger Timer 00000010 0111.007 Fax rf1SendMCF 00000000 0111.007 TrDatChg Timer 00000010 [12][00][00][00] We get an OK from the modem. 0111.249 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0111.249 Trigger Avail 00000006 0111.249 Fax rf1SendMCF 00000000 0111.249 Fax rf1SendMCF 00000000 We renegotiate to 300 baud and expect to receive the DCN (disconnect) frame. 0111.489 Dispatch WriteCom 00000001 A0111.489 Dispatch WriteCom 00000001 T0111.489 Dispatch WriteCom 00000001 +0111.489 Dispatch WriteCom 00000001 F0111.489 Dispatch WriteCom 00000001 R0111.489 Dispatch WriteCom 00000001 H0111.489 Dispatch WriteCom 00000001 =0111.489 Dispatch WriteCom 00000001 30111.489 Dispatch WriteCom 00000001 [0D]0111.489 TrDatChg Timer 00000008 [B6][00][00][00] The renegotiation was successful. 0111.962 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0111.962 Trigger Avail 0000000B 0111.962 Fax rf1WaitDCN 00000000 0111.962 TrDatChg Timer 00000010 [12][00][00][00]0111.962 Fax rf1WaitDCN 00000000 0111.962 TrDatChg Timer 00000008 [B6][00][00][00] We now start receiving the DCN frame. This is also a bitmask. Like the other frames, it will terminate with an 0x10 0x03. 0112.742 Dispatch ReadCom 00000001 [FF]0112.742 Trigger Avail 00000001 0112.742 Fax rf1WaitDCN 00000000 0112.742 Fax rf1WaitDCN 00000000 0112.769 Dispatch ReadCom 00000001 [13]0112.769 Trigger Avail 00000001 0112.769 Fax rf1WaitDCN 00000000 0112.769 Fax rf1WaitDCN 00000000 0112.795 Dispatch ReadCom 00000001 [FB]0112.795 Trigger Avail 00000001 0112.795 Fax rf1WaitDCN 00000000 0112.795 Fax rf1WaitDCN 00000000 0112.822 Dispatch ReadCom 00000001 [9A]0112.822 Trigger Avail 00000001 0112.822 Fax rf1WaitDCN 00000000 0112.822 Fax rf1WaitDCN 00000000 0112.848 Dispatch ReadCom 00000001 [F6]0112.848 Trigger Avail 00000001 0112.848 Fax rf1WaitDCN 00000000 0112.848 Fax rf1WaitDCN 00000000 The modem will respond with an OK. 0112.879 Dispatch ReadCom 00000008 [10][03][0D][0A]OK[0D][0A]0112.879 Trigger Avail 00000008 0112.879 Fax rf1WaitDCN 00000000 0112.879 Fax rf1WaitDCN 00000000 0112.879 TrDatChg Timer 00000008 [B6][00][00][00] The faxing is complete, we can now hang up. 0112.979 Dispatch WriteCom 00000001 A0112.979 Dispatch WriteCom 00000001 T0112.979 Dispatch WriteCom 00000001 H0112.979 Dispatch WriteCom 00000001 [0D]0112.979 TrDatChg Timer 00000008 [B6][00][00][00]0112.979 Trigger Timer 00000010 0112.979 Fax rf1WtHngp 00000000 0112.979 TrDatChg Timer 00000010 [12][00][00][00] We are disconnected. 0113.559 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0113.559 Trigger Avail 00000006 0113.559 Fax rf1WtHngp 00000000 0113.559 Fax rf1WtHngp 00000000 0113.559 Fax rfComplete 00000000 0113.559 TrDatChg Timer 00000010 [12][00][00][00]
Sending a faxAPRO v3.03Compiler : Delphi 5Operating System : Windows NT 5.0 Time Type SubType Data OtherData-------- -------- ------------ -------- ---------0000.015 TrDatChg Avail 00000001 0000.015 TrgHdAlc Window 0023037E 0001.038 User 00000000 Send_one_page,_Class10001.038 TrDatChg Avail 00000001 0001.038 TrigAllc Timer 00000008 0001.038 TrigAllc Timer 00000010 0001.038 TrigAllc Status 0000001B (Output buffer free)0001.038 TrigAllc Status 00000024 (Output buffer used)0001.038 TrigAllc Status 00000029 (Modem status) Send the initialization string to the modem. If you have a custom modem initialization string, it will sent before this one. 0001.139 Dispatch WriteCom 00000001 A0001.139 Dispatch WriteCom 00000001 T0001.139 Dispatch WriteCom 00000001 E0001.139 Dispatch WriteCom 00000001 00001.139 Dispatch WriteCom 00000001 Q0001.139 Dispatch WriteCom 00000001 00001.139 Dispatch WriteCom 00000001 V0001.139 Dispatch WriteCom 00000001 10001.139 Dispatch WriteCom 00000001 X0001.140 Dispatch WriteCom 00000001 40001.140 Dispatch WriteCom 00000001 S0001.140 Dispatch WriteCom 00000001 00001.140 Dispatch WriteCom 00000001 =0001.140 Dispatch WriteCom 00000001 00001.140 Dispatch WriteCom 00000001 S0001.140 Dispatch WriteCom 00000001 20001.140 Dispatch WriteCom 00000001 =0001.140 Dispatch WriteCom 00000001 40001.140 Dispatch WriteCom 00000001 30001.140 Dispatch WriteCom 00000001 [0D]0001.140 TrDatChg Timer 00000008 [B6][00][00][00]0001.140 TrDatChg Timer 00000008 [B6][00][00][00] The modem responds with OK. 0001.156 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A] Set the modem for class 1 faxing 0001.256 Dispatch WriteCom 00000001 A0001.256 Dispatch WriteCom 00000001 T0001.256 Dispatch WriteCom 00000001 +0001.256 Dispatch WriteCom 00000001 F0001.256 Dispatch WriteCom 00000001 C0001.256 Dispatch WriteCom 00000001 L0001.257 Dispatch WriteCom 00000001 A0001.257 Dispatch WriteCom 00000001 S0001.257 Dispatch WriteCom 00000001 S0001.257 Dispatch WriteCom 00000001 =0001.257 Dispatch WriteCom 00000001 10001.257 Dispatch WriteCom 00000001 [0D]0001.257 TrDatChg Timer 00000008 [B6][00][00][00]0001.257 TrDatChg Timer 00000008 [B6][00][00][00] The modem responds with OK. 0001.268 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A] We will see what baud rates the modem supports 0001.368 Dispatch WriteCom 00000001 A0001.368 Dispatch WriteCom 00000001 T0001.368 Dispatch WriteCom 00000001 +0001.368 Dispatch WriteCom 00000001 F0001.368 Dispatch WriteCom 00000001 T0001.368 Dispatch WriteCom 00000001 M0001.369 Dispatch WriteCom 00000001 =0001.369 Dispatch WriteCom 00000001 ?0001.369 Dispatch WriteCom 00000001 [0D]0001.369 TrDatChg Timer 00000008 [B6][00][00][00]0001.380 Dispatch ReadCom 0000000E [0D][0A]3,24,48,72,70001.388 Dispatch ReadCom 0000000E 3,74,96,97,98,0001.395 Dispatch ReadCom 0000000E 121,122,145,14 This modem supports 300 – 14400 baud. 0001.402 Dispatch ReadCom 00000009 6[0D][0A][0D][0A]OK[0D][0A]0001.402 TrgHdAlc Procedure 00000000 0001.402 Fax tfGetEntry 00000000 0001.403 Fax tfInit 00000000 0001.453 Trigger Avail 00000001 0001.453 Fax tf1Init1 00000000 We reset the fax class (just to be sure). 0001.503 Dispatch WriteCom 00000001 A0001.503 Dispatch WriteCom 00000001 T0001.503 Dispatch WriteCom 00000001 +0001.503 Dispatch WriteCom 00000001 F0001.503 Dispatch WriteCom 00000001 C0001.503 Dispatch WriteCom 00000001 L0001.503 Dispatch WriteCom 00000001 A0001.503 Dispatch WriteCom 00000001 S0001.503 Dispatch WriteCom 00000001 S0001.503 Dispatch WriteCom 00000001 =0001.503 Dispatch WriteCom 00000001 10001.504 Dispatch WriteCom 00000001 [0D]0001.504 TrDatChg Timer 00000008 [B6][00][00][00]0001.504 Fax tf1Init1 0000000A 0001.504 TrDatChg Timer 00000010 [12][00][00][00]0001.504 TrDatChg Timer 00000010 [12][00][00][00] We are now using fax class 1 0001.515 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0001.515 Trigger Avail 00000006 0001.515 Fax tf1Init1 00000000 We are ready to dial the remote fax. 0001.515 Fax tfDial 00000000 0001.615 Dispatch WriteCom 00000001 A0001.615 Dispatch WriteCom 00000001 T0001.615 Dispatch WriteCom 00000001 D0001.615 Dispatch WriteCom 00000001 T0001.615 Dispatch WriteCom 00000001 20001.615 Dispatch WriteCom 00000001 60001.615 Dispatch WriteCom 00000001 00001.615 Dispatch WriteCom 00000001 70001.615 Dispatch WriteCom 00000001 10001.616 Dispatch WriteCom 00000001 50001.616 Dispatch WriteCom 00000001 10001.616 Dispatch WriteCom 00000001 [0D]0001.616 TrDatChg Timer 00000008 [B6][00][00][00]0001.616 TrDatChg Timer 00000008 D[04][00][00]0002.559 Trigger Timer 00000010 We’ve dialed and are waiting for the remote to answer. 0002.559 Fax tf1Connect 00000000 0002.559 TrDatChg Timer 00000010 [12][00][00][00]0003.614 Trigger Timer 00000010 0003.614 Fax tf1Connect 00000000 0003.614 TrDatChg Timer 00000010 [12][00][00][00]0004.617 Trigger Timer 00000010 0004.617 Fax tf1Connect 00000000 0004.617 TrDatChg Timer 00000010 [12][00][00][00]0005.671 Trigger Timer 00000010 0005.671 Fax tf1Connect 00000000 0005.671 TrDatChg Timer 00000010 [12][00][00][00]0006.730 Trigger Timer 00000010 0006.730 Fax tf1Connect 00000000 0006.730 TrDatChg Timer 00000010 [12][00][00][00]0007.783 Trigger Timer 00000010 0007.783 Fax tf1Connect 00000000 0007.783 TrDatChg Timer 00000010 [12][00][00][00]0008.802 Trigger Timer 00000010 0008.802 Fax tf1Connect 00000000 0008.802 TrDatChg Timer 00000010 [12][00][00][00]0009.855 Trigger Timer 00000010 0009.855 Fax tf1Connect 00000000 0009.855 TrDatChg Timer 00000010 [12][00][00][00]0010.914 Trigger Timer 00000010 0010.914 Fax tf1Connect 00000000 0010.915 TrDatChg Timer 00000010 [12][00][00][00]0011.970 Trigger Timer 00000010 0011.970 Fax tf1Connect 00000000 0011.970 TrDatChg Timer 00000010 [12][00][00][00] We don’t get any indication of any thing until a fax connection is made. 0012.164 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0012.165 Trigger Avail 0000000B 0012.165 Fax tf1Connect 00000000 0012.165 TrDatChg Timer 00000008 [B6][00][00][00] We start receiving the remote call station ID. In this case it’s “TURBOPOWER”. The call station ID is reversed. 0012.908 Dispatch ReadCom 00000001 [FF]0012.908 Trigger Avail 00000001 0012.908 Fax tf1Connect 00000000 0012.934 Dispatch ReadCom 00000001 [03]0012.934 Trigger Avail 00000001 0012.934 Fax tf1Connect 00000000 0012.966 Dispatch ReadCom 00000001 @0012.966 Trigger Avail 00000001 0012.966 Fax tf1Connect 00000000 0012.988 Dispatch ReadCom 00000001 R0012.988 Trigger Avail 00000001 0012.988 Fax tf1Connect 00000000 0012.988 Trigger Timer 00000010 0012.988 Fax tf1Connect 00000000 0012.988 TrDatChg Timer 00000010 [12][00][00][00]0013.014 Dispatch ReadCom 00000001 E0013.014 Trigger Avail 00000001 0013.014 Fax tf1Connect 00000000 0013.041 Dispatch ReadCom 00000001 W0013.041 Trigger Avail 00000001 0013.041 Fax tf1Connect 00000000 0013.067 Dispatch ReadCom 00000001 O0013.067 Trigger Avail 00000001 0013.067 Fax tf1Connect 00000000 0013.094 Dispatch ReadCom 00000001 P0013.094 Trigger Avail 00000001 0013.094 Fax tf1Connect 00000000 0013.121 Dispatch ReadCom 00000001 O0013.121 Trigger Avail 00000001 0013.121 Fax tf1Connect 00000000 0013.148 Dispatch ReadCom 00000001 B0013.148 Trigger Avail 00000001 0013.148 Fax tf1Connect 00000000 0013.174 Dispatch ReadCom 00000001 R0013.174 Trigger Avail 00000001 0013.174 Fax tf1Connect 00000000 0013.201 Dispatch ReadCom 00000001 U0013.201 Trigger Avail 00000001 0013.201 Fax tf1Connect 00000000 0013.227 Dispatch ReadCom 00000001 T0013.227 Trigger Avail 00000001 0013.227 Fax tf1Connect 00000000 0013.254 Dispatch ReadCom 00000001 [20]0013.254 Trigger Avail 00000001 0013.254 Fax tf1Connect 00000000 0013.281 Dispatch ReadCom 00000001 [20]0013.281 Trigger Avail 00000001 0013.281 Fax tf1Connect 00000000 0013.313 Dispatch ReadCom 00000001 [20]0013.313 Trigger Avail 00000001 0013.313 Fax tf1Connect 00000000 0013.335 Dispatch ReadCom 00000001 [20]0013.335 Trigger Avail 00000001 0013.335 Fax tf1Connect 00000000 0013.361 Dispatch ReadCom 00000001 [20]0013.361 Trigger Avail 00000001 0013.361 Fax tf1Connect 00000000 0013.388 Dispatch ReadCom 00000001 [20]0013.388 Trigger Avail 00000001 0013.388 Fax tf1Connect 00000000 0013.414 Dispatch ReadCom 00000001 [20]0013.414 Trigger Avail 00000001 0013.414 Fax tf1Connect 00000000 0013.441 Dispatch ReadCom 00000001 [20]0013.441 Trigger Avail 00000001 0013.441 Fax tf1Connect 00000000 0013.467 Dispatch ReadCom 00000001 [20]0013.467 Trigger Avail 00000001 0013.468 Fax tf1Connect 00000000 0013.494 Dispatch ReadCom 00000001 [20]0013.494 Trigger Avail 00000001 0013.494 Fax tf1Connect 00000000 0013.521 Dispatch ReadCom 00000001 e0013.521 Trigger Avail 00000001 0013.521 Fax tf1Connect 00000000 0013.549 Dispatch ReadCom 00000001 [E8]0013.549 Trigger Avail 00000001 0013.549 Fax tf1Connect 00000000 We’ve got the OK from getting the call station ID. 0013.578 Dispatch ReadCom 00000008 [10][03][0D][0A]OK[0D][0A]0013.578 Trigger Avail 00000008 0013.578 Fax tf1Connect 00000000 We renegotiate the speed to 300 baud so that we can get the remote capabilities bitmask. 0013.578 TrDatChg Timer 00000008 [B6][00][00][00]0013.618 Dispatch WriteCom 00000001 A0013.618 Dispatch WriteCom 00000001 T0013.618 Dispatch WriteCom 00000001 +0013.618 Dispatch WriteCom 00000001 F0013.618 Dispatch WriteCom 00000001 R0013.618 Dispatch WriteCom 00000001 H0013.618 Dispatch WriteCom 00000001 =0013.618 Dispatch WriteCom 00000001 30013.618 Dispatch WriteCom 00000001 [0D]0013.618 TrDatChg Timer 00000008 [B6][00][00][00] The renegotiation of the speed was successful. 0013.631 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0013.631 Trigger Avail 0000000B 0013.631 Fax tf1Connect 00000000 0013.631 TrDatChg Timer 00000010 [12][00][00][00]0013.632 TrDatChg Timer 00000008 [B6][00][00][00] We receive the remote capabilities bitmask. In this case it’s FF 13 80 00 4E F9 00 30 7B followed by a 0x10 0x03 to indicate the end of the data. 0013.841 Dispatch ReadCom 00000001 [FF]0013.841 Trigger Avail 00000001 0013.841 Fax tf1Connect 00000000 0013.867 Dispatch ReadCom 00000001 [13]0013.867 Trigger Avail 00000001 0013.868 Fax tf1Connect 00000000 0013.894 Dispatch ReadCom 00000001 [80]0013.894 Trigger Avail 00000001 0013.894 Fax tf1Connect 00000000 0013.921 Dispatch ReadCom 00000001 [00]0013.921 Trigger Avail 00000001 0013.921 Fax tf1Connect 00000000 0013.948 Dispatch ReadCom 00000001 N0013.948 Trigger Avail 00000001 0013.948 Fax tf1Connect 00000000 0013.974 Dispatch ReadCom 00000001 [F9]0013.974 Trigger Avail 00000001 0013.974 Fax tf1Connect 00000000 0014.001 Dispatch ReadCom 00000001 [00]0014.001 Trigger Avail 00000001 0014.001 Fax tf1Connect 00000000 0014.027 Dispatch ReadCom 00000001 00014.028 Trigger Avail 00000001 0014.028 Fax tf1Connect 00000000 0014.054 Dispatch ReadCom 00000001 {0014.054 Trigger Avail 00000001 0014.054 Fax tf1Connect 00000000 0014.081 Dispatch ReadCom 00000002 [10][03]0014.081 Trigger Avail 00000002 0014.081 Fax tf1Connect 00000000 0014.081 TrDatChg Timer 00000008 [B6][00][00][00] The modem responds with an OK. 0014.089 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0014.089 Trigger Avail 00000006 0014.089 Fax tf1Connect 00000000 0014.089 TrDatChg Timer 00000010 [12][00][00][00] We renegotiate to 300 baud so that we can send our call station ID. 0014.329 Dispatch WriteCom 00000001 A0014.329 Dispatch WriteCom 00000001 T0014.329 Dispatch WriteCom 00000001 +0014.329 Dispatch WriteCom 00000001 F0014.329 Dispatch WriteCom 00000001 T0014.329 Dispatch WriteCom 00000001 H0014.329 Dispatch WriteCom 00000001 =0014.329 Dispatch WriteCom 00000001 30014.329 Dispatch WriteCom 00000001 [0D]0014.329 TrDatChg Timer 00000008 [B6][00][00][00] The renegotiation was successful. 0014.370 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0014.370 Trigger Avail 0000000B 0014.370 Fax tf1SendTSI 00000000 We send out the call station ID. In this case it’s “MY STATION ID”. 0014.390 Dispatch WriteCom 00000001 [FF]0014.390 Dispatch WriteCom 00000001 [03]0014.390 Dispatch WriteCom 00000001 C0014.390 Dispatch WriteCom 00000001 [20]0014.390 Dispatch WriteCom 00000001 [20]0014.390 Dispatch WriteCom 00000001 [20]0014.390 Dispatch WriteCom 00000001 [20]0014.390 Dispatch WriteCom 00000001 [20]0014.390 Dispatch WriteCom 00000001 [20]0014.390 Dispatch WriteCom 00000001 [20]0014.390 Dispatch WriteCom 00000001 D0014.390 Dispatch WriteCom 00000001 I0014.391 Dispatch WriteCom 00000001 [20]0014.391 Dispatch WriteCom 00000001 N0014.391 Dispatch WriteCom 00000001 O0014.391 Dispatch WriteCom 00000001 I0014.391 Dispatch WriteCom 00000001 T0014.391 Dispatch WriteCom 00000001 A0014.391 Dispatch WriteCom 00000001 T0014.391 Dispatch WriteCom 00000001 S0014.391 Dispatch WriteCom 00000001 [20]0014.391 Dispatch WriteCom 00000001 Y0014.391 Dispatch WriteCom 00000001 M0014.391 Dispatch WriteCom 00000001 [10]0014.391 Dispatch WriteCom 00000001 [03]0014.391 TrDatChg Timer 00000008 [B6][00][00][00]0015.121 Trigger Timer 00000010 0015.121 Fax tf1TSIRespns 00000000 0015.122 TrDatChg Timer 00000010 [12][00][00][00]0016.170 Trigger Timer 00000010 0016.170 Fax tf1TSIRespns 00000000 0016.170 TrDatChg Timer 00000010 [12][00][00][00] We get a connect to indicate that it is all OK. The remote could disconnect at this point if we were not on its list. In this case, we would get a NO CARRIER and the transmit would fail. 0016.221 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0016.221 Trigger Avail 0000000B 0016.221 Fax tf1TSIRespns 00000000 We send out a bitmask indicating our capabilities. 0016.243 Dispatch WriteCom 00000001 [FF]0016.243 Dispatch WriteCom 00000001 [13]0016.243 Dispatch WriteCom 00000001 [83]0016.243 Dispatch WriteCom 00000001 [00]0016.243 Dispatch WriteCom 00000001 [06]0016.243 Dispatch WriteCom 00000001 [F8]0016.243 Dispatch WriteCom 00000001 [00]0016.243 Dispatch WriteCom 00000001 [10]0016.243 Dispatch WriteCom 00000001 [03]0016.243 TrDatChg Timer 00000008 [B6][00][00][00] The modem responds with an OK. 0016.646 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0016.646 Trigger Avail 00000006 0016.646 Fax tf1DCSRspns 00000000 We will adjust the speed up to 9600 baud in order to send training data. 0016.701 Dispatch WriteCom 00000001 A0016.701 Dispatch WriteCom 00000001 T0016.701 Dispatch WriteCom 00000001 +0016.701 Dispatch WriteCom 00000001 F0016.701 Dispatch WriteCom 00000001 T0016.701 Dispatch WriteCom 00000001 M0016.701 Dispatch WriteCom 00000001 =0016.701 Dispatch WriteCom 00000001 90016.701 Dispatch WriteCom 00000001 60016.702 Dispatch WriteCom 00000001 [0D]0016.702 TrDatChg Timer 00000008 [B6][00][00][00] We are at 9600 baud, send the training data. The training data consists of 1.5 seconds of nulls. Some of the training data was removed from this example. 0016.737 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0016.737 Trigger Avail 0000000B 0016.737 Fax tf1TrainStrt 00000000 0016.737 Dispatch WriteCom 000006C0 [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] <snip> [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00]0016.737 Dispatch WriteCom 00000001 [10]0016.737 Dispatch WriteCom 00000001 [03]0016.737 TrDatChg Timer 00000008 [B6][00][00][00]0017.253 Trigger Timer 00000010 We wait for the output buffer to empty. 0017.253 Fax tf1TrainFnsh 000006C2 0017.253 TrDatChg Timer 00000010 [12][00][00][00]0018.294 Trigger Timer 00000010 0018.295 Fax tf1TrainFnsh 00000000 0018.295 TrDatChg Timer 00000010 [12][00][00][00] All the training data was sent. We get an OK back. 0018.628 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0018.628 Trigger Avail 00000006 0018.628 Fax tf1TrainFnsh 00000000 We will go back to 300 baud and expect the confirmation of the training data. 0018.868 Dispatch WriteCom 00000001 A0018.868 Dispatch WriteCom 00000001 T0018.868 Dispatch WriteCom 00000001 +0018.868 Dispatch WriteCom 00000001 F0018.868 Dispatch WriteCom 00000001 R0018.868 Dispatch WriteCom 00000001 H0018.868 Dispatch WriteCom 00000001 =0018.868 Dispatch WriteCom 00000001 30018.868 Dispatch WriteCom 00000001 [0D]0018.868 TrDatChg Timer 00000008 [B6][00][00][00] We are at 300 baud. We will get the CFR (Confirmation For Receive) frame from the remote. 0019.249 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0019.249 Trigger Avail 0000000B 0019.249 Fax tf1WaitCFR 00000000 0019.249 TrDatChg Timer 00000008 [B6][00][00][00]0019.299 Trigger Timer 00000010 0019.299 Fax tf1WaitCFR 00000000 0019.299 TrDatChg Timer 00000010 [12][00][00][00]We get the CFR frame. This is a bitmask that indicates that the remote received the training data. 0019.811 Dispatch ReadCom 00000001 [FF]0019.811 Trigger Avail 00000001 0019.811 Fax tf1WaitCFR 00000000 0019.837 Dispatch ReadCom 00000001 [13]0019.837 Trigger Avail 00000001 0019.837 Fax tf1WaitCFR 00000000 0019.864 Dispatch ReadCom 00000001 [84]0019.864 Trigger Avail 00000001 0019.864 Fax tf1WaitCFR 00000000 0019.891 Dispatch ReadCom 00000001 [EA]0019.891 Trigger Avail 00000001 0019.891 Fax tf1WaitCFR 00000000 0019.944 Dispatch ReadCom 00000001 }0019.944 Trigger Avail 00000001 0019.944 Fax tf1WaitCFR 00000000 The CFR frame, like the others, ends with the 0x10 0x03. 0019.971 Dispatch ReadCom 00000002 [10][03]0019.971 Trigger Avail 00000002 0019.971 Fax tf1WaitCFR 00000000 0019.971 TrDatChg Timer 00000008 [B6][00][00][00] The modem responds with an OK. 0019.977 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0019.977 Trigger Avail 00000006 0019.977 Fax tf1WaitCFR 00000000 We can now go back to 9600 baud in order to send the page data. 0020.217 Dispatch WriteCom 00000001 A0020.217 Dispatch WriteCom 00000001 T0020.217 Dispatch WriteCom 00000001 +0020.217 Dispatch WriteCom 00000001 F0020.217 Dispatch WriteCom 00000001 T0020.217 Dispatch WriteCom 00000001 M0020.217 Dispatch WriteCom 00000001 =0020.217 Dispatch WriteCom 00000001 90020.217 Dispatch WriteCom 00000001 60020.217 Dispatch WriteCom 00000001 [0D]0020.217 TrDatChg Timer 00000008 [B6][00][00][00] We are back at 9600 baud. 0020.253 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0020.253 Trigger Avail 0000000B 0020.253 Fax tf1WaitPgCn 00000000 0020.253 TrDatChg Timer 00000008 [12][00][00][00]0020.353 Trigger Timer 00000010 0020.353 Fax tfWaitXon 00000000 0020.354 TrDatChg Timer 00000010 [12][00][00][00]0021.306 Trigger Timer 00000008 0021.306 Fax tfWaitXon 00000000 0021.306 TrDatChg Status 0000001B [00][10][00][00]0021.306 TrDatChg Timer 00000008 D[04][00][00]0021.306 Trigger Status 0000001B 0021.306 Fax tfWaitFrHead 00000000 0021.306 Fax tfSndPgeHdr 00000000 We start sending the page. This first section is several blank lines (00 80 B2 59 01 00). 0021.307 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.307 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.307 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.307 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.307 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.307 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.307 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.307 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00] We are still sending page stuff. Some of this has been removed. 0021.307 Dispatch WriteCom 000003BE [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] <snip> [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00][00][00] [00][00][00][00][00][00]0021.308 Fax tfPrepPage 000003E8 0021.308 TrDatChg Timer 00000008 D[04][00][00]0021.308 TrDatChg Status 0000001B [00][10][00][01]0021.357 Trigger Status 0000001B 0021.357 Fax tfSendPage 000003E2 0021.358 TrDatChg Timer 00000010 [12][00][00][00] There are a couple more blank lines 0021.358 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.358 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.358 TrDatChg Status 0000001B [00][10][00][01] Wait for the buffer to drain 0021.358 Trigger Status 0000001B 0021.358 Fax tfSendPage 000003EE 0021.359 TrDatChg Status 0000001B [00][10][00][01]0021.409 Trigger Status 0000001B 0021.409 Fax tfSendPage 000003EE 0021.409 TrDatChg Status 0000001B [00][10][00][01]0021.409 Trigger Status 0000001B 0021.409 Fax tfSendPage 000003EE 0021.409 TrDatChg Status 0000001B [00][10][00][01]0021.459 Trigger Status 0000001B 0021.459 Fax tfSendPage 000003EE 0021.459 TrDatChg Status 0000001B [00][10][00][01]0021.459 Trigger Status 0000001B 0021.459 Fax tfSendPage 000003EE 0021.459 TrDatChg Status 0000001B [00][10][00][01]0021.509 Trigger Status 0000001B 0021.509 Fax tfSendPage 000003EE 0021.509 TrDatChg Status 0000001B [00][10][00][01]0021.509 Trigger Status 0000001B 0021.509 Fax tfSendPage 000003EE 0021.509 TrDatChg Status 0000001B [00][10][00][01]0021.559 Trigger Status 0000001B 0021.559 Fax tfSendPage 000003EE 0021.559 TrDatChg Status 0000001B [00][10][00][01]0021.559 Trigger Status 0000001B 0021.559 Fax tfSendPage 000003EE 0021.559 TrDatChg Status 0000001B [00][10][00][01]0021.609 Trigger Status 0000001B 0021.609 Fax tfSendPage 000003EE 0021.609 TrDatChg Status 0000001B [00][10][00][01]0021.609 Trigger Status 0000001B 0021.609 Fax tfSendPage 000003EE 0021.609 TrDatChg Status 0000001B [00][10][00][01]0021.659 Trigger Status 0000001B 0021.659 Fax tfSendPage 000003EE 0021.659 TrDatChg Status 0000001B [00][10][00][01]0021.659 Trigger Status 0000001B 0021.660 Fax tfSendPage 000003EE 0021.660 TrDatChg Status 0000001B [00][10][00][01]0021.709 Trigger Status 0000001B 0021.710 Fax tfSendPage 000003EE 0021.710 TrDatChg Status 0000001B [00][10][00][01]0021.710 Trigger Status 0000001B 0021.710 Fax tfSendPage 000003EE 0021.710 TrDatChg Status 0000001B [00][10][00][01]0021.760 Trigger Status 0000001B 0021.760 Fax tfSendPage 000003EE 0021.760 TrDatChg Status 0000001B [00][10][00][01]0021.760 Trigger Status 0000001B 0021.760 Fax tfSendPage 000003EE 0021.760 TrDatChg Status 0000001B [00][10][00][01]0021.810 Trigger Status 0000001B 0021.810 Fax tfSendPage 000003EE 0021.810 TrDatChg Status 0000001B [00][10][00][01]0021.810 Trigger Status 0000001B 0021.810 Fax tfSendPage 000003EE 0021.810 TrDatChg Status 0000001B [00][10][00][01]0021.860 Trigger Status 0000001B 0021.860 Fax tfSendPage 00000000 Send more page data 0021.860 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.861 Dispatch WriteCom 0000000A [00][80];[1B][BC][F6]2[B1][01] [00]0021.861 Dispatch WriteCom 0000000B [00][80][9A]W'[D5][B5][B7][ED] [00][00]0021.861 Dispatch WriteCom 0000000B [00][80][9A]W'[D5][B5][B7][ED] [00][00]0021.861 Dispatch WriteCom 0000001E [00][80][AA]p[BE][9B][A0][05][02] L[0B][04][18][05][86][13]D@2[9C]a 7[81].vs[B2]I[06][00] <snip> 0021.865 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.865 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.865 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.865 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.866 Dispatch WriteCom 00000006 [00][80][B2]Y[01][00]0021.866 Dispatch WriteCom 0000000C [00][80][00][08][80][00][08][80] [00][08][80][00] Send the end of page marker (0x10 0x03). 0021.866 Dispatch WriteCom 00000001 [10]0021.866 Dispatch WriteCom 00000001 [03]0021.866 TrDatChg Timer 00000008 D[04][00][00]0021.866 TrDatChg Status 00000024 [00][00][00][00] Wait for the output buffer to drain, and we will get an OK back. 0022.067 Trigger Status 00000024 0022.067 Fax tfDrainPage 00000000 0022.418 Trigger Timer 00000010 0022.418 Fax tf1PageEnd 00000000 0022.418 TrDatChg Timer 00000010 [12][00][00][00]0022.498 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0022.498 Trigger Avail 00000006 0022.498 Fax tf1PageEnd 00000000 0022.498 TrDatChg Timer 00000008 [B6][00][00][00]0022.498 Fax tf1PageEnd 00000000 0022.498 Fax tf1PrepEOP 00000000 Negotiate back to 300 baud so we can send the End Of Process to indicate there are no further pages. 0023.038 Dispatch WriteCom 00000001 A0023.038 Dispatch WriteCom 00000001 T0023.038 Dispatch WriteCom 00000001 +0023.038 Dispatch WriteCom 00000001 F0023.038 Dispatch WriteCom 00000001 T0023.038 Dispatch WriteCom 00000001 H0023.038 Dispatch WriteCom 00000001 =0023.039 Dispatch WriteCom 00000001 30023.039 Dispatch WriteCom 00000001 [0D]0023.039 TrDatChg Timer 00000008 [B6][00][00][00] We are back at 300 baud. 0023.082 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0023.082 Trigger Avail 0000000B 0023.082 Fax tf1SendEOP 00000000 Send the EOP frame. 0023.102 Dispatch WriteCom 00000001 [FF]0023.102 Dispatch WriteCom 00000001 [13] The ‘/’ indicates this is the last page. A ‘0’ would indicate there are more pages to send. 0023.102 Dispatch WriteCom 00000001 /0023.102 Dispatch WriteCom 00000001 [10]0023.102 Dispatch WriteCom 00000001 [03]0023.102 TrDatChg Timer 00000008 [B6][00][00][00]0023.453 Trigger Timer 00000010 0023.453 Fax tf1WaitMPS 00000000 0023.453 TrDatChg Timer 00000010 [12][00][00][00] The modem responds with an OK. 0024.399 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0024.399 Trigger Avail 00000006 0024.399 Fax tf1WaitMPS 00000000 We renegotiate back to 300 baud and expect to receive the MCF (Message Confirmation) frame. This will let us know if the page was received successfully. 0024.640 Dispatch WriteCom 00000001 A0024.640 Dispatch WriteCom 00000001 T0024.640 Dispatch WriteCom 00000001 +0024.640 Dispatch WriteCom 00000001 F0024.640 Dispatch WriteCom 00000001 R0024.640 Dispatch WriteCom 00000001 H0024.640 Dispatch WriteCom 00000001 =0024.641 Dispatch WriteCom 00000001 30024.641 Dispatch WriteCom 00000001 [0D]0024.641 TrDatChg Timer 00000008 [B6][00][00][00]0024.641 TrDatChg Timer 00000008 6[00][00][00]0024.641 Trigger Timer 00000010 0024.641 Fax tf1WaitMCF 00000007 0024.641 TrDatChg Timer 00000010 [12][00][00][00] The CONNECTED response indicates that we have dropped down to 300 baud. 0025.099 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0025.099 Trigger Avail 0000000B 0025.099 Fax tf1WaitMCF 00000000 0025.099 TrDatChg Timer 00000008 [B6][00][00][00]0025.710 Trigger Timer 00000010 0025.710 Fax tf1WaitMCF 00000000 0025.710 TrDatChg Timer 00000010 [12][00][00][00] We start receiving the MCF. 0025.844 Dispatch ReadCom 00000001 [FF]0025.844 Trigger Avail 00000001 0025.844 Fax tf1WaitMCF 00000000 0025.871 Dispatch ReadCom 00000001 [13]0025.871 Trigger Avail 00000001 0025.871 Fax tf1WaitMCF 00000000 0025.898 Dispatch ReadCom 00000001 [8C]0025.898 Trigger Avail 00000001 0025.898 Fax tf1WaitMCF 00000000 0025.924 Dispatch ReadCom 00000001 [A2]0025.924 Trigger Avail 00000001 0025.924 Fax tf1WaitMCF 00000000 0025.951 Dispatch ReadCom 00000001 [F1]0025.951 Trigger Avail 00000001 0025.951 Fax tf1WaitMCF 00000000 The MCF frame ends with a 0x10 0x13. 0025.978 Dispatch ReadCom 00000002 [10][03]0025.978 Trigger Avail 00000002 0025.978 Fax tf1WaitMCF 00000000 0025.978 TrDatChg Timer 00000008 [B6][00][00][00] The modem responds with an OK. 0025.986 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0025.986 Trigger Avail 00000006 0025.986 Fax tf1WaitMCF 00000000 Renegotiate to 300 baud and send the DCN (Disconnect) frame. 0026.026 Dispatch WriteCom 00000001 A0026.026 Dispatch WriteCom 00000001 T0026.026 Dispatch WriteCom 00000001 +0026.026 Dispatch WriteCom 00000001 F0026.026 Dispatch WriteCom 00000001 T0026.026 Dispatch WriteCom 00000001 H0026.026 Dispatch WriteCom 00000001 =0026.026 Dispatch WriteCom 00000001 30026.026 Dispatch WriteCom 00000001 [0D]0026.026 TrDatChg Timer 00000008 [B6][00][00][00] We are now at 300 baud. 0026.067 Dispatch ReadCom 0000000B [0D][0A]CONNECT[0D][0A]0026.067 Trigger Avail 0000000B 0026.068 Fax tf1SendDCN 00000000 We can now send the DCN frame. 0026.088 Dispatch WriteCom 00000001 [FF]0026.088 Dispatch WriteCom 00000001 [13]0026.088 Dispatch WriteCom 00000001 [FB]0026.088 Dispatch WriteCom 00000001 [10]0026.088 Dispatch WriteCom 00000001 [03]0026.088 TrDatChg Timer 00000008 [B6][00][00][00]0026.742 Trigger Timer 00000010 0026.742 Fax tf1Hangup 00000000 0026.742 TrDatChg Timer 00000010 [12][00][00][00] The modem responds with an OK. 0027.385 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0027.385 Trigger Avail 00000006 0027.385 Fax tf1Hangup 00000000 The faxing is complete. We can now hang up. 0027.485 Dispatch WriteCom 00000001 A0027.485 Dispatch WriteCom 00000001 T0027.485 Dispatch WriteCom 00000001 H0027.485 Dispatch WriteCom 00000001 [0D]0027.485 TrDatChg Timer 00000008 [B6][00][00][00]0027.485 TrDatChg Timer 00000008 [1A][00][00][00]0027.798 Trigger Timer 00000010 0027.799 Fax tf1WaitHngp 00000000 0027.799 TrDatChg Timer 00000010 [12][00][00][00] The modem responds with an OK. We are now disconnected. 0028.075 Dispatch ReadCom 00000006 [0D][0A]OK[0D][0A]0028.075 Trigger Avail 00000006 0028.075 Fax tf1WaitHngp 00000000 0028.075 Fax tfClose 00000000 0028.076 Fax tfGetEntry 00000000 0028.076 TrDatChg Timer 00000010 [12][00][00][00]0028.076 Fax tfCompleteOK 00000000 0028.076 TrigDisp Timer 00000008 0028.076 TrigDisp Timer 00000010 0028.076 TrigDisp Status 0000001B (Output buffer free)0028.076 TrigDisp Status 00000024 (Output buffer used)0028.076 TrigDisp Status 00000029 (Modem status)0028.076 TrgHdDsp Procedure 00000000 0028.076 Fax Status 00000000 ErrorCode:0
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
This site is not affiliated, endorsed, or otherwise associated with the
entity formerly known as
TurboPower Software. The owners and maintainers of Aprozilla.com were merely
meager employees of the aforementioned organization, providing this site out of
the pure goodness of their collective hearts.
|