Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to implement a "fax protocol"?

Tags:

fax

I want to write a program that programmatically sends faxes. Or receives faxes. But not with a modem. I guess I'm trying to write a fax simulator. Everything that the hardware does, I want to do using software.

There are a billion SO questions on the topic, but they either suggest an online service to use or they point me to a library, which talks to my computer's modem. So here are my specific questions:

  1. When I send a fax, I can hear the warbling on the telephone line. This tells me that my fax machine is generating tones that are consumable by the recipient's. What is that protocol? Is there an RFC which specifies how a "pixel" is converted to a "frequency"? Do the machines communicate back and forth, or is it one-way?

  2. If we can agree that a fax machine translates sound frequencies to images, then one ought to be able to write a program which takes an MP3 of a fax transmission and outputs a graphic. What do I need to know in order to do this?

Are these questions based on any flawed assumptions? Where should I start so that I can accomplish goal #2 from above?

like image 483
poundifdef Avatar asked Feb 22 '11 04:02

poundifdef


People also ask

What protocol is used for fax?

PSTN fax terminals traditionally use the T. 30 protocol to send analog data. To exchange analog fax data with a PSTN terminal over the Internet, the T. 38 protocol first converts analog data into digital data.

How does fax protocol work?

It transmits data in the form of pulses via a telephone line to a recipient, usually another fax machine, which then transforms these pulses into images, and prints them on paper. The traditional method requires a phone line, and only one fax can be sent or received at a time.

What is the first step of a fax transmission?

Step 1 – the Handshake The handshake is the first part of a fax communication. The sending machine waits for the line to pick up and then starts sending a series of beeps. These beeps signify that the machine is requesting to send a fax.


1 Answers

Actually in modem a chip called "DSP => Digital Signal Processing" is responsible to convert audio signals into digital DATA. and same can be done with a software library. there is already an open source DSP library called SpanDSP developed by "Steve Underwood" http://www.soft-switch.org/.

You can build your own application while using SpanDSP library, but it is wise to use some existing implementation of SpanDSP. Currently SpanDSP is implemented in open source FreeSwitch, CallWeaver and Asterisk PBX systems.

But if you only want to send and receive faxes without bothering low level development then try out ICTFAX Open Source FAX system.

like image 50
Nasir Iqbal Avatar answered Sep 20 '22 16:09

Nasir Iqbal