安装好 dahdi之后,make config就会生成默认的配置文件
/etc/dahdi/init.conf
init.d自动启动脚本的配置,一般不需要改,以前是放在/etc/sysconfig下面的
/etc/dahdi/modules
需要加载的modules,看你的板卡型号,把不需要的注释掉
我的是TE410P,使用 wct4xxp
# Digium TE205P/TE207P/TE210P/TE212P: PCI dual-port T1/E1/J1
# Digium TE405P/TE407P/TE410P/TE412P: PCI quad-port T1/E1/J1
# Digium TE220: PCI-Express dual-port T1/E1/J1
# Digium TE420: PCI-Express quad-port T1/E1/J1
wct4xxp
/etc/dahdi/system.conf
最重要的配置文件,里面参数很多,基本都有注释,很清楚的了。
下面是我的情况,一条E1连接到该卡#1端口上面,配置如下
# Span 1: TE4/0/1 “T4XXP (PCI) Card 0 Span 1″ (MASTER) HDB3/CCS
span=1,1,0,ccs,hdb3
# termtype: te
bchan=1-15,17-31
dchan=16
echocanceller=mg2,1-15,17-31
# Global da
loadzone = no
defaultzone = no
请参照你的E1,看看有没有用crc4,我配置了半天发现我的E1上面是不能加crc4的,郁闷死,嘿嘿。defaultzone 据说中国设置为no。
另外echocanceller也很重要,这个是硬件的回音消除,TE410P就支持。
/etc/modprobe.d/blacklist
这个是modules 不加载的列表,默认是要先取消所有模块,然后再加载。不用改
/etc/modprobe.d/dahdi
这个是每个模块的特别设置,比如T1到E1的软跳线,4个端口,一个个跳
The driver accepts parameter t1e1override and decimal value between 0 and 15 wich corespond to binary from 0000 to 1111 where each bit corespond to a span. 0 is T1 and 1 is E1.
< |> 0 | 0000 1 | 0001 2 | 0010 3 | 0011 4 | 0100 5 | 0101 6 | 0110 7 | 0111 8 | 1000 9 | 1001 10 | 1010 11 | 1011 12 | 1100 13 | 1101 14 | 1110 15 | 1111
But how to know which port is configured for T1 or E1? Take a look at the picture below.
debug就是调试信息输出到syslog
noburst 就是是否开启突发传输,默认noburst=1就是关闭burst
options wct4xxp t1e1override=15 debug=1 noburst=0
options dahdi debug=1
启动脚本:
/etc/init.d/dahdi
Asterisk 1.6的配置文件:chan_dahdi.conf
[channels]
language=en
context=default
switchtype=euroisdn
pridialplan=national
internationalprefix = +
nationalprefix = +86
localprefix = +8620
privateprefix = +8620xxxxxxxx
unknownprefix =
signalling=pri_cpe
usecallerid=yes
hidecallerid=no
callwaiting=yes
callwaitingcallerid=yes
threewaycalling=yes
transfer=yes
cancallforward=yes
echocancel=yes
rxgain=0.0
txgain=0.0
group=1
callgroup=1
pickupgroup=1
immediate=no
callprogress=no
callerid=asreceived
group=1
context=default
signalling=pri_cpe
channel => 1-15,17-31
评论