【问题标题】:Asterisk context executed on not answer call files在未应答呼叫文件上执行的星号上下文
【发布时间】:2018-03-08 16:24:24
【问题描述】:

我正在使用如下调用文件:

Channel: SIP/TRUNK/1-111522282783163<br/>
CallerID: 522299308962<br/>
MaxRetries: 1<br/>
Data: GqFR7rubPw_10<br/>
Context: calls<br/>
Extension: s<br/>
Priority: 1 <br/>
Setvar: AUDIOFILE=GqFR7rubPw_10<br/>
Setvar: ID=BkzKlksau1<br/>
Setvar: DEST=522282783163<br/>
Archive: yes<br/>

正如我已经知道的那样,当呼叫被应答时,拨号计划(在上下文中)被执行,但不是“NO ANSWER,CONGESTION,BUSY,FAILED”的呼叫。我想要做的是在呼叫处于未回答状态时执行拨号计划(在相同上下文或默认上下文中),因为我在用于识别呼叫的呼叫文件中添加了一个 ID 作为变量。

我找到了这个链接Asterisk - executing agi script if call is not answerd? 但老实说我不明白。如果有人有这方面的例子,我将不胜感激。

拨号方案:

[calls]
exten => s,1,wait(2)
exten => s,n,Set(CDR(outbound_cnum)=${DEST})
exten => s,n,Set(CDR(userfield)=${ID})
exten => s,n,Playback(${AUDIOFILE})

【问题讨论】:

    标签: asterisk voip dialplan


    【解决方案1】:

    首先,这不仅是您尝试编写自己的拨号核心时遇到的问题。 强烈建议使用已经编写好的核心/一些开源项目。

    这个确切的问题可以通过使用 Local/ 频道并通过拨号方案进行呼叫来解决。这样您将获得有关拨号方案的反馈,并可以在通话结束后检查 DIALSTATUS 变量。

    https://wiki.asterisk.org/wiki/display/AST/Local+Channel

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-06
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多