是否可以使用 Asterisk 从某些程序的输出(或从 ALSA/etc 播放或从 FIFO 管道)获取多个媒体流发起多个呼出呼叫?全自动解决方案,无需人工干预。
问题
我有生成多个(分离的)音频流的软件。它可以流入 ALSA/OSS/PulseAudio 设备或 FIFO 管道(命名管道)。
我需要不断地通过 SIP(提供商支持的唯一接口)将此音频重新发送给我的 STT/ASR 服务提供商。
当前的解决方法
我当前的测试用例是记录短文件并将它们与简单的调用文件一起使用,例如:
Channel: SIP/asr.provider.com/12345
Application: Playback
Data: chunk-filename-here
MaxRetries: 2
一切正常,但我需要使这个过程连续(开始拨号并尽可能长时间保持连接)。我想我需要Application: Playback
在呼叫文件或拨号计划上下文中替换为其他适当的应用程序。
UPD
如下fromchan_oss
和chan_oss
docs,两者都不合适:
使用 1.2.x 版本的 Asterisk,只能创建一个 OSS 通道,并且在给定时间只能向/从 OSS 通道发出一个调用。