音声ファイルを再生する
提供: VoIP-Info.jp
(音声ファイルの作成から転送)
Asteriskで音声ファイルを作って、通話先に流す方法
概要
電話着信した際に冒頭アナウンスを流すことがよくあります。
下記のようなメッセージを流すことがあります。
- 「内線番号を入力してください」
- 「電話をお繋ぎします。しばらくお待ち下さい」
- 「電話をお呼びしましたが、膝に矢を受けてしまって出ることができません」
音声ファイルを用意する
まず、音声ファイルを作成しておきます。
音声合成ソフトで作成すると楽ですが、それぞれクセがあります。
サウンドフォーマット
システムによって扱えるサウンドフォーマットは異なりますが、
おおよそ下記のフォーマットに合わせると無難です
- チャンネル数
- モノラル1ch
- 周波数(サンプルレート)
- 8000Hz
- フォーマット
- GSMかulaw
spwaveで音声ファイルのフォーマットを変更する
音声合成ソフトで作成した音声ファイルは、Asteriskではそのまま使うことができないので
ファイルフォーマットを変換する必要があります。
Windowsでファイルを編集する場合は、spwaveでフォーマットを変更することが出来ます。
- チャンネル数のモノラル化
- 編集→ビット/モノラル化
- ビットの変更
- 編集→ビット/サンプル変換
- 周波数の変更
- 変更→サンプリング周波数の変換
保存する時に、ファイルの種類をU-lawに指定して保存します。
ファイルをAsteriskの動いているサーバーに移しておきます。
extensions.confの設定
内線代表(100番)に着信したら、簡単なアナウンスを流して、電話機に繋ぐ例
[globals] Daihyo=100 [default] exten => ${Daihyo},1, NoOp(Incoming NTT(03-XXXX-XXXX)) exten => ${Daihyo},n, Answer exten => ${Daihyo},n, Wait(1) exten => ${Daihyo},n, Ringing(1) exten => ${Daihyo},n, Playback(/mnt/moh/1-odenwa-arigatou) exten => ${Daihyo},n, Playback(/mnt/moh/2-Yobidashi) exten => ${Daihyo},n, Dial(SIP/201&SIP/202,60,m) exten => ${Daihyo},n, Hangup
コツ
- "Playback"で流す音声ファイルは拡張子抜き
- "Wait"は一秒刻みで、アナウンスの"間"をつくる用途としては間延びするため不向き。
音声ファイルの中で間を空ける(無音の時間を作る)ほうが効果的