【问题标题】:asterisk play music while waiting for DTMFasterisk 在等待 DTMF 时播放音乐
【发布时间】:2012-06-17 15:20:19
【问题描述】:

我正在用星号设置 DISA。 我想做的是在星号接收 DTMF 时向呼叫者播放音乐。 当接收到“#”的 DTMF 时,DTMF 将停止播放

我尝试过使用 background() 和回放() 命令,但它们没有达到目的!

有什么想法吗?

【问题讨论】:

    标签: asterisk dtmf


    【解决方案1】:

    您可以尝试使用phpagi。有一个叫做 fastpass_get_data 的函数,可以在播放声音的同时获取 dtmf 输入。

    http://phpagi.sourceforge.net/phpagi22/api-docs/phpAGI/AGI.html#fastpass_get_data

    【讨论】:

      【解决方案2】:

      我假设仅使用内置 DISA 应用程序不能满足您的需求。如果是,就使用它。

      对星号进行编程有不同的方法。您可以使用普通的拨号方案、ael 拨号方案、AGI、AMI,甚至可以用 C 编写自己的模块。

      您可以在拨号方案中做更多的事情,但通常通过 AGI 使用真实语言会导致代码更具可读性。

      使用拨号方案应用程序 StartMusicOnHold、StopMusicOnHold 以及 Read 或 WaitExten,您应该能够做您想做的事。运行 asterisk -rx 'core show application StartMusicOnHold' 等,以了解其中的每一个。

      您基本上想运行 StartMusicOnHold,然后使用 Read 或 WaitExten 收集数字直到完成(可能将它们收集到一个通道变量中),然后运行 ​​StopMusicOnHold。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-11-11
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多