0

我想通过 AMI 同时拨打 10 个电话。我的sip.conf看起来像这样:

;
[multi_auto_dial_origin]
exten => _09XX0,1,NoOp()
相同 => n,Answer()
相同 => n,Wait(30)
;
[multi_auto_dial_destination]
exten => _00XXXXX,1,NoOp()
相同 => n,Dial(SIP/${EXTEN:2})
;

我的telnet数据如下:

行动:发起
频道:本地/09000@multi_auto_dial_origin
来电显示:3125551212
扩展:0016371
优先级:1
上下文:内部
异步:真

因此,当 AMI 收到它时,它将首先拨打Local/09000,如果它接听,号码0016371将响铃。

这工作正常,但......

...当我想拨打第二个电话时,我必须等待 1秒然后启动 AMI 会话。如果我早点启动它,例如在第一次呼叫后 500 毫秒后或立即启动,Asterisk 将不会拨打第二个号码。

我在 Asterisk 的日志中注意到${EXTEN:2}的值是空的。但是我在 Wireshark 中看到我的应用程序发送了正确的值,所以这一层没有问题。
我相信这是 SIP 服务器中的问题,无法立即接受呼叫,或者我做错了什么。

你知道如何“修复”它吗?

4

1 回答 1

0

发起呼叫后关闭 AMI 会话。 这里是关闭会话的示例

行动:注销参数:无

于 2015-12-30T20:00:16.320 回答