asterisk配置小结

合集下载

asterisk拨号方案的配置

asterisk拨号方案的配置

asterisk拨号方案的配置asterisk拨号方案的配置配置文件“extensions.conf”包含了Asterisk的拨号方案(dial plan)。

它的所有操作的控制和执行流程的主要方案。

它控制呼入和呼出是如何被处理和路由。

这里是你配置连接行为的地方。

"extensions.conf"的内容以“节”的形式组织。

它可以静态设置和定义,作为上下文被执行。

设置节有general 和globals 两种形式,由系统管理员完全定义。

一种特殊类型的“contexts”是macros,由用户自定义,命名前缀是“macro-”,这是可重用的模式,如同编程语言里的“过程”。

extensions.conf中每一节都由[]中的节名开始。

这使得extensions.conf具有和windows世界里传统的ini文件非常相似的结构。

Asterisk v1.2中的新东西:默认情况下,有一个新的选项“autofallthrough”被设置成了“yes”. 这个设置改变了以前的规则使得遇忙,阻塞,挂起的呼叫被立即终止。

如果你正在为IVR 写一个extension.你必须使用“WaitExten”应用程序。

[general] extentions.conf文件的顶部,配置几个设置。

[globals] 接着,在[globals]节中,你可以定义全局变量/常量,以及他们的初始值。

Contexts 和Extensions在[general]和[globals]之后,extentions.conf文件的剩余部分就是dialplan的定义了。

dialplan是由contexts的集合组成的。

每个context是由extensions的集合组成。

Extension 模式当你在context中定义extension时,你不仅使用文字数字,字母,还要匹配extension 模式。

Context包括的内容一个extension context可以嵌套另一个,参考一下下面的范例:Context "default":Extension Description101 Mark Spencer102 Wil Meadows0 OperatorContext "local":Extension Description_9NXXXXXX Local callsinclude => "default"Context "longdistance":Extension Description_91NXXNXXXXXX Long distance callsinclude => "local"这里我们定义三种extension第一种content:default 允许拨打三个电话extension: Mark, Wil, and the Operator.第二种content:local 一个扩展模式:允许拨打7位数字号码(本地呼叫),同时也包括“default”context,这样也允许用户拨打Mark,Wil,或者是操作员。

《Asterisk 使用资料》

《Asterisk 使用资料》

Asterisk目录及配置文件/etc/asterisk/Asterisk主目录,包含其它关于Asterisk的配置文件;*zaptel.conf这个配置文件放在/etc,因为其它软件也可以使用Zaptel这个硬件及其驱动,所以不是放在/etc/asterisk里./usr/lib/asterisk/modules/这个目录包含所有可以加载Asterisk模块(应用程序\编辑器\格式和有用通道),在Asterisk启运时会加载这些模块(可以编辑modules.conf)./var/lib/asterisk/比较重要的是astdb文件与agi-bin目录;astdb包含Asterisk当地数据库信息.sounds/所有声音提示的文件在里面,包括Asterisk原代码中的sounds.txt文件mohmp3/如果配置了音乐保持,应用程序会在这个目录下查找mp3(用CBR从文件中去除身份标签).keys/使用公钥和私钥系统认证与一个由RSA数字签名形成的一对等连接.公钥和私钥的扩展名分别为.pub和.keyfirmware/这个目录含了很多Asterisk相兼容的设备固件,它只有iax/这个子目录,其中有Digium的IAXy的二进制固件镜像.images/只有在较多的支持并且利用图解式的图像设备被发布,这个目录将会与相应的目录有更大的关联./var/lib/asterisk/agi-bin agi-bin包含所有脚本,可以通过许多已经建立的AGI应用程序与Asterisk连接./var/spool/asteriskoutgoing/gcall/tmp/voicemail/================配置文件================/etc/asterisk/asterisk.conf主要配置文件,/etc/zaptel.conf硬件接口的基本层.修改这个配置文件要用modprobe装载Linux Kernel使用模块./etc/asterisk/zapata.conf为硬件配置Asterisk的接口./etc/asterisk/extensions.conf拨号方案./etc/asterisk/sip.conf SIP协议配置文件/etc/asterisk/iax.conf呼入和呼出IAX通道/etc/asterisk/extensions.conf拨号方案配置文件/etc/asterisk/moduprobe.conf加载模块配置文件Asterisk developer\'s documentation 翻译计划by serva今天,Asterisk已经成为一个VOIP业界使用最广泛的一个集成电信级别P BX的工具,IPPBX如今已经成为VOIP商家争夺的一块重要市场,在我们越来越熟悉使用Asterisk的同时,我们希望能够越来越深入的了解asterisk,特别是对于开发人员,如果有自己特定的需求,在复杂的asterisk文件夹和asteri sk的源代码文件中迷失了方向,不知所措。

Asterisk 系统及其应用分析

Asterisk 系统及其应用分析
Asterisk 会话建立流程(收到呼入电话然后外拨,建立会话通道的全过程)如图 4 所示。
4

图4 Asterisk 会话建立流程
呼入抵达Asterisk时的场景: ⑴ 呼叫到达监听端口,被某一类通道驱动的接口感知,比如 SIP socket; ⑵ 通道驱动为其创建一个 PBX 通道并且为这个通道开启一个 PBX 线程; ⑶ 执行拨号方案; 在这个时候至少发生下面其中之一: a.Asterisk 应答这个呼叫并且播放媒体数据或者读取媒体数据,比如 IVR 业务。 b.拨号方案促使 Asterisk 通过 dial 应用(dial application)创建一个对外呼叫。 ⑷ 桥接通道(Bridging channels)。
(1) 功能多,并且易于扩展新的增值业务。通过软件来实现基于 VOIP 的 PBX 功能意味 着无需很大开支就能实现如电话会议、电话转接、语音信箱、收发传真等诸多功能。
(2) 硬件成本低,局域网的网络拓扑可满足新办公室的布线需求,无须考虑其它电话布 线。可用标准 PC 组件来设计并部署系统,比传统方式具有更大价格优势。
1
2. Asterisk 的特点

Asterisk 是一套可以运行在 Linux 上的 VOIP 软件系统。Asterisk 的主要特性是:它提 供了由垄断到开源、由电路交换到 VOIP、由单一声音通讯到多媒体、视频和数据通讯、由 数字信号进程到媒体流进程、由集中式交换到点对点交换等的 VOIP 技术实现。通过 Asterisk, 你能与上一个世纪六十年代的脉冲拨号的电话通话,也能与最新的 VOIP 设备通话。总的来 说,用 Asterisk 来实现 IP-PBX 系统有以下几个优点[1]:
除了能看到的优点在深层次的意义上ippbx系统导致了新的真正集成化的数据语音应用的大量出现甚至是当前的iptv从而引起了人们日常工作模式的进步以及效率的提asterisk系统结构系统结构系统结构系统结构31asterisk的核心功能的核心功能的核心功能的核心功能asterisk是整个软件的核心系统中所有与用户呼叫有关的功能和管理都通过它来实现

Asterisk系统的安装与配置

Asterisk系统的安装与配置

Asterisk系统的安装与配置一、安装包装备asterisk1.8.7.1.tar.gzdahdi-linux-complete-2.6.1+2.6.1.tar.gzdahdi是Asterisk管理硬件的插件(中间件)二、安装dahdi 安装时需要下载东西,所以需要互联网1.tar zxvf dahdi-linux-complete-2.6.1+2.6.1.tar.gz2.cd dahdi-linux-complete-2.6.1+2.6.13.make all4.make install5.make config ;生成启动脚本/etc/init.d/dahdi6./etc/init.d/dahdi restart ;启动dahdi7.chkconfig dahdi on ;检查编译DAHDI时CONFLICTING TYPES FOR ‘BOOL’解决办法,google上面有,说是linux版本宏引起的。

三、安装asterisk1.tar zxvf asterisk1.8.7.1.tar.gz2.cd asterisk1.8.7.13../configure --build=i3864.;指定安装路径 ./configure --prefix=/usr/local5.make menuselect ;在配置界面选中meete应用6.make ;编译7.make install 安装Asterisk8.make samples ;安装配置文件模版/etc/asterisk下9.make progdocs ;安装Asterisk程序文档10.asterisk 启动四、配置SIP通道默认语言 /etc/asterisk/sip.conf[general]language=cn/enbindaddr=0.0.0.0 服务器IP五、配置基本SIP账户 /etc/asterisk/sip.conf1.CLI命令sip show userssip show peerssip show settingssip set debug on/offsip reload2.分机号码模板[SIPPHONE](!)type=friend 呼入呼出均可host=dynamic 分机号注册时获取contex=geeyavoip ; 分机号呼入时使用的上下文extensions.conf中的上下文nat=no 不支持natqualify=20003.使用号码模板定义分机号[301](SIPPHONE) ;继承SIPPHONE模板username=301accountcode=301directrtpsetup=yes aster工作在proxy,不修改sdp实现rtp透传;secret=301 ;无需密码则注释掉这句;directmidia=yes 媒体穿越nat NAT=yes;canreinvite = yes 与上面一行等效的to disable re-invites if you had NAT=yes六、配置电话会议室 /etc/asterisk/meete.conf[rooms] ;会议室号将作为拨号计划中 meetme参数conf => 1001 ;定义会议室号1001,无密码conf => 1002,918 ;定义会议室密码为918备注:拨号计划中调用meetme函数时,将进入会议桥,如需要密码,系统将提示输入会议室密码。

Asterisk安装和配置

Asterisk安装和配置

1.安裝所需套件yum install gcc gcc-c++ kernel-devel zlib zlib-devel openssl openssl-devel2.下载asterisk、libpri、zaptelcd /usr/local/src/wgetwgetwget3.安装zapteltar -zxvf zaptel-.1.tar.gzcd /usr/local/src/zaptel-.1./configuremakemake installmodprobe zaptel4.安装libpritar -zxvf libpri-.tar.gzcd /usr/local/src/libpri-makemake install5.安装asterisktar -zxvf asterisk-.tar.gzcd /usr/local/src/asterisk-./configuremakemake installmake samplesasterisk -vvvc6.分机配置vim /etc/asterisk/sip.confSIP分机常用参数配置:[101] ;SIP分机注册账号callerid=ABC ;分机显示名称(可不设定)username=101 ;SIP再注册时要使用的账号(可不设定)type=friend ;连线的模式,一般话机设成friendsecret=101 ;分机注册密码qualify=yes ;验证模式,只有在type=peer时生效(可不设定)nat=yes ;是否在NAT下host=dynamic ;搜寻Client的模式,dynamic由话机主动去注册或者输入Hostname、IP由SIP Server去连线dtmfmode=rfc2833 ;按键信号模式,预设为rfc2833context=internal ;设定要用extensions.conf哪一组的动作canreinvite=no ;分机直通或由SIP连接callgroup=0 ;定义群组,可利用于群组广播....等(可不设定)pickupgroup=0 ;定义代接群组(可不设定)[102]username=102type=friendsecret=102qualify=yesnat=yeshost=dynamicdtmfmode=rfc2833context=internalcanreinvite=no7.设定接通动作vim /etc/asterisk/extensions.conf最后面加放设定[internal]exten => _X.,1,Dial(SIP/${EXTEN}|30) exten => _X.,n,Hangup()说明:_:代表开头X:代表0-9.:代表任意长度的字元_X.:电话以数字开始不限制长度Dial:接通SIP:线路模式SIP协议${EXTEN}:收到的号码30:只振玲等待30秒Hangup:挂断8.设定远端管理账号(依需求设定)vim /etc/asterisk/manager.confenabled = yes最后面增加[admin] secret=admin deny=.0/0.0.0.0 permit=127.0.0.1/255.255.255.0 read = system,call,log,verbose,command,agent,user write =system,call,log,verbose,command,agent,user用telnet localhost 5038到asterisk的管理界面出现Asterisk Call Manager/1.0输入action: login <enter>username: admin <enter>secret: admin <enter><e。

Asterisk配置文详解

Asterisk配置文详解

Asterisk配置文详解当安装完Asterisk,验证启动无误,就需要开始配置PBX了,首先需要告诉Asterisk那些类型的电话连接(手持设备,交换设备等,不管是通过电路还是IP),这些被称为通道。

Asterisk 的通道配置下一步任务是配置拨号方案,拨号方案控制进入系统的呼叫根据设定的各种应用的走向,直到完成目标。

Asterisk 的拨号方案配置现在已经运行了Asterisk,但是否需要一些额外的铃音或提示音?Music on Hold (音乐保持)Call Parking (呼叫停泊)Billing (计费)Management interfaces (管理接口)模板可以帮助避免在配置文件中出现重复项目。

STS模板引擎可以从模板中生成 Asterisk 配置文件。

Alternative Methods of Configuration•GUI or Web based setup tools, see Asterisk GUI•MySQL etc databases主配置文件:•asterisk.conf,通知Asterisk 环境目录位置,包含其他所有配置文件所包含的目录,缺省Asterisk 会在"/etc/asterisk/"目录下找"asterisk.conf"文件,也可以通过命令参数使用不同的"asterisk.conf"配置Asterisk通道:•adtranvofr.conf: 配置帧中继语音通道•agents.conf: 配置代理通道•h323.conf: 配置H323 通道•iax.conf: 配置IAX 通道•mgcp.conf: 配置MGCP 通道(媒体网关控制协议,应用于多媒体网关单元之间)•modem.conf: 配置Modem 通道(使用ISDN,不是modem)•phone.conf: 配置电话通道(linux电话设备)•sip.conf: 配置SIP 通道•sip_notify.conf: 配置 SIP 消息通知•skinny.conf: 配置Cisco SCCP 通道 (Cisco SCCP)•vpb.conf: 配置Voicetronix 卡通道(是澳大利亚的开放源码的CTI专业制造厂商)•zapata.conf: 配置 ZAP 卡通道配置模拟显示服务接口:•adsi.conf•asterisk.adsi•telcordia-1.adsiConfiguration of the Dialplan:•extensions.conf: 拨号方案•extensions.ael: 扩展拨号方案语言•parking.conf: 配置呼叫停泊,文件名字已被修改为features.conf•extconfig.conf: 通过res_data 方式部署扩展配置,例如通过ODBC配置特殊拨号方案命令:•alarmreceiver.conf: 警报接收配置•enum.conf: 电话号码映射查找配置•dundi.conf: 分布式全球号码发现(DUNDi)是一个对等(P2P)协议,用于提供等价于那些由电子号码(ENUM)提供的服务。

Asterisk安装与配置

Asterisk安装与配置
Enable:
YES
Display
Name: 1001
Username:
1001
Authorization
User: 1001
Password:
test
Domain/Realm:
xx.xx.xx.xx ;Asterisk服务器地址
SIP
Proxy: xx.xx.xx.xx ;Astersk服务器地址
Asterisk应该搭配数据库,不然从语音邮箱考虑,存储都是个问题。。。。

=> 1234, qiong,
[email=qiong@asterisk-server]qiong@asterisk-server[/email]
1002
=> 1234, ddd,
[email=ddd@astersik-server]ddd@astersik-server[/email]
kernel-smp-devel--zaptel
gcc-c++--asterisk
openssl-devel--asterisk
newt-devel--zaptel
zlib-devel--asterisk
unixODBC-devel--asterisk
libtool--asterisk
#
make config ;对于REDHAT系列系统,可将asterisk添加到/etc/rc.d/init.d中
#
make samples ;安装配置文件
3、Asterisk简易配置
make--asterisk
注:很多包在安装光盘中都有,不需要再下载。

asterisk sip配置说明详述

asterisk sip配置说明详述

asterisk sip配置说明1. 介绍extensions.conf中使用sip设备的语法是SIP/devicename,devicename名在下一节中说明。

如果用户在Internet上,可以使用SIP/username@domain形式,同时不要忘记打开D NS SRV功能。

如果定义了一个SIP代理,可以使用SIP/proxyhostname/user或者SIP/user@proxy hostname形式,proxyhostname的定义在下面的章节说明。

2. 在CLI中的查询命令:u sip show peers 显示所有的SIP peers(包括friends)u sip show users 显示所有的SIP users(包括friends)u sip show registry 显示注册到的主机状态u sip debug 显示所有的Sip信息u module reload chan_sip.so 重新装载sip的配置文件3. 设备命名命名一个设备之前,要先理解Asterisk是怎么处理呼入电话的:1) Asterisk取出SIP From: address中的username,使用它来匹配系统中定义的type=user的的设备名。

2) Asterisk检查INVITE请求中的IP地址和端口号,使用它来匹配系统中定义的t ype=peer的设备。

不要混淆extensions和设备名的概念。

设备需要一个唯一的名字。

设备名不能用于电话号码。

电话号码是拨号计划中的声明的一个extension。

注意:参数username并不是用户名的意思,在大多数情况下,它根本不是必须的。

在后边,我们把它重命名做defaultuser,因为他与defaultip合并使用。

4. 通用属性说明[general] ;通用属性context=default ;呼入电话默认使用的contextallowguest=no ; 允许或拒绝客户呼叫 (默认 yes)allowoverlap=no ; 允许重叠拨号(默认yes)allowtransfer=no ; 允许呼叫转接(默认yes)realm=mydomain.tld ; 认证的领域。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

asterisk配置简单解说
软件版本
asterisk 1.2.7.1
gix101e sip 130 中文
一:通话设置部分
1:软件安装
debian系统下面可以使用如下命令安装,如果是其他发行版可以自己编译安装或者使用相应的包安装。

vax:/home/ailantian# apt-get install asterisk
2:帐户设置
sip的帐户设置
vax:/home/ailantian# cd /etc/asterisk/
vax:/etc/asterisk# ls
adsi.conf codecs.conf logger.conf res_odbc.conf
adtranvofr.conf dnsmgr.conf manager.conf rpt.conf
agents.conf dundi.conf meetme.conf rtp.conf
alarmreceiver.conf enum.conf mgcp.conf sip.conf
alsa.conf extconfig.conf misdn.conf sip_notify.conf
asterisk.adsi extensions.ael modem.conf skinny.conf
asterisk.conf extensions.conf modules.conf telcordia-1.adsi
cdr.conf features.conf musiconhold.conf voicemail.conf
cdr_custom.conf festival.conf osp.conf vpb.conf
cdr_manager.conf h323.conf oss.conf zapata.conf
cdr_odbc.conf iax.conf phone.conf
cdr_pgsql.conf iaxprov.conf privacy.conf
cdr_tds.conf indications.conf queues.conf
这个目录下面的sip.conf
bindaddr=192.168.100.144;这个填自己的ip地址。

allow=all;允许所有的解码类型。

添加下面的字段。

下面的是帐户信息。

[777]
type=friend
username=777
secret=777
host=dynamic ; This device registers with us
[888]
type=friend
username=888
secret=
host=dynamic ; This device registers with us
[333]
type=friend
username=333
secret=
host=dynamic
然后还需要修改的文件是extensions.conf
然后才能够互通,否则可能会收到404,或者407错误。

我们可以添加如下一行
exten => _X.,1,Dial(SIP/${EXTEN},20)
这样以后,我们拨打哪个号码,asterisk会转发这个请求,那个号码就会收到请求。

上面这行的意思是说,拨打任意数字开头的号码的时候,asterisk就会执行拨打这个号码的任务。

二:transfor功能
这个功能asterisk是完全支持的。

测试过hold相关的类别还有forwarding这些,另外还进行了如下的测试。

++++++++++++
A->B
A hold B(*77)
A ->C
A(*79)
结果,BC通话中。

正常
+++++++++
A->B
A (*78)
A->C
结果BC正常通话。

正常。

二:语音信箱部分
涉及到三个文件voicemail.conf,extensions.conf,sip.conf
下面的修改只是为了测试使用,仅仅用来说明原理,如果要达到实用的程度需要加以改进我使用了222这个帐户来做测试使用。

先看sip.conf的修改,需要添加mailbox字段。

[222]
type=friend
username=222
;callerid=222
secret=
host=dynamic ; 这个重要
mailbox=2222
[777]
type=friend
username=777
secret=777
;callerid=777
host=dynamic ; This device registers with us
mailbox=7777
我这里拿了两个帐号来测试,原因是中间的时候有一点迷惑的地方,所以就设置了两个邮箱帐户。

然后修改extensions.conf,
exten => 222,1,Ringing
exten => 222,2,Wait(2)
;exten => 222,3,VoicemailMain这行是注释掉了的。

exten => 222,3,Voicemail(2222@test)
voicemail.conf的修改如下
[test]
2222 => 1234,222smail,222@localhost
7777 => 2345,777mail,777@localhost
然后我们拨打222的时候就会提示让我们语音留言。

留言完后挂机就可以了。

222获取语音邮件的方式与777发送语音邮件的方式差不多,
我在extensions.conf里面添加了如下一行
exten=>9999,1,VoicemailMain(2222@test)
这样当任何人拨打9999的时候就会进入222的邮箱号2222,自然也包括222本人
然后提示输入密码,然后就进入邮箱,会提示按1听留言等等,就可以了。

注意的地方,新版本无法使用addmailbox来添加邮箱,网络上的文章都比较老了,需要到voip-info的wiki上面看或者到asterisk的邮件列表里面查看最新的资料。

相关文档
最新文档