简介:Asterisk是一款实现电话用户交换机(PBX)功能的自由软件、开源软件。Asterisk提供完善PBX功能,可以连接多种不同的电话终端,包括普通电话机,IP电话机,软电话等。
拨号方案(Dial plan)常用函数:
话单与计费
ForkCDR:将CDR分成两个独立的实体
NoCDR:确保 asterisk没有把CRD保存为特定的呼叫
SetCDRUserField:建立CDR用户领域
ResetCDR:重置CDR数据
SetAccount:设置帐簿号码
呼叫管理(hangup, answer, dial, etc)
AMD:侦测自动应答机
Answer:应答一个振铃的通道
Busy:示忙,等待挂断
ChanIsAvail:检测通道可用性
Dial:设置一个呼叫连接当前的通道
Hangup:无条件挂断
Ringing:显示呼叫
呼叫方描述 (ID, Name etc)
SetCallerID:建立CallerID,发生矛盾服从CallerID
SetCallerPres:建立访客资料的独立信道
SetCIDName:建立呼叫者身份 姓名,发生矛盾服从CallerID
SetCIDNum:只建立访客的身份号码(没有姓名),发生矛盾服从CallerID
SoftHangup:请求挂断转到另一个信道
应用程序整合
AGI:执行一套AGI应用程序
NoOp:不进行操作,可将数值打印到控制台进行调试
DeadAGI:在中断的信道上执行AGI
Read:读有效的DTMF变量
UserEvent:发送专用事件给管理接口
控制流与超时设定
Gosub:跳到一个子程序并且返回 (new in v1.2)
GosubIf:有条件的跳到一个子程序并且返回 (new in v1.2)
Goto:跳转到特定的priority, extension, 或context(专用名词)
GotoIf:带条件判断的Goto
GotoIfTime:带时间条件判断的Goto
Random:在拨号栏中随机跳动
ResponseTimeout:设置等候回应的最长时间
Return:从Gosub或GosubIf返回(new in v1.2)
While:开始一个当循环- *1.2beta
EndWhile:结束一个当循环 - *1.2beta
ExecIf:条件执行 - *1.2beta
ExitWhile:退出循环
语音播放
Background:在等待分机的时候播放声音文件
Playback:播放一个声音文件
先写这些。