- 论坛徽章:
- 0
|
Normal
0
7.8 磅
0
2
false
false
false
EN-US
ZH-CN
X-NONE
/* Style Definitions */
table.MsoNormalTable
{mso-style-name:普通表格;
mso-tstyle-rowband-size:0;
mso-tstyle-colband-size:0;
mso-style-noshow:yes;
mso-style-priority:99;
mso-style-qformat:yes;
mso-style-parent:"";
mso-padding-alt:0cm 5.4pt 0cm 5.4pt;
mso-para-margin:0cm;
mso-para-margin-bottom:.0001pt;
mso-pagination:widow-orphan;
font-size:10.5pt;
mso-bidi-font-size:11.0pt;
font-family:"Calibri","sans-serif";
mso-ascii-font-family:Calibri;
mso-ascii-theme-font:minor-latin;
mso-hansi-font-family:Calibri;
mso-hansi-theme-font:minor-latin;
mso-font-kerning:1.0pt;}
asterisk pbx系统安装配置手册1
Asterisk pbx系统安装配置手册 1.0
一:系统及安装包选择
1.1操作系统: fedora 7。 必须选上mysql相关的所有选项,其他的按照默认即可。
由于安装asterisk-addons中需要使用mysqlclient,需要另外安装一个
mysql-devel-5.0.37-2.fc7.i386.rpm,否则会有无法找到mysql.h的错误。安装方法:
rpm -ivh mysql-devel-5.0.37-2.fc7.i386.rpm.
至此,系统平台搭建完毕,基于此系统下,以后的编译一般不会有问题。
1.2 asterisk相关包
主程序 : asterisk-1.4.11
会议定时相关: zapatel-1.4.5.1
以及 asterisk-addons-1.4.2,asterisk-sounds-1.2.1,asteriskgui,astbill-0.9.22.
1.2.1 zaptel-1.4.5.1安装
Zaptel的安装必须在主程序之前,这样在编译主程序的时候就能够找到ztdummy,才能够选择编译会议相关功能。
进入zaptel目录:
-Make clean
-./configure
-Make menuselect
这里记得选上Kernel Modules中的全部选项,其他的采用默认选项。
-make
-make install.
1.2.2 asterisk-1.4.11安装
进入asterisk目录:
-make clean
-./configure
-make menuselect
Application中的全部选中,Dialplan Functions除odbc相关其他能选的全部选上,其余默认。
-make
-make install
-make samples
Asterisk-addons和asterisk-sounds的安装基本差不多。
1.2.3 asteriskgui 安装
http://svn.digium.com/svn/asterisk-gui/trunk
gui源码获取。
进入目录:
-./configure
-make
-make install
1.2.4 astbill 安装
http://sourceforge.net/projects/astbill/
源码下载。
Astbill需要的支持比较多,有mysql,perl,apache等,这在我们搭建系统的时候就已经完成了,所以无需再考虑。
进入目录,然后 chmod +x install.sh
-./install.sh
为astbill准备数据库,请参考安装包当中的文档 installmysql.txt
注意,astbill的安装会覆盖/etc/asterisk目录下的asterisk相关配置文件,请备份!!
安装完后,在/usr/sbin下运行./safe_asterisk加载系统。
二. 配置
2.1 asterisk 基本配置文件
Asterisk的配置文件都在/etc/asterisk目录下,重要的配置文件有:
sip.conf sip电话基本配置
extensions.conf 拨号规则
voicemail.conf 配置语音信箱
meetme.conf 会议室
http.conf web界面相关
manager.conf web界面相关
asterisk.conf asterisk目录的配置
cdr_mysql.conf 详单数据库
res_mysql.conf mysql数据库设置
features.conf 自定义按键配置,同时还有一些系统默认的功能键
modules.conf 定义系统启动时加载的模块
logger.conf 日志
下面简单介绍一下这几个文件的配置,当然只给出最简单的配置,如需更深入的了解,请参考系统给出的样本配置。下面的配置如无特别提出,请在系统的样本配置末端加入。
2.1.1 sip.conf
[101]
type=friend;
secret=101;
host=dynamic; //需要注册到服务器
context=default;
username=101;
;callgroup=1; //组设置
;pickupgroup=1;
mailbox=101@default //语音信箱
[102]
type=friend;
secret=102;
host=dynamic
context=default;
username=102;
;callgroup=1;
;pickupgroup=1;
mailbox=102@default
[ServerA] //声明另一个asterisk服务器,可以在拨号规则中呼叫
;pickupgroup=1;
type = friend
secret =
username = ServerA
fromuser = ServerA
context = default ;
insecure = very ;
authname = ServerA
canreinvite = no
host = 192.168.52.19 //对端服务器ip地址
2.1.2 extensions.conf
[default]
include => DID //包含DID context
include => featuremap //可以使用features.conf中定义的功能
include => parkedcalls //支持call park
exten => 1000,1,saydigits(${EXTEN})
exten =>
1000,2,Set(DYNAMIC_FEATURES=testfeature#musichold#record#unrecord)
exten => 1000,3,background(hello-world)
exten => 1000,4,waitexten(10,m)
exten => i,1,playback(pbx-invalid)
exten => i,2,goto(default,1000,1)
exten => t,1,playback(vm-goodbye)
exten => t,2,hangup()
exten => 1,1,goto(internal,s,1)
exten => _9.,1,goto(out-bound,s,1) //拨9呼外线,需另外写out-bound context。
exten =>
500,1,voicemailmain() //收听语音信箱内容
exten => 500,2,hangup()
exten =>
1234,1,meetme(,IpM) //拨500加入会议,会提示输入会议号和密码
exten => _5XXX,1,Dial(SIP/ServerA/${EXTEN:1},30,r) //拨5呼叫serverA下的用户
exten => _5XXX,2,Answer()
exent => _5XXX,3,hangup()
[internal]
include => featuremap
include => parkedcalls
exten => s,1,Ringing
exten => s,n,wait,2
exten => s,n,background(enter-ext-of-person)
exten => s,n,waitexten(10,m)
exten => _1XX,1,wait(3)
exten =>
_1XX,2,Set(DYNAMIC_FEATURES=testfeature#musichold#record#unrecord)
exten => _1XX,3,Dial(SIP/${EXTEN},10,tTwW)
exten => _1XX,4,playback(vm-nobodyavail)
exten => _1XX,5,voicemail(u${EXTEN}@default) //超时5秒转语音信箱
exten => _1XX,6,hangup()
exten => _1XX,104,playback(tt-busy)
exten => _1XX,105,voicemail(b${EXTEN}@default) //用户忙转语音信箱
2.1.3 voicemail.conf
[default]
101 => 101,101,101@asterisk.com
102 => 102,102,102@asterisk.com
为101,102两个用户声明语音信箱。 后面的地址没有关系,关键是@前面的用户名和密码。
2.1.4 meetme.conf
[rooms]
conf => 1001,1111,2222 声明会议室号1001,普通用户进入密码1111,管理员密码2222。
2.1.5 http.conf , manager.conf
如要使用web功能,在这两http.conf中设置:
enabled=yes
enablestatic=yes
在manager.conf中设置:
[general]
displaysystemname = yes
enabled = yes
webenabled = yes
port = 5038
[administrator] //添加asterisk
gui用户
secret = 123456
read = system,call,log,verbose,command,agent,user,config
write = system,call,log,verbose,command,agent,user,config
[astbillman] //添加astbill用户
secret = ab87AstBtii3
deny=0.0.0.0/0.0.0.0
;permit=81.229.203.216/255.255.255.255
permit=127.0.0.1/255.255.255.255
read = system,call,log,verbose,command,agent,user
write = system,call,log,verbose,command,agent,user
2.1.6 cdr_mysql.conf
[global]
hostname=
localhost //数据库在asterisk运行的本机上
dbname=
asteriskcdrdb
table= cdr
password= password
user= asteriskcdruser
port= 3306
sock=/var/lib/mysql/mysql.sock
userfield=1
在每次通话结束后,运行mysql,使用asteriskcdrdb数据库就能看到在cdr表下产生的话单。
2.1.7 res_mysql.conf
[general]
dbhost = localhost //astbill 数据库
dbname = astbill
dbuser = astbilluser
dbpass = astbill419
dbport = 3306
dbsock = /var/lib/mysql/mysql.sock
2.1.8 features.conf
[featuremap]
blindxfer => ## ; Blind transfer (default is
#)
;disconnect =>
*0
; Disconnect (default is *)
automon => *1 ; One Touch Record a.k.a. Touch
Monitor
;atxfer =>
*2
; Attended transfer
;parkcall =>
#72
; Park call (one step parking)
testfeature =>
#9 //以下为自定义功能
musichold => #8
record => #1
unrecord => #2
[applicationmap]
musichold => #8,peer,MusicOnHold,default
record => #1,peer,Monitor //按下#1键开始录音
unrecord => #2,peer,StopMonitor //按下#2键停止录音
testfeature => #9,peer,Playback,tt-monkeys //按下#9播放tt-monkeys,kidding.
2.1.9 logger.conf
[logfiles]
debug => debug
console => notice,warning,error
messages => notice,warning,error //都是设置要输出的信息。
保存在/var/log/asterisk下。
生活
1条评论
·
Trixbox 的 web 操作界面, 只是一个外壳, 本质上, 需要理解 /etc/asterisk 目录下面的配置
文件, 才能理解 问题 出在了哪里?
在配置 N 个会议室, 需要在 文件meetme.conf 中配置 N 个会议室, 例如:
conf => 1234
就配置了会议室 1234 。 要配置多个, 就在这里加上多个行,如。
conf => 1235
再在 extensions.conf 文件中,加上这个会议室的号码,
比如:
[default ]
exten => 8600,1,Meetme(1234|p)
这样配置了后, 重新 asterisk ,或者说 reload 配置。
这样SIP 电话 一拔 8600, 就进入了 会议室 1234。
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u2/77518/showart_1149889.html |
|