我正在使用PHP-AGI进行星号呼叫录音。它在类 AGI_AsteriskManager 中提供了一种方法监控。现在我不想单独输入和输出录制,我只想要一个包含完整通话记录的单个文件。我使用下面的代码:
...
$agiAsteriskManager = new AGI_AsteriskManager();
$agiAsteriskManager->Monitor($mychannel,$myfile, "wav", true);
...
docs中提到的最后一个参数是$ mix,我猜想要创建单个文件($ mix = false)或两个单独的文件($ mix = true)[source]。
我已尝试过两种$ mix选项,但无论如何都会创建两个文件。任何人都可以帮我解决这个问题吗?我哪里错了,因为我找不到有关相同的详细文档?
答案 0 :(得分:0)
这是正常的。
它会创建两个文件,之后转换为一个
依赖:sox包。
答案 1 :(得分:0)
$agiAsteriskManager->Monitor($mychannel,$myfile, "wav", true);
这会将通话记录保存到单个文件1.wav
中$agiAsteriskManager->Monitor($mychannel,$myfile, "wav", false);
上述声明会将通话记录保存为2个文件。它将分别保存输入和输出。
' arheops'在前面的评论中正确地提到,如果要将录制内容保存到单个文件中,则需要SOX。在PBX服务器上安装SOX将解决此问题。
最初星号会在呼叫监控打开且呼叫正在进行时创建单独的输入和输出文件。一旦呼叫监控停止,两个录音将在SOX的帮助下自动合并。