MixMonitor - 如何使用lame转换然后删除源文件?

时间:2012-05-14 15:47:01

标签: asterisk agi

如何在通话结束后删除源wav文件?如果我必须使用AGI,我可以有一个示例脚本吗?

这就是我使用MixMonitor的方式     exten => s,n,MixMonitor($ {source_file} .wav,W(1),lame -V3 $ {source_file} .wav $ {mp3_from_source} .mp3)

失败,因为它在转换前被删除。     exten => h,n,System(rm $ {source_file} .wav)

2 个答案:

答案 0 :(得分:2)

怎么样:

exten => s,n,MixMonitor(${source_file}.wav,W(1),lame -V3 ${source_file}.wav ${mp3_from_source}.mp3 && rm ${source_file}.wav)

并跳过h中的来电?

答案 1 :(得分:2)

老实说,你需要停止创作。只需将系统级调用作为单独的拨号计划行执行。 mixmonitor一行,lame一行,验证lame的返回值,然后删除。这就是我在我的应用程序中所做的,它完美无缺。您无需将转换过程的每个步骤组合到一个拨号方案行中。

我使用此命令行:

 /usr/local/bin/lame -b16 --noshort "/var/spool/asterisk/monitor/$1.wav" "/var/www/html/asterisk/calls/$1.mp3"