星号 AMI Atxfer 在显式桥接通道上



我正在尝试完成通过AMI自己完成所有调用逻辑的软件,仅使用Asterisk作为VOIP,SIP/GSM的接口。几乎所有东西都很好用,但是...:

这是我的方案:- 来电被转发到公告,然后永远转发到卫生部- 我的应用程序决定使用 AMI 操作拨打哪些分机 (7777) 操作:发起- 一旦有人接听分机,他/她的频道(例如SIP/306-xxxxx)就会使用 AMI 操作:桥接与等待呼叫的频道桥接

到目前为止,一切正常,连接双方都可以听到对方的声音,按需录制有效。一切都很好。

现在,我正在尝试在其中一个桥接通道上使用 AMI 进行辅助传输到另一个分机(Atxfer)。而且它不起作用。我在一个频道上收到了几个关于 DTMF 的 ami 事件(播放时音频被静音)。每个 DTMF 数字都用于 AMI 上的快速网桥:取消链接和网桥:链接事件。

我尝试更改 dtmfmode,从星号 1.8 升级到 11(现在为星号),它总是相同的。

虽然在这些通道上遇到 Atxfer 盲传输的问题有效(使用 AMI 操作:重定向)。

完整日志没有显示类似的东西:

[2013-11-11 20:24:57] 调试[9457]: 功能.c:3740 feature_interpret: 功能解释: chan=SIP/306-00000017, peer=SIP/GTS-00000016, 代码=*2, sense=1, 功能=0, 动态=应用记录#应用记录

我建议你阅读一些适合初学者的星号书,比如ORelly的"Asterisk the Future of Phonephony"。

在您的情况下,正确的解决方案是对第一个通道使用星号拨号命令,而不是创建第二个呼叫。

目前尚不清楚如何使用 AMI 进行转移。如果你想通过ami(这是非常糟糕的方式)来做,你必须做一些类似的事情

  • 在传输请求(数字)上取消桥接通道。之后最好把它放在AsyncAGI中。

  • 使用读取命令收集要传输的数字

  • 转移到新目的地

  • 如果再次失败桥接

注意:您生成的应用程序将非常有问题且无法扩展。AMI 界面不是为做这样的事情而设计的,当你在同一盒子上运行很多操作和通道时,工作非常糟糕。因此,您必须在高并发负载下测试您的应用程序,以确保它正常工作(或更有可能不起作用)。

相关内容

  • 没有找到相关文章

最新更新