Linux asterisk 第7回

この記事は2015年3月31日に書かれたものです。内容が古い可能性がありますのでご注意ください。


日本語の音声ファイルを使用して留守番電話応答させる

設定手順

サンプル用の音声ファイルを以下のサイトからダウンロードする(1.6系のものだが 1.8系のasteriskでも使用できた)

[root@asterisk ~]# cd
[root@asterisk ~]# wget ftp://ftp.voip-info.jp/asterisk/sounds/1_6/asterisk-sound-jp_16_pre.tar.gz

サンプル用の音声データを以下のディレクトリに移動させて展開する

[root@asterisk ~]# mv asterisk-sound-jp_16_pre.tar.gz /usr/share/asterisk/sounds
[root@asterisk ~]# tar xzvf asterisk-sound-jp_16_pre.tar.gz

asterisk.confの内容を以下の用に変更する。( /usr/share/asterisk/sounds/ja/ というディレクトリを見に行く設定)

[root@asterisk ~]# vi /etc/asterisk/asterisk.conf
[options]
;languageprefix = yes           ; Use the new sound prefix path syntax.
languageprefix = yes            ; Use the new sound prefix path syntax.

sip.confの内容を以下の用に変更する。( /usr/share/asterisk/sounds/ja/ というディレクトリを見に行く設定。jpではなく jaなので注意する事)
この設定を入れると、/usr/share/asterisk/sounds/en/ 以下のファイルは見に行かなくなる

[root@asterisk ~]# vi /etc/asterisk/sip.conf
[general]
;language=en                    ; Default language setting for all users/peers
language=ja

extensions.confの内容を以下の用に変更する

[ivr-menu]
exten => s,1,Set(CNT=1)
exten => s,n,Ringing()
exten => s,n,Wait(3)
exten => s,n,Answer()
exten => s,n,Wait(5)
exten => s,n(rtry),Background(vm-intro)
exten => s,n,WaitExten(10)
exten => s,n,GotoIf($[${CNT} >= 3]?s,exits:s,loops)
exten => s,n(loops),Set(CNT=$[${CNT} + 1])
exten => s,n,Goto(s,rtry)
exten => s,n(exits),playback(vm-sorry)
exten => s,n,Wait(10)
exten => s,n,Hangup()
exten => s,n,Congestion()

[default]
exten => 12345,1,Goto(ivr-menu,s,1)

以下のようなスクリプトでasteriskの再起動

[root@asterisk ~]# cat ~/asterisk_restart
#!/bin/bash
kill `cat /var/run/asterisk/asterisk.pid`
sleep 3s
asterisk -U asterisk -G asterisk

[root@asterisk ~]# ~/asterisk_restart

SIPクライアントから 12345 にコールしてみると日本語で音声が再生された

ページ:
1

2

  • このエントリーをはてなブックマークに追加

PAGE TOP