Cannot get busydetect to work

My phone company does not provide disconnect supervision, there is no polarity change (at least not on incoming calls) and no voltage drop either. So, I need busydetect. I tried lots of different settings, but nothing seems to work. Incoming and outgoing calls work fine, sound is ok, CLI works. Just no hangup detection. How can I debug this?


My System:
Debian Etch
Asterisk 1.4.19
Asterisk Add-ons 1.4.6
Zaptel 1.4.10
X100P clone (Atcom AX100-P)
Telco: PCCW (Hong Kong)

lsmod | egrep "wc|zap"
wctdm 35436 0
wcfxo 11776 0
zaptel 186180 8 wctdm,wcfxo
crc_ccitt 2240 1 zaptel

/etc/zaptel.conf
fxsls=1
loadzone = us
defaultzone=us

/etc/asterisk/zapata.conf
[channels]
context=from_PCCW
signalling=fxs_ls
channel => 1
busydetect=yes
busycount=6
busypattern=500,500
usecallerid=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=no
rxgain=0.0
txgain=50.0

I checked the zone data and compared them to the info I found on the regulator’s website. The signals specified in HKTA 2201 are the same as defined in zaptel/zonedata.c for country=us. (ofta.gov.hk/en/standards/hkt … ta2201.pdf)

knock knock

Fixed the problem. The “channel => 1” needs to come after all the other settings. The txgain=50 is ridiculously high, but had no effect for the same reason. Here is a corrected config:

/etc/asterisk/zapata.conf
[channels]
context=from_PCCW
signalling=fxs_ls
busydetect=yes
busycount=6
busypattern=500,500
usecallerid=yes
echocancel=yes
echocancelwhenbridged=no
echotraining=no
rxgain=0.0
txgain=3.0 
channel => 1

Thanks to JasonR from the trixbox forums. :smiley: