音声ファイルを再生する

2015年10月29日 (木) 18:52時点におけるGima (トーク | 投稿記録)による版 (音声ファイルの作成音声ファイルを再生するへ移動: つイカっとなって移動した。半生している)

Asteriskで音声ファイルを作って、通話先に流す方法

目次

概要

電話着信した際に冒頭アナウンスを流すことがよくあります。
下記のようなメッセージを流すことがあります。

  • 「内線番号を入力してください」
  • 「電話をお繋ぎします。しばらくお待ち下さい」
  • 「電話をお呼びしましたが、膝に矢を受けてしまって出ることができません」

回線着信時にアナウンスを流す、簡易IVRを作ります。

音声ファイルを用意する

まず、音声ファイルを作成しておきます。
音声合成ソフトで作成すると楽です

  • AquesTalk
  • VoiceText(キャサリンやモヤモヤさまぁ~ず2で使われた音声合成ソフト)

サウンドフォーマット

システムによって扱えるサウンドフォーマットは異なりますが、
おおよそ下記のフォーマットに合わせると無難です

チャンネル数
モノラル1ch
周波数(サンプルレート)
8000Hz
フォーマット
GSMかulaw

spwaveで音声ファイルのフォーマットを変更する

Windowsでファイルを編集する場合は、spwaveでフォーマットを変更することが出来ます。

チャンネル数のモノラル化
編集→ビット/モノラル化
ビットの変更
編集→ビット/サンプル変換
周波数の変更
変更→サンプリング周波数の変換

spwaveメイン画面

保存する時に、ファイルの種類をU-lawに指定して保存します。
ファイルをAsteriskの動いているサーバーに移しておきます。
SPwaveでファイルを保存する時のダイアログ画面

extension.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"で流す音声ファイルは拡張子抜き