您当前的位置是:  首页 > 新闻 > 国内 >
 首页 > 新闻 > 国内 >

Asterisk课堂-拨号规则中呼叫控制

2017-01-11 16:15:31   作者:james.zhu   来源:asterisk   评论:0  点击:


\    
  每一个呼叫都必须有相应的命令来处理,以保证呼叫能够正确处理。Asterisk中有几个命令支持了各种情况下的呼叫处理流程,例如Dial, Answer,Hangup, Busy, 阻塞等。
  视频中配合实际语法解释了这些用法:
  下面,我们具体介绍一下这几个命令的语法,需要注意到对方。
  Dial 命令,拨号规则使用Dial来实现对通信接口的呼叫,包括使用通信接口类型(经常使用的包括:SIP,Dahdi),设备名称或中继名称,超时设置,其他相关设置。其他参数选项包括了大约40个参数,包括了呼叫转接,录音等相关的配置。大家可以查看官方文档获得详细的解释。
\
  Answer。呼入以后,用户可以使用answer来应答此呼叫。当然也可以使用其他的应答方式来接通此呼叫。Answer 开启以后,可以标志CDR 时间戳开始计费或计算起始呼叫时间,也可以支持一些必要的应用模块,例如语音等待功能。如果使用音乐等待,则必须先应答。
\
  Hangup 实现呼叫挂机功能。Asterisk对对端发出明确的挂机信号。
  其他呼叫控制命令(Busy,Congestion,Transfer,Progress)。Busy()表示对对端发送一个忙状态提示,通知对端本通道现在处于忙状态。这里可以使用一个时间设置来通知对端超时以后挂机。Congestion()表示通道处于拥塞状态,如果设置了时间以后,超时后对对端挂机。Transfer()可以实现对此呼叫进行一个转接功能,参数可以设备通信接口和目的地名称。Progress()要求生成一个带内消息支持(例如, 183消息)呼叫的通道,如生成早期媒体流等等。这里需要注意到是,在SIP环境和使用ISDN环境的设置有所不同,特别要注意Answer()的位置。
\
  本章节介绍了呼叫控制中的几个比较重要的命令方式,另外,再次强调了使用时应该注意到问题。这里,还有提醒大家应该注意的是,因为Asterisk版本不断演进,命令的使用方式可能有所差别。所以,建议用户最好根据自己版本来使用这些命令。对于Busy,transfer,progress 这些命令要特别注意,不断测试保证命令的正确执行。

专题