Hylafax is, without question, the most advanced Open Source fax server available. With the proper setup one can expect years of uninterrupted service. This document describes the basic setup and use of "fax clients" for Windows and Linux.

Installation

On Gentoo simply say:

emerge -pv hylafax
[ebuild  N    ] net-misc/hylafax-4.3.0  USE="-faxonly -html -jbig -mgetty pam"
emerge net-misc/hylafax
etc-update

After the installation the ebuild will request that faxsetup and faxaddmodem are run. Faxsetup will configure the server, faxaddmodem will configure a modem.

Execute faxsetup and answer questions approriate for the environment.

Execute faxaddmodem, substituting the proper value for the tty the modem is connected. In this example a SmartLink Soft Modem is being used, typical serial ports are ttyS0 - ttyS3.

faxaddmodem ttySL0

Update the configuration data as necessary. This script will also probe the modem for configuration data, it may request human input. Follow the prompts to configure the modem, use of Class1 is prefered. The information from this script is now stored in /var/spool/fax/etc/config.ttySL0.

/var/spool/fax/etc/config.ttyS0
CountryCode:            1
AreaCode:               206
FAXNumber:              +1.206.555.1212
LongDistancePrefix:     1
InternationalPrefix:    011
DialStringRules:        etc/dialrules
ServerTracing:          11
SessionTracing:         11
RecvFileMode:           0600
LogFileMode:            0600
DeviceMode:             0600
RingsBeforeAnswer:      2
SpeakerVolume:          high
GettyArgs:              "-h %l dx_%s"
LocalIdentifier:        "Edoceo Fax Server"
LogFacility:            local1
TagLineFont:            etc/lutRS18.pcf
TagLineFormat:          "From %%l|%c|Page %%P of %%T"
MaxRecvPages:           25
ModemType:              Class1
Class1Cmd:              AT+FCLASS=1
Class1PPMWaitCmd:       AT+FTS=7
Class1TCFWaitCmd:       AT+FTS=7
Class1EOPWaitCmd:       AT+FTS=9
Class1SendMsgDelay:     200
Class1SwitchingCmd:     AT+FRS=7
Class1TrainingRecovery: 1500
Class1RecvAbortOK:      200
Class1FrameOverhead:    4
Class1RecvIdentTimer:   40000
Class1TCFMaxNonZero:    10
Class1TCFMinRun:        1000

Configuration

/etc/hylafax/hfaxd.conf

/var/spool/fax/etc/config

The hosts.hfaxd file control authentication information for Hylafax. Users can be added using the faxadduser script but they will be appended to the file. Users should go first, then hosts below, like this example

root@host # cat /var/spool/fax/etc/hosts.hfaxd

#
# Hylafax Faxing Users
#
^root@:::Rxyco0U0CmvH.

#
# Hylafax Faxing Hosts
#
localhost
127.0.0.1
10.65.0.3
10.65.0.56

Testing the Modem

minicom
ATZ
>> OK

Now call that number with Minicom open, should see RING, RING. Issue the command ATA to answer.

Cleaning Hylafax

After running tests and verifying the install is correct the Hylafax queue can be reset to a prestine state using these commands.

/etc/init.d/hylafax stop
cd /var/spool/hylafax/
rm archive/* docq/* log/* recvq/* sendq/* tmp/*
/etc/init.d/hylafax start

See Also