学习 Dialplan 2

了解上面基本的 Dialplan 语法后,看了几个 Dialplan 实例:

exten=>_X.,1,Dial(SIP/${EXTEN})       ;_X.模式匹配,匹配任何电话号码;${EXTEN}通道变量,${EXTEN}为所拨的数字
exten=>_X.,2,Playback(vm-nobodyavail) ;被叫无应答,Dial()会继续到该 extension 的下一个priority
exten=>_X.,3,Hangup()                 ;挂断
exten=>_X.,102,Playback(tt-allbusy)   ;如果被叫通道忙,Dial()将转到priority n+101,(其中的 n 是 Dial( )被调用的priority)
exten=>_X.,103,Hangup()               ;挂断

例二:

[incoming]
exten => s,1,Answer( )
exten => s,2,Playback(hello-world)
exten => s,3,Hangup( )

现在就遇到了问题,在第一个例子中创建了两个 SIP 分机,互拔响铃通话 ok没啥问题,但第二个实例中 Extension 不是一个分机,这个用分机互拔不通 失败!这个究竟要怎么样发起呢?

Extension等于电话号码吗?是的,通常情况下这是对的. 这里有三种类似的extension: 文字的,预定义的,模式匹配的. 
Litteral分机名字可以包含:数字[0-9], 字母A,B,C,D(一些硬电话有这些字母)或者所有字母(a-z).这些分机的名字是区分大小写的吗?这是分情况的.当Asterisk在一个被定义的context里必须匹配一个用户拨打的分机号时,分机名字是区分大小写的. 


这里有一些预定义的分机名字: 
-i -Invalid(无效的输入) 
-s -Start(开始) 
-h -Hangup(挂断) 
-t -Timeout(超时) 
-T -Absolute Timeout(精确的超时) 
-o - Operator(操作员) 

你可能感兴趣的:(asterisk,dialplan)