通话结束后如何删除源 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)
老实说,你需要停止创造性。只需将系统级呼叫作为单独的拨号计划线路执行。mixmonitor 一行,lame 一行,验证 lame 的返回值,然后删除。这就是我在我的应用程序中所做的,并且效果很好。您不需要将转换过程的每一步都合并到一个拨号方案行中。
我使用这个命令行:
/usr/local/bin/lame -b16 --noshort "/var/spool/asterisk/monitor/$1.wav" "/var/www/html/asterisk/calls/$1.mp3"
怎么样:
exten => s,n,MixMonitor(${source_file}.wav,W(1),lame -V3 ${source_file}.wav ${mp3_from_source}.mp3 && rm ${source_file}.wav)
并跳过电话h
?