如何在Astersik中抓取调用文件之前执行某些操作?

时间:2016-10-22 06:57:07

标签: asterisk

我使用星号中的呼叫文件进行自动拨号。我怎么能在打电话前做一些动作?星号中有一个预处理程序,但它适用于dial或followMe应用程序。请注意我使用的是调用文件。

1 个答案:

答案 0 :(得分:1)

在调用之前创建一个新的上下文来执行命令,例如:

[precall]

exten => _X.,1,NoOp(Precall processing)
same => n,System(echo ${EXTEN} call >> /tmp/call.log)
same => n,Dial(SIP/${EXTEN})

然后在你的通话文件中:

Channel: Local/1000@precall
Context: from-internal
Extension: 2000

在这种情况下:

  • Asterisk将从precall上下文的1000,1
  • 开始
  • 它将执行echo 1000 call >> /tmp/call.log系统命令
  • 致电SIP/1000并等待回答
  • SIP/1000接听电话时,Asterisk会转到from-internal上下文,分机2000,1
  • 如果您有通用配置,则会拨打号码2000