`
Asterium
  • 浏览: 4793 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
最近访客 更多访客>>
社区版块
存档分类
最新评论

Dialplan Fundamentals(拨号方案基本纲要)之--Contexts, Extensions, and Priorities

 
阅读更多
Dialplan是任何成功的Asterisk系统运作必不可少的. 在这个模块中,我们将会协助你学习Asterisk拨号方案的基本组件,以及如何将他们联合在一起来编写你自己的拨号方案.我们也会在拨号方案中添加语音信箱和一个通过姓名拨号的目录功能.

Contexts, Extensions, and Priorities

被组织在拨号方案中的每个部分我们称它为context(上下文). Context是拨号方案的最基本的组织单位,正因为如此,这些context在拨号方案中不同的部分中都保持着相互独立.在拨号方案的每个不同部分之间,我们将会利用context来加强安全边界,也给组群用户提供不同类别的服务.

Context的语法和之前的其他章节提到的配置文件一样,将Context的名字设置在一个方括号内部.例如:

[users]

在每个context内部,我们可以定义一个或多个extensions. 正如前面模块所描述的那样, 一个extension只不过是一个执行动作的命名.当extensions号码被拨打的时候, Asterisk会依次执行每个动作.extension的语法如下:


exten => number,priority,application([parameter[,parameter2...]])

作为一个例子,我们回顾一下之前提到的分机6001. 类似如:


exten => 6001,1,Dial(SIP/demo-alice,20)

在这个案例中, 分机号码是6001,执行优先顺序是1,执行的应用就是Dial(),另外两个在应用里面的参数是SIP/demo-alice和20. 在每个extension内,必须有一个或多个priority. 一个priority 仅仅是一个次序的号码。在一个extension被执行完毕时,将会执行第二个,以此类推。

执行优先号码:

执行优先号码必须以1开始,而且必须按顺序递增。如果Asterisk不能找到下一个优先号码,那么它将会终止这一路呼叫。我们称这个为自动落空。

假定有如下一个例子:


exten =>6123,1,do something

exten =>6123,2,do something else

exten =>6123,4,do something different

在这个案例中,Asterisk将执行优先顺序1和2,但此后将会终止这路呼叫,因为它找不到优先顺序3.

当然优先号码也可以简单的用字母n来代替一个比它前面的优先顺序大的数字。因为n表示next的意思。它总是在前面优先号码的基础上再加1. 需要注意的是:你依然必须明确声明优先顺序1.


exten => 6123,1,do something

exten =>6123,n,do something else

exten =>6123,n,do something different

你也可以在优先顺序后面的圆括号内分配一个标签(或别名) ,正如下面的例子中,标签使得在往后的extension内跳到特定的位置更加容易。


exten =>6123,1,do something

exten =>6123,n(repeat),do something elase

exten =>6123,n,do something different

在这个例子中,我们给第二个优先级分配了一个名为repeat的标签。

包括Asterisk 1.6.2(或往后的)在内的分支版本,利用same=>prefix方法可以用避免重复extension名字/号码 或匹配模式。


exten =>_1NXXNXXXXXX,1,do something

same =>n(repeat),do something else

same =>n, do something different

Cheers!
Joe.Yeung
www.voipevents.com
分享到:
评论

相关推荐

    Asterisk Cookbook

    This short cookbook offers recipes for tackling dialplan fundamentals, making and controlling calls, and monitoring channels in your PBX environment. Each recipe includes a simple code solution you ...

    Asterisk.Cookbook(第1版)

    中文名: Asterisk Cookbook (第1版) 原名: Asterisk Cookbook: Solutions to Everyday Telephony Problems ...Chapter 1 Dialplan Fundamentals Chapter 2 Call Control Chapter 3 Audio Manipulation

    freepbx-dialplan-injection:作为拨号计划的目的地,可以执行各种 Asterisk 命令

    freepbx-dialplan-injection 作为拨号计划的目的地,可以执行各种 Asterisk 命令

    FreeSwitch的mod_dialplan_xml模块分析

    dialplan包含四个模块,mod_dialplan_directory|mod_dialplan_asterisk|mod_dialplan_xml|mod_dialplan_yaml。freeswitch默认是加载mod_dialplan_xml,即配置文件是采用XML文件格式。XML文件格式非常灵活,而且可以...

    dialplan命令

    随着VoIP的逐渐广泛的应用,产生了越来越多的拨号方案需求,在提升业务灵活性并满足用户多方需要的同时,对号码管理的合理性和可操作性的需求也日益突出。拨号策略可以对语音路由器进行号码统一管理,产生全套号码...

    Asterisk Dialplan命令中文翻译

    Asterisk Dialplan命令中文翻译,希望帮到大家。

    asterisk_dialplan学习笔记

    asterisk_dialplan学习笔记,归纳总结出来的,强烈推荐

    asterisk dialplan中文版

    对asterisk有一定的简单认识之后,需要对asterisk进行更高级的复杂的拨号方案的配置之时,电话的未来之路已经不能再给予帮助,那么这个拨号方案就是一个必须品。里边详细讲解了如何使用变量和如何编写复杂的拨号方案...

    dialplan:快速星号图

    拨号方案 在 javascript 上生成星号拨号计划 / 与 node.js 一起使用 安装 $ npm install dialplan [--save] 用 var D = require('dialplan'), App = D.Application, Func = D.Function, H = D.Helper; var array...

    Elastix.Unified.Communications.Server.Cookbook.184951934X

    More than 140 real-life, hands-on recipes and tips to install, deploy, administer, and maintain any VoIP/Unified Communications solution based on Elastix About This Book Enable a full cost-effective ...

    Asterisk 中dialplan实现去电黑名单

    Asterisk 中dialplan实现去电黑名单

    FreeSWITCH.1.6.Cookbook.17852809

    Over 45 practical recipes to empower you with the latest FreeSWITCH 1.6 features About This Book Learn how to create a fast and secure messaging and telephony ...Chapter 7: Dialplan Scripting with Lua

    asterisk-tiresias:星号的音频指纹识别模块

    星号-胫骨 星号的音频指纹识别模块。 使用libaubio的MFCC(Mel频率倒谱系数)在c中实现的音频指纹识别算法。...拨号方案申请 CLI操作 手动的 执照 麻省理工学院执照 记住2014.04.16 还记得2014.04.16 安息..

    Asterisk: The Definitive Guide, 3rd Edition

    Ideal for Linux administrators, developers, and power users, this book shows you how to write a basic dialplan step by step, and quickly brings you up to speed on the latest Asterisk features in ...

    思科 cisco 7945 7965 sip模式固件

    思科 cisco 7945 7965 sip模式固件 需要通过CME 或CUCM 升级

    Asterisk权威文档(第3版)

    Learn how to write a basic dialplan step by step, and quickly get up to speed on the latest Asterisk features in version 1.8. Asterisk介绍:Asterisk 是一个开放源代码的软件VoIP PBX系统,它是一个运行...

    FreeSWITCH-1.10.2-Release-x64 (1).msi

    修改拨号计划(Dialplan)使其它用户可以呼叫它 重新加载配置使其生效 要添加用户Jason,分机号是1020,只需要到conf/directory/default目录下,将1000.xml拷贝到1020.xml,然后打开1020.xml,将所有1000都改为1020...

    asterisk info 录音实现方案

    asterisk 使用info 触发录音,http告知服务器;带有主叫信息,被叫信息等。

    Asterisk CookBook.pdf

    and implementers, then show solutions to those problems using the Asterisk dialplan. As you go through the recipes and start looking at the solutions, you may think, “Oh, that’s a neat idea, but ...

    freeswitch 安装文件

    freeswitch 安装版,可直接安装使用

Global site tag (gtag.js) - Google Analytics