l It is not recommended to edit the callfile in /var/spool/asterisk/outgoing as it might be processed by asterisk in the middle of creation. A better approach is to create the callfile somewhere else and 'mv' to the outgoing directory.

l The resolution of tiff is important. We can enforce the correct values by specifying them in the gs command.

n If we receive 'res_fax_digium.c: FAX handle 0: failed to queue document', it is likely due to mis-formatted tiff.

l Utf8 tagline is currently not supported.

l We can pass certain variables from callfile to our dialplan, eg the destination number, for generating fax status reports. The fax status is obtained from ${FAXOPT(status)}

l The write_log.sh is a simple shell script that merely logs whatever number we faxed with the fax status. Alternatively, we could use AGI to insert the data to database for billing purpose.

l To enable t38 fax, we have to set 't38pt_udptl=yes' in sip.conf

n If we receive error 'Audio FAX not allowed on channel', it is likely an issue with the t38_udptl value.

l To monitor fax progress, we can set debug on as below.

n *CLI> fax set debug on

To send faxes simultaneously (assuming that we purchased enough channels from Digium), we could put multiple callfiles in /var/spool/asterisk/outgoing and monitor this folder to add more callfiles when appropriate.

In following parts, I would show how to control the maximum number of concurrent fax calls and automate fax retry.

Recently, we evaluated fax for asterisk in the process to find a stable fax solution under asterisk.

Ffa is selected because it supports both DAHDI TDM fax and T38 Voip fax. Note that t38 termination is only available when using asterisk 1.6 and above. In asterisk 1.4, we can only use g711 faxing with ffa, a solution which is more vulnerable to network jitters and delays.

We setup an environment as below for evaluating ffa.

l Fc9

l Asterisk 1.6.2.14

l Dahdi with 2-port Digium card

Then we download the free Fax for Asterisk (1-channel) from http://www.digium.com/en/products/software/faxforasterisk.php.

Ffa installation involves below steps.

Create account with Digium

In the first place, we create an account with digium and order free FFA on digium store which would send us a license string afterwards.

Register free fax for asterisk

Cd /usr/src

wget http://downloads.digium.com/pub/register/x86-32/register

Chmod 500 register

./register

This program prompt us to enter the license string obtained from digium.