Asterisk cli下面可以执行很多命令,originate的用途是发起一个呼叫然后连接到指定的应用或上下文。
跟.call呼叫文件和AMI管理接口里的外呼功能一样,有两种语法格式:
呼叫成功转应用:
originate <tech/data> application <appname> appdata
呼叫成功转流程:
originate <tech/data> extension <exten>@<context>
如果不指定 context ,那么会使用 'default' 项,如果不指定 extension ,使用 's' 分机。
从Asterisk 1.6开始,语法有点小变化,要在前面加个channel
channel originate <tech/data> application <appname> appdata
channel originate <tech/data> extension <exten>@<context>
例子:
在 extensions.conf 里面写如下的流程:
[greeting]]
exten => 400,1,Answer
exten => 400,n,Background("hello")
exten => 400,n,Wait(5)
exten => 400,n,HangUp()
在CLI下面执行:
originate Zap/1/123456 extension 400@greeting
外部脚本: asterisk -rx "originate zap/1/123456 extension 1@greeting"