走遍中国乌托邦电脑技术 → asterisk 安装1.8


  共有781人关注过本帖树形打印复制链接

主题:asterisk 安装1.8

帅哥哟,离线,有人找我吗?
PABX
  1楼 博客 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:79 积分:960 威望:0 精华:0 注册:2011/4/16 21:27:45
asterisk 安装1.8  发帖心情 Post By:2018/7/3 11:05:31 [只看该作者]

 
使用的版本:Asterisk 1.8.15
 
Q:安装过程中总是安装不上mysql相关的库,比如app_mysql.so,res_config_mysql.so, cdr_mysql.so
A:安装make之前运行make menuselect,选中mysql相关的选项,保存退出后继续安装。
 
Q:call能建立起来但是RTP语音出现单通或者不通的情况。
A:
1>  如果Asterisk在NAT里,CLIENT在火墙外,请确认rtp.conf 里的rtpstart, rtpend的范围是否在NAT已经打开了相应的映射。
2>  确认是否有一方是经过防火墙或者路由器之后再连接到Astersik的,这样SIP SDP里的IP为内网里的内网地址,当Asterisk根据SDP的RTP接收地址发RTP包时,会向那个Asterisk找不到的内网地址发包。
此时需要配置nat相关配置,如下:
externip=x.x.x.x
;externhost=aaa.net
externrefresh=10
localnet=10.10.200.0/255.255.0.0 ;Zero conf local network
nat=comedia 
上面这个配置的意思是:当SDP中的IP不在localnet标识的范围时,Asterisk会将SDP里的地址转换为externip的地址。RTP的路由规则为comdia,也就是从哪个地址来的RTP流,就按该地址返回另一端发过去的RTP,这样就不再依赖SDP里的地址是否能访问到。
1.8之后才有的comdia,之前的还请使用nat=yes
 
Q:实物电话挂机后,软电话端收不到BYE,检测不到对方挂机。
A:修改配置文件 chan_dahdi.conf, 打开busydetect=yes, busycount=4 使得Asterisk能检测挂机音,识别后给对端SIP设备发BYE。 
 
Q:实际的RTP语音已经传输失败了,或者其他原因SIP设备没有发出BYE, Asterisk却一直给这个CALL留着channel通道,没有释放。
A:在sip.conf的general里加入rtptimeout=N  (N的单位为秒)配置,含义为N秒没有RTP流时主动切掉这个CALL。
 
Q:通话质量不好,回音影响严重
A:chan_dahdi.conf 文件中的相关配置:
echocancel=yes
echocancelwhenbridged=yes
echotraining=yes
rxgain=8
txgain=8
;rxgain,txgain的数字需要调整尝试,找到合适的数值。



 回到顶部