Hylafax / Capi4hylafax: faxgetty does not recognize number of lines
- by Wrikken
We've got a T.30 card, 30 working lines on it, but for some reason, if I add more then 30 faxes in the queue at any time (and we're busy enough at peak times that this happens a lot), faxgetty sends faxes to non-existent lines and they appear in the error queue as a 'busy' signal on the line, which results in a lot of failed faxes because the counter of max 3 tries increases rapidly. This is using faxgetty (USE_FAXGETTY="y" in /etc/default/hylafax). I've inherited this thing, so I'm not entirely sure how faxgetty is supposed to know the number of lines. However, if I alter the script to faxmodem (USE_FAXGETTY="n" in /etc/default/hylafax and manually enabling 30 modems), this behavior goes away (new faxes 'wait' for a line to be available before trying to send, so each try / fail is a valid one on a working line, majorly descreasing the amount of failed faxes. However, when researching this almost anyone talks about faxgetty being the preferred, more robust, method, and on top of that for some unexplained reason all FIFO's disappeared for some reason after several errorless hours with faxmodem, forcing a hylafax restart using faxgetty until we figured out why this faxmodem solution failed (which is another question, and somewhat out of scope here).
Environment:
Debian 2.6.26-2-amd64
capi4hylafax 1:01.03.00.99.svn.300-12
hylafax-client 2:4.4.4-10.1
hylafax-server 2:4.4.4-10.1
Config
--hfaxd.conf--
LogFacility: daemon
ServerTracing: 0x1ff
--hyla.conf--
Host: localhost
Verbose: No
VRes: 196
TimeZone: local
DialRules: "/etc/hylafax/dialrules.europe"
--/etc/hylafax/config --
InternationalPrefix: 00
LongDistancePrefix: 0
AreaCode: 99999
CountryCode: 31
DialStringRules: "etc/dialrules.europe"
ModemGroup: any:faxCAPI
SendFaxCmd: "/usr/bin/wrapc2faxsend"
--/etc/hylafax/config.faxCAPI --
SpoolDir: /var/spool/hylafax
FaxRcvdCmd: /var/spool/hylafax/bin/faxrcvd
PollRcvdCmd: /var/spool/hylafax/bin/pollrcvd
FaxReceiveUser: uucp
FaxReceiveGroup: dialout
LogFile: /var/spool/hylafax/log/capi4hylafax
#no, checking this log did not yield anything interesting
LogTraceLevel: 4
LogFileMode: 0600
ModemGroup: any:faxCAPI
#repeats of faxCAPI2 = faxCAPI30, with of course another devicename/local ident:
{
HylafaxDeviceName: faxCAPI
RecvFileMode: 0600
FAXNumber: ****redacted****
LocalIdentifier: ****some-ident-per-device***
MaxConcurrentRecvs: 0
OutgoingController: 1
OutgoingMSN:
SuppressMSN: 0
NumberPrefix:
NumberPlusReplacer: "00"
UseISDNFaxService: 0
RingingDuration: 0
{
Controller: 1
AcceptSpeech: 0
UseDDI: 0
DDIOffset:
DDILength: 0
IncomingDDIs:
IncomingMSNs:
AcceptGlobalCall: 1
}
}
So in short:
How does faxgetty determine the number of lines available? (the man page isn't terribly revealing, and I can't find an appropriate setting in hylafax-config. And how can I get a capi4hylafax/hylafax setup which queues more faxes then lines are available correctly without immediately incrementing the fail count? We will not be receiving any faxes on this machine b.t.w.
As I said, I've inherited this thing, so if there are important configuration options I'm not including, please let me know.