HylaFAX The world's most advanced open source fax server

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]

[hylafax-users] race condition



Hi,

I'm using hylafax+ (5.1.4) in conjunction with asterisk to send and receive a couple of thousand facsimiles per day.
Now in very rare cases I get kind of a race condition which actually will link an incoming fax to the wrong recipient.

Here is the hylafax log snippet showing two couples of sender/recipient in one call:

-----
Feb 14 10:33:07.35: [ 3910]: SESSION BEGIN 000291023
Feb 14 10:33:07.35: [ 3910]: HylaFAX (tm) Version 5.1.4
Feb 14 10:33:07.35: [ 3910]: CallID: '216697xxx' '08051983xxx'
Feb 14 10:33:07.35: [ 3910]: <-- [4:ATA\r]
Feb 14 10:33:07.35: [ 3910]: --> [16:CID: 06861934xxx]
Feb 14 10:33:07.35: [ 3910]: --> [14:DAD: 476435xxx]
Feb 14 10:33:07.35: [ 3910]: --> [4:RING]
Feb 14 10:33:19.98: [ 3910]: --> [5:+FCON]
Feb 14 10:33:19.98: [ 3910]: ANSWER: FAX CONNECTION  DEVICE '/dev/ttyds01'
Feb 14 10:33:19.98: [ 3910]: STATE CHANGE: ANSWERING -> RECEIVING
Feb 14 10:33:19.98: [ 3910]: RECV FAX: begin
Feb 14 10:33:19.98: [ 3910]: --> [26:+FTSI:       +496861934xxx]
Feb 14 10:33:19.98: [ 3910]: REMOTE TSI "+496861934xxx"
Feb 14 10:33:19.98: [ 3910]: --> [22:+FDCS: 0,D,0,2,0,2,0,0]
----

To be more specific, my setup consist of an EICON DIVA SERVER PRI card connected to another PRI card on another machine running asterisk.
Now as I would not know a way to submit two different sets of callerid info through ISDN the Problem must be searched on the Eicon/hylafax layer.

I suspect the EICON drivers to not correctly reseting the modem in some special cases before answering another call. But this is only a guess.

If you have another idea I'd be glad to hear about it. Anyway I think there should be some kind of work around. Is there any hylafax config option which
blocks a modem for a while or resets it after its been used ? Or could an alteration of RingsBefore answer lower the danger of this problem ?

Any idea is appreciated..

find my current device config further down ..

Thanks
Moritz

---- ttyds01 config

LongDistancePrefix: 0
InternationalPrefix:    00
DialStringRules:    etc/dialrules
NotifyCmd:  /bin/true
ServerTracing:      0xFFFFF
SessionTracing:     0xFFFFF
RecvFileMode:       0600
LogFileMode:        0600
DeviceMode:         0600
RingsBeforeAnswer:  3
SpeakerVolume:      off
GettyArgs:         "-b -r -s %s %l"
LocalIdentifier:    Fax
UseJobTSI:  Yes
TagLineFont:        etc/lutRS18.pcf
#TagLineFormat:     "From %%l|%c|Page %%P of %%T"
TagLineFormat:      "%%m|%t|Seite %%P von %%T"
MaxRecvPages:       200
MaxConsecutiveBadLines: 0       # don't check (default is 5)
PercentGoodLines:   0       # don't check (default is 95%)
#
#
ModemType:              Class2
ModemRate:              57600   # Diva Server supports V.34-fax
ModemFlowControl:       rtscts
ModemNoFlowCmd:         AT&K0
ModemSoftFlowCmd:       AT&K4
ModemHardFlowCmd:       AT&K3

ModemSetOriginCmd:     AT+iO%d

ModemResultCodesCmd:    ATQ0        # enable result codes
ModemVerboseResultsCmd: ATV1        # enable verbose command results

Class2APQueryCmd:       none
Class2SPLCmd:           none
Class2TBCCmd:           none
Class2PHCTOCmd:         none

Class2ECMType:          2.0     # follows Class 2.0 spec, not Class 2
Class2CQQueryCmd:       !3
Class2CQCmd:            AT
Class2UseHex:           true

#Bind Modem to Controller 1
ModemResetCmds:         AT#CID=14+iQ=a1

CIDNumber:              "DAD: "
CIDName:                "CID: "




Project hosted by iFAX Solutions