0

サーバーに Asterisk と FreePBX をインストールしました。テスト用にいくつかの拡張機能をセットアップし、これらのボイスメールを構成しました。/var/spool/asterisk/voicemail/default/(EXTENSION)/tmp/(TMPFILE).wav ボイス メール ファイルが に保存され、後で に移動されることを発見しました。/var/spool/asterisk/voicemail/default/(EXTENSION)/INBOX/msg####.wav

サーバーがデータの処理を開始できるように、音声データを別のサーバーにリアルタイムでストリーミングしたいと考えています。つまり、アスタリスクが電話を受信するとすぐにデータのストリーミングを開始したいのですが、電話が切れるのを待ってからサウンドを送信したくありません。

アスタリスクに接続して音声データを取得する方法を探しています。これまでのところ、いくつかのアイデアがあります。

1) /tmp ディレクトリに新しいファイルがないか定期的に確認し、利用可能になり次第読み取りを開始します。しかし、ファイル名はランダムで、たとえば誰が電話しているかを知りたいです。行き止まりのようです。アスタリスクがファイルを移動しようとしているときにファイルを読み取ると、ファイルがスタックする可能性がありますか?

2) プロセスの正しいステップでファイルを取得できるアスタリスク用のプラグインを作成できるかもしれません。その場合、そのようなプラグインを作成するには何が必要で、ボイス メール モジュールが電話に出るとすぐに音声データにアクセスできるようにするにはどうすればよいですか?

4

1 に答える 1

3

チャネル #3 からサウンドを取得できる EAGI プログラムを使用できます。

http://www.voip-info.org/wiki/view/Asterisk+EAGI

ストリーミングを行うアスタリスク用の c/c++ アプリを実行することもできます (例については、apps/ フォルダーのソース コードを参照してください)。

于 2015-12-01T22:10:55.733 に答える