- 浏览: 234590 次
- 性别:
- 来自: 上海
文章分类
最新评论
-
newLinuxJava:
http://www.voip-info.org/wiki/v ...
asterisk App Dial 拨号 发起外呼 -
newLinuxJava:
http://www.voip-info.org/wiki/v ...
asterisk App Dial 拨号 发起外呼 -
tsinglongwu:
这种做法在Server端getValue()方法是能获得修改后 ...
client-side programming客户端修改值,但服务端获取仍然旧值的解决办法 -
Listen_ing:
zk+spring+hibernate如何配置hibernat ...
zk+hibernate+spring零配置 -
peterxq181:
严重: Method not found in org.apa ...
zk+hibernate+spring零配置
StripLSD( ) 从当前分线号中去掉特定的后缀(最小限度地)数字
StripLSD(count)
从与通道相关的分线号码中去掉后缀 count 数字,且继续处理下个优先级的等待分线。因此,例如,权限为1的分机5551212为StripLSD(4), 末尾4位数字将被从5551212中分出,下一步将执行权限为2的555分线。如果你要将其转换成一个无 n+1(n为当前权限)权限的分线,此时则PBX仍会处理用户无效的分线拨叫。
通常返回 0
这个应用不被推荐,可以用下述substring表述所替代。
${EXTEN:X:Y}.
exten => 5551212,1,StripLSD(4)
exten => 555,2,SayDigits(${EXTEN})
;用更好的方法来实现
exten => 5551234,1,SayDigits(${EXTEN::3})
参见
StripMSD( ), README.variables, variable substring syntax
—————————————————————————————————————————————
StripMSD( ) 从当前分线号中去掉特定的标志性(最大限度地)数字
StripMSD(count)
从与通道相关的分线号码中去掉代表性 count 数字,且继续处理下个优先级的等待分线。因此,例如,权限为1的分机5551212为StripLSD(3), 则前面3位数字将被从5551212中分出,下一步将执行权限为2的1212分线。如果你要将其转换成一个无 n+1(n为当前权限)权限的分线,则PBX仍会处理用户无效的分线拨叫。
通常返回 0.
这个应用不被推荐,可以用下述substring表述所替代。
${EXTEN:X:Y}.
exten => 5551212,1,StripMSD(3)
exten => 1212,2,SayDigits(${EXTEN})
;用更好的方法来实现
exten => 5551234,1,SayDigits(${EXTEN:3})
参见
StripLSD( ), README.variables, variable substring syntax
—————————————————————————————————————————
SubString( ) 在指定的变量中保存 Substring 数位
SubString(variable=string_of_digits,count1,count2)
将 string_of_digits 赋值为指定变量。参量 count1 可以为正值或负值。如果为正值可以跳过(左边起)首个 count1 数字。如果为负值,我们可以将 count1 数位从字符串的最后移至左侧。参量 count2 说明了将从已经设置的 count1 取走的数位个数。如果参量 count2 为负,将有多位数字从尾部忽略。
这个应用不推荐。代替它的是使用 ${EXTEN:X:Y}.
; 使用SubString( )的一些例子:
; 分配域代码 (3个起始数)给变量 TEST
exten => 8885551212,1,SubString(TEST=8885551212,0,3)
; 分配后7位数给变量 TEST
exten => 8885551212,1,SubString(TEST=8885551212,-7,7)
; 全部分配但后4位给变量 TEST
exten => 8885551212,1,SubString(TEST=8885551212,0,-4)
;
; 这里是相关的参考选择:
;分配域代码 (3个起始数)给变量 TEST
exten => 8885551212,1,Set(TEST=${EXTEN::3})
; 分配后7位数给变量 TEST
exten => 8885551212,1,Set(TEST=${EXTEN:-7:7})
; 全部分配但后4位给变量 TEST
exten => 8885551212,1,Set(TEST=${EXTEN:6}
—————————————————————————————————————————
Suffix( ) 为当前分线添加后缀数字
Suffix(digits)
为与通道相关的分线添加特定数字串,且继续处理下个优先级的新分线。因此,例如,权限为1的分机555为 Suffix(1212), 则1212将被添加到555,后将执行权限为2的分线5551212。如果你要将其转换成一个无 n+1(n为当前权限)权限的分线,则PBX仍会处理用户无效的分线拨叫。
通常返回0.
exten => 555,1,Suffix(1212)
exten => 5551212,2,SayDigits(${EXTEN})
参见
Prefix( )
________________________________________________________________________________________________
System( ) 执行一个操作系统指令
System(command)
在当前的操作系统中执行一个指令。如果指令自身已执行,但是有错误,且存在权限为 n+101(n为当前权限)呼叫的执行,则将在此权限级别上继续。
这个应用和 TrySystem( ) 的应用非常相似,不同的是它的返回值为-1。如果系统指令为能执行, TrySystem( ) 应用将会返回0值。
通常返回 0.
Exten => 123,1,System(echo hello > /tmp/hello.txt)
参见
TrySystem( )
__________________________________________________________________________________
Transfer( ) 呼叫转移至远程分线
Transfer(exten)
请求将远程呼叫转移到设定的分线上。如果不支持呼叫转移或失败,权限继续为 n+101(n为当前权限),且权限被下传。
; 将123分线呼转值至130
exten => 123,1,Transfer(130)
————————————————————————————————————————
TrySystem( ) 尝试执行一个操作系统指令
TrySystem(command)
尝试在现行的操作系统执行一个指令。如果指令本身已被执行但是有误,且当前存在一个权限n+101(n为当前权限),则在此权限上仍继续执行。
这个应用和System()应用非常相似,不同的是返回值为0,而System()应用在不能执行系统指令时,将返回-1。
exten => 123,1,TrySystem(echo hello > /tmp/hello.txt)
参见
System( )
________________________________________________________________________________________________
TXTCIDName( ) 从DNS TXT记录中查找主叫名字
TXTCIDName(CallerID)
通过DNS和设置变量 ${TXTCIDNAME}.来查询一个主叫名字。TXTCIDNAME 则会为空或返回在 DNS 的TXT记录中查找赋值。这个应用通过在 enum.conf 中列出的ENUM资源列表来查询号码。
exten => 123,1,TXTCIDName(8662331454)
exten => 123,2,SayAlpha(${TXTCIDNAME})
exten => 123,3,Playback(vm-goodbye)
—————————————————————————————————————————
UnpauseQueueMember( ) 恢复一个队列
UnpauseQueueMember([queuename],interface)
恢复(恢复呼叫)一个队列。它对应于PauseQueueMember( ),且用同样方式来执行,只不过是在它的接口中用unpauses代替了pausing。
exten => 123,1,PauseQueueMember(,SIP/300)
exten => 124,1,UnpauseQueueMember(,SIP/300)
参见
PauseQueueMember( )
—————————————————————————————————————————
UserEvent( ) Sends an arbitrary event to the Manager interface
UserEvent(eventname[,body])
发送任意一个事件到管理界面,用一个可选的实体来表现另外一个约束;
事件的格式为:
Event: UserEvent<specified event name>
Channel: <channel name>
Uniqueid: <call uniqueid>
[body]
如果实体未申明,则只表现事件、通道和唯一的域。
通常返回0
exten => 123,1,UserEvent(BossCalled,${CALLERIDNAME} has called the boss!)
exten => 123,2,Dial(${BOSS})
参见
manager.conf, Asterisk Manager interface
—————————————————————————————————————————
Verbose( ) 将发送任意文本到输出描述中
Verbose([level,]message)
在输出描述中发送指定的 message。它的level 必须为整形,如果未说明,level缺省为0。
通常返回 0.
exten => 123,1,Verbose(Somebody called extension 123)
exten => 123,2,Playback(extension)
exten => 123,3,SayDigits(${EXTEN})
—————————————————————————————————————————
VMAuthenticate( ) 从语音信箱密钥中识别主叫
VMAuthenticate([mailbox][@context])
它的应用和 Authenticate( ) 是相似的,不同的是从 voicemail.conf.中识别出密钥。
如果 mailbox 被指定,则只有信箱的密钥被认为有效。如果 mailbox 未被指定,则通道变量 ${AUTH_MAILBOX} 将被识别的信箱所设置。
; 任意邮箱密钥的识别,并告诉用户匹配的邮箱号码。
exten => 123,1,VMAuthenticate( )
exten => 123,2,SayDigits(${AUTH_MAILBOX})
参见
Authenticate( ), voicemail.conf
————————————————————————————————————————————————
VoiceMail( ) 在指定邮箱中记录一个语音消息邮件
VoiceMail([s|u|b]mailbox[@context][&mailbox[@context]][...])
在指定的语音信箱中,留下语音邮件(必须在voicemail.conf中配置).
通过“s”来指明的留言信息将被跳过。若通过“u”,则存在的一些脱机信息(/var/lib/asterisk/sounds/vm/exten/unavail) 将会被播放。如果在邮箱用
“b”来指明,则代表忙碌的消息将会被播放,(也就是用busy 代替 unavail)。
如果在提示中者按下0(数字0),呼叫将跳至当前环境中的o(字母o)分线。
如果在提示中者按下*,呼叫将跳至当前环境中的a分线。这个应用通常用来发送主叫给个人助手。
如果请求的邮箱不存在,且当前权限为n+101(n为当前权限),则此权限传递执行。
当指定了多个邮箱时,脱机或忙碌的信息将从指定的第一个邮箱中取出。
当错误或没有找到邮箱时,返回-1,也可能是用户挂机;否则,将返回0。
; send caller to unavailable voicemail for mailbox 123
exten => 123,1,VoiceMail(u123)
参见
VoiceMailMain( ), voicemail.conf
—————————————————————————————————————————————
VoiceMailMain( ) 进入语音信箱系统 VoiceMailMain([[s|p]mailbox][@context]) 进入主体语音邮箱系统来查收语音邮件。通过 mailbox 约束,来停止进程中用户的语音邮件系统,来得到邮箱号码。 如果之前用字母“s”提示,则密码检测被忽略;如果用字母“p”指示,则提供的邮箱将成为用户的入口,且产生的字符被用作信箱的号码。这对虚拟主机语音邮件系统是有用的。如果 context 已经指定,则只能在此语音邮箱环境中登录。 如果用户挂机,返回 -1;否则,返回0值。 ; 在缺省的语音信箱环境中转至邮箱123的语音邮件菜单 exten => 123,1,VoiceMailMain(123@default) 参见 VoiceMail( ), voicemail.conf ————————————————————————————————————————————— Wait( ) 等待一个指定号码 Wait(seconds) 等待一个指定号码,然后返回0。可经过一秒的间隙(例,1.5=1.5秒) ;在播放提示前等待1.5秒 exten => s,1,Answer( ) exten => s,2,Wait(1.5) exten => s,3,Background(enter-ext-of-person) ————————————————————————————————————————— WaitExten( ) 等待一个分线登录 WaitExten([seconds]) 等待几秒使用户来用指定号码登录一个新分线,然后返回0。可以经过一秒的间隙(例,1.5=1.5秒),如果未指定,则缺省的分线会被视为超时。 ; 等待15秒来拨打一个分线 exten => s,1,Answer( ) exten => s,2,Playback(enter-ext-of-person) exten => s,3,WaitExten(15) WaitForRing( ) 为指定的号码等待振铃时间 WaitForRing(timeout) 在下一个振铃完成之后,等待至少到timeout 时间。 成功返回0,挂机返回 -1. ; 等待5秒来振铃,然后发送DTMF序列 exten => 123,1,Answer( ) exten => 123,2,WaitForRing(5) exten => 123,3,SendDTMF(1234) ————————————————————————————————————————— WaitForSilence( ) 等待一个指定的静音时间 WaitForSilence(wait[,repeat]) 等待几毫秒的静音repeat。如果repeat 被忽略,应用将只等待一次 wait毫秒的静音。 ;等待3次300ms的静音 exten => 123,WaitForSilence(300,3) ———————————————————————————————————————— WaitMusicOnHold( ) 为指定号码,来等待播放保持音乐的时间 WaitMusicOnHold(delay) 为指定号码,来等待播放保持音乐的时间。如果没有可用的保持音乐、将继续延迟,但是没有声音。 执行时返回0,挂机返回 -1。 ; 允许呼叫者听到5秒的保持时间 exten => 123,1,Answer( ) exten => 123,2,WaitMusicOnHold(300) exten => 123,3,Hangup( ) 参见 SetMusicOnHold( ), musiconhold.conf ————————————————————————————————————————— While( ) 开始间歇循环 While(expr) 执行一个间歇循环。当 EndWhile( ) 被呼叫,则返回到此处,直至expr不再为真。如果实例遇到循环退出,它将继续执行 EndWhile( ). exten => 123,1,Set(COUNT=1) exten => 123,2,While($[ ${COUNT} < 5 ]) exten => 123,3,SayNumber(${COUNT}) exten => 123,4,EndWhile( ) 参见 EndWhile( ), GotoIf( ) ________________________________________________________________________________________________ Zapateller( ) 使一个特殊的信息音来阻断telemarketers Zapateller(options) 产生使一个特殊的信息音来阻断telemarketers或其他困扰你的计算机拨号呼叫。 可选项是一个被限制的列表,下列选项是可用的: 应答 在播放音调前,线路应答。 无主叫显示 如果没有可用主叫ID信息,则Zepteller播放语音。 ; 如果没有主叫ID信息,则应答线路并播放SIT语音。 exten => 123,1,Zapateller(answer|nocallerid) 参见 PrivacyManager( ) ________________________________________________________________________________________________ ZapBarge( ) 进入 Zap 通道(或监听者) ZapBarge([channel]) 进入特定的Zap channel, 如果没有指定将会有提示。在通道中的用户不会听到你(的动作),且感觉不到被监听的迹象。 如果channel 未指定,将会提示你通道号,输入4#进入Zap/4例子。 当主叫挂机返回 -1,且不依赖于通道被监听时的状态。 exten => 123,1,ZapBarge(Zap/2) exten => 123,2,Hangup( ) 参见 ZapScan( ) ________________________________________________________________________________________________ ZapRAS( ) 执行 Zaptel ISDN 远程访问服务器 ZapRAS(args) 在当前通道使用 pppd 来运行一个ISDN RAS服务器。通道必须为一个清晰的通路(如,PRI资源),且一个Zaptel 通道能够使用这个功能(未包含Modem算法)。 你的pppd 须与 Zaptel-aware. args 相配并限定为约束列表。 通常返回-1 这个只应用在ISDN线路上,而且需内核支持 ZapRAS( ),同样内核也的支持 ppp . exten => 123,1,Answer( ) exten => 123,1,ZapRas(debug|64000|noauth|netmask|255.255.255.0|10.0.0.1:10.0.0.2) ————————————————————————————————— ZapScan( ) 查看Zap通道来监视呼叫 ZapScan([group]) 呼叫中心管理员可以方便的监视到 Zap 通道。若使用* 来选择下一个通道,并且用*来退出。可以通过设置 group,来限制扫描查看具体每一个group 约束。 exten => 123,1,ZapScan( ) 参见 ZapBarge( ) |
发表评论
-
解决elastix登录显示非常慢以及禁用新闻的展示的问题
2011-06-10 11:12 1257解决登录显示非常慢的问题以及禁用新闻的展示 ... -
FreePBX 2.7.0.3 汉化
2011-06-09 15:46 18251,FreePBX 2.7.0.3 右侧语言选项,默认无 ... -
Asterisk 1.6的配置文件:chan_dahdi.conf
2010-12-24 13:56 2176Asterisk 1.6的配置文件:chan_dahdi.co ... -
Asterisk 安装笔记(2)- Zaptel 和 Dahdi 的配置
2010-12-24 13:53 2042Zap Channel Module Configurat ... -
Asterisk Extension中的Application命令详解六
2010-12-22 09:50 1589MailboxExists() ... -
Asterisk Extension中的Application命令详解五
2010-12-22 09:46 1961Math( ) Performs mathema ... -
Asterisk Extension中的Application命令详解四
2010-12-22 09:44 2114Hangup( ) Unconditionall ... -
Asterisk Extension中的Application命令详解三
2010-12-22 09:43 3280CheckGroup( )检查特定组中的信道数。CheckG ... -
Asterisk Extension中的Application命令详解二
2010-12-22 09:41 2109AgentLogin( )允许呼叫代理 ... -
Asterisk Extension中的Application命令详解一
2010-12-22 09:39 1677AbsoluteTimeout() 设置呼叫最大呼叫时长 A ... -
拨号方案基础
2010-12-22 09:28 1290ApplicationAnswer(),Playback()和 ... -
模拟卡的疑难杂症
2010-12-22 09:23 4986, 不能编译zaptel和asterisk ... -
Asterisk的拨号计划命令
2010-12-22 09:21 1830Asterisk的拨号计划命 ... -
Asterisk 配置文详解和Freepbx功能键逐个数
2010-12-22 09:19 12941Asterisk 配置文详解 转自:http://www.ha ... -
Asterisk manager API(AMI)文档(中文版
2010-12-22 03:04 1528Asterisk控制接口(AMI)允许管理客户端程序连接到一个 ... -
SIP 中文翻译
2010-12-22 03:01 29971.介绍 extensions.conf中使用sip设备的语 ... -
队列振铃方式
2010-12-22 02:58 988队列振铃方式有:ringall,roundrobin,leas ... -
asterisk App Dial 拨号 发起外呼
2010-12-22 02:54 2901Synopsis Attempts to establi ... -
asterisk 集群配置的完全解决方案
2010-12-22 02:53 1202IAX 设置详细两台Asterisk服务器设置步骤如下:* 设 ... -
Asterisk命令MeetMe详解
2010-12-22 02:50 1217转贴:http://www.ctiforum.com/ ...
相关推荐
Asterisk命令详解 Asterisk是一款开源的电话交换机软件,提供了丰富的命令来管理和控制电话系统。下面是Asterisk的一些常用的命令: 1. amportal 命令 amportal 命令是FreePBX搞的,负责管控Asterisk。amportal ...
Asterisk CLI 命令列表 Asterisk 是一个开源的 VoIP 系统平台,提供了一个命令行接口(CLI),允许用户通过命令行控制 Asterisk 系统。下面是 Asterisk CLI 命令列表: 1. ! 命令:执行 shell 命令 使用格式:! ...
在高级主题中,你可能会学到如何集成Asterisk与其他系统,如CRM(Customer Relationship Management)或ERP(Enterprise Resource Planning)系统,以实现更复杂的业务流程自动化。此外,故障排查和日志分析也是重要...
3. **重新加载**:完成配置更改后,需要重新加载Asterisk配置,通常通过执行`asterisk -r`进入命令行模式,然后输入`reload`命令,让Asterisk应用新的设置。 4. **测试**:为了确认中文语音包已正确安装并工作,你...
"asterisk拨号方案中应用使用详解" Asterisk拨号方案中应用使用详解是指在Asterisk系统中使用拨号方案来实现各种应用的技术手段。本文将对Asterisk拨号方案中的各种应用进行详细地解释和示例。 1. Authenticate:...
当 Asterisk 从一个通道上收到一个呼入连接,Asterisk 从 context 定义中查询通道命令。context 根据用户拨打的 extension 定义了不同的命令集。 在 Asterisk 中,你可以定义多个 context,每个context都可以嵌套另...
Asterisk权威指南中文(第3版) Asterisk权威指南(第3版)第15章自动话务员 Asterisk权威指南(第3版)第02章Asterisk体系结构 Asterisk权威指南(第3版)第05章用户设备配置 Asterisk权威指南(第3版)第06章Dialplan基础 ...
以下是一些Asterisk常用命令的详细解释: 1. **启动与调试命令**: - `./asterisk &`:将Asterisk服务在后台运行。 - `./asterisk -vvvc`:以调试模式启动Asterisk,输出大量日志信息到控制台。 - `./asterisk -...
Asterisk APP命令含义中文对照 Asterisk是一个开源的PBX(Private Branch Exchange)电话交换系统,具有强大的功能和灵活性。Asterisk提供了许多APP命令,用于实现各种电话功能。本文将对Asterisk APP命令进行分类...
修改sip_general_custom.conf(作为测试,在所有SIP 通道上启用提示语为中文,在实际应用中,可根据需要修改--zapata-channels.conf,sipXXX.conf,IAXXXX.conf...,也可在FreePBX的WEB界面中有language选项的地方修改--...
这种通信是双向的,客户端不仅可以发送命令给Asterisk,还能够接收来自Asterisk的事件通知。通过这种方式,开发者能够轻松地监控和管理Asterisk系统中的各种活动,包括但不限于电话呼叫的状态、设备的状态以及系统的...
在Asterisk系统中,Asterisk命令行接口(CLI)是管理员进行配置、监控和调试的主要工具。下面,我们将深入探讨Asterisk CLI的相关知识点。 1. **Asterisk CLI简介** Asterisk CLI是一个基于文本的交互式环境,通过...
` 命令:这个命令用于在CLI中执行Shell命令,让你能够直接在Asterisk的控制台环境中运行Linux系统的命令。 2. `ael reload`:重新加载AEL(Asterisk Extension Language)配置。AEL是Asterisk的一种脚本语言,用于...
Asterisk的声音包是其功能中的一个重要组成部分,为用户提供各种语音提示和交互体验。 这个名为“asterisk中文的语音包”的资源包含了Asterisk系统中用于中文环境的音频文件。声音包通常由一系列预录制的语音片段...
7. **源码分析**:对于标签中的“源码”,意味着你可能需要查看Asterisk-java的源代码来了解其工作原理或进行定制开发。通过阅读源代码,你可以理解其内部的工作流程,学习如何更好地利用API,甚至贡献代码到开源...
7. Asterisk 的配置文件包括 zapata.conf、zapata-channels.conf、sip.conf 和 extensions.conf 等。 8. 在 Kamailio.cfg 文件中需要配置 switch 语句来管理 Asterisk 的配置。 9. 在 Asterisk 中,需要安装 ...
Asterisk.NET 1.6.3 是一个专门为.NET开发者设计的开源库,它提供了对Asterisk PBX系统的编程接口,使得用户可以方便地在C#、VB.NET或其他.NET支持的语言中控制和扩展Asterisk功能。这个库是基于Asterisk Manager ...
在本文中,我们将深入探讨Asterisk如何通过其"chan_ss7"模块来处理7号信令,并分析提供的文件列表中的各个组件。 7号信令是全球电信网络中广泛使用的通信控制协议,用于建立、管理和终止电话通话,以及传输数据服务...
### Asterisk AGI应用详解 #### 一、概述 Asterisk是世界上最流行的开源PBX系统之一,它支持多种通信协议并提供了丰富的功能。在Asterisk中,AGI(Asterisk Gateway Interface)是一种非常重要的接口技术,它允许...