linux - Asterisk 中使用的加密狗拨号方案

标签 linux asterisk dongle

我们有一家移动公司,他们的电话号码以 01XXXXXXXXX 开头

我的 Asterisk 有两个 dongle 调制解调器:dongle0 和 dongle1。

从我使用的 Asterisk 盒子调用手机号码

exten => _01X.,1,Dial(Dongle/dongle0/${EXTEN},20)

exten => _01X.,n,Dial(Dongle/dongle1/${EXTEN},20)

这样,如果 dongle0 忙,调用将通过 dongle1。

问题是,如果接收方正忙或拒绝调用,则使用 dongle1 再次发送调用。

我希望加密狗 1 仅在加密狗 0 忙时发送调用。

最佳答案

请尝试:

exten => _01X.,1, Dial(Dongle/dongle0/${EXTEN},20)
 same => n, Verbose(2, D0 DIALSTATUS => ${DIALSTATUS})
 same => n, GotoIf($[ $['${GOSUB_RETVAL}'='BUSY'] | $['${GOSUB_RETVAL}'='NOANSWER'] ]?all_done)
 same => n, Dial(Dongle/dongle1/${EXTEN},20)
 same => n, Verbose(2, D1 DIALSTATUS => ${DIALSTATUS})
 same => n(all_done), Verbose(2, Call being completed ... HANGUPCAUSE was ${HANGUPCAUSE})
 same => n, Hangup(${HANGUPCAUSE})

请在此处发布两次调用的 CLI 结果,以便我们进行调试。

关于linux - Asterisk 中使用的加密狗拨号方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28598280/

相关文章:

c++ - 自己的 Asterisk 模块(SIP 记录器)

c - 可编程 USB 加密狗

shell - 在debian系统下使用华为E3131和HiLink通过命令行发送和接收短信

c - 我构建的 glibc 中来自 ld-linux 的段错误

linux - objdump 如何发出 intel 语法

c - Asterisk 停滞订阅

Java API 访问加密狗?

linux - sed -i 帮助(bash)

c - 如何在运行时管理应用程序的 Debug模式?

forms - 输入框中占位符旁边的红色 Asterisk