Asterisk 13

2014年12月7日 (日) 08:39時点におけるTakahashi (トーク | 投稿記録)による版


Asterisk 13.0.0が2014年10月24日(現地時間)リリースされました。

目次

概要

Asterisk 13は最新のAsteriskのメジャーリリースで、Asterisk 11同様にLTS(Long Term Support:通常4年)になります。Asterisk 13のEOLは2019年10月が予定されています。

https://wiki.asterisk.org/wiki/display/AST/Asterisk+Versions

Asterisk-addonsは1.8系以降ではAsterisk本体に統合されています。

日本語音声の扱い

Asterisk 13からは日本語音声はAsterisk本体に統合されました。このため日本語対応パッチは不要となります。日本語実現の方法はコミュニティパッチと同じですが、統合された音声ファイル(クルーグが提供)が本家からダウンロードできます。このため当VoIP-Info.jpによる日本語対応パッチおよび日本語音声ファイルの提供は13以降については行いません。

インストール

前提となるパッケージ類

GCC、G++(GNU-C++)、OpenSSL、Ncurses、bison、カーネルソース(zaptel)、libxml2、SQLite3、libuuid-devel uuid-devel、json-c、json-c-devel
CentOS 6.3 Basic Serverの場合、以下の手順でコンパイル環境を整えます。
開発環境系パッケージを一括インストールしておく。

yum groupinstall "Development Libraries" "Additional Development"

パッケージを追加

yum install gcc gcc-c++
yum install libxml2 libxml2-devel openssl-devel ncurses-devel sqlite-devel newt-devel libuuid-devel uuid-devel
yum install json-c json-c-devel

openssl-develをインストールするとkrb5-devel,zlib-develも一緒に付いて来るので別途インストールの必要はありません。
Asteriskは現在のバージョンではBerkley DBではなくSQLite3をDBとして使用しますので、SQLite3と開発環境が必要です。
newt-develがないとmenuselectがフルスクリーンコントロールになりません。テキストベースになります。

format_mp3など、一部のソースはAsteriskに含まれないため別途入手しますが、この際にSubversionが必要となりますので、Subversionも入れておきます。

yum install subversion

Asteriskは10以降でMySQLサポートが"非常に"制限されています。このためCDRをMySQLで管理するような場合にはODBCが必要となるため、AsteriskのODBCサポート(res_odbc)を有効にする場合には以下も必要です。

yum install unixODBC unixODBC-devel mysql-connector-odbc
yum install libtool-ltdl libtool-ltdl-devel 


システムを最新の状態にアップデート

yum update

カーネルが更新された場合にはリブートしておきます。

janssonのインストール

Asterisk 12以降でlibjanssonが必要となっています。このため以下の手順で、Asteriskをインストールするにインストールしておきます。

http://www.digip.org/jansson/

から最新のjanssonを入手

# tar zxvf jansson-2.7.tar.gz
# cd jansson-2.7
# ./configure
# make
# make install


以上でコンパイル/インストール環境は整ったはずです。
事前にDAHDIをインストールするために環境を整えた場合にはgcc-c++とopenssl-develの追加だけでコンパイル可能になるはずです。 なおjanssonライブラリは通常 /usr/local/lib にインストールされます。このため ld.so を調整しておかないとAsteriskが共有ライブラリの読み込みに失敗して起動しません。
CentOS等の場合には /etc/ld.so.conf を確認します。/usr/local/lib が参照されていない場合には以下のように修正します。

include ld.so.conf.d/*.conf
/usr/local/lib

ファイルを修正した後、ldconfigを実行します。

Asteriskソースの入手

Asterisk 13のソースは以下からダウンロードできます。なお asterisk-13-current.tar.gz が最新バージョンへのシンボリックリンクとなっていますので、これをダウンロードすれば最新バージョンが入手できます。

http://downloads.asterisk.org/pub/telephony/asterisk/

展開するディレクトリはどこでもかまいませんが、ここでは/usr/src/とします。

# cd /usr/src
# wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-current.tar.gz

入手したら展開しておきます。展開すると現在のAsteriskのバージョンのディレクトリに展開されます。以降それぞれの作業は、それぞれの展開したサブディレクトリで行います。

# tar zxvf asterisk-13-current.tar.gz
# cd asterisk-13.x.x

Asteriskのコンパイルとインストール

基本的にconfigureしてmakeするだけです。

# ./configure

日本語音声ファイルをインストールする場合には./configureの後 make menuselectを実行します。

# make menuselect

メニュー画面から Core Sound PackagesCORE_SOUND-JA-....の必要なフォーマットのファイルを選択し、[Save & Exit]でmenuselectを終了します。あとはコンパイルとインストールを行うだけです。

# make
# make install
# make samples
# make config

これで新規インストールは完了します。最後の make config で起動時に自動起動するようになります。

MP3を使用する場合の注意

MP3関連(MoHなど)を使用する場合には、MP3系のソースはAsterisk本体に含まれていないため、コンパイル時にエラーになりますが、ソース入手のスクリプトが付属しています。

# ./contrib/scripts/get_mp3_source.sh

これを実行すればMP3関連のモジュールがコンパイルできるようになります。

SIPチャネルとしてPjsipを使う場合

Asterisk 13 pjsip

ひかり電話ホームの使用

ひかり電話HGWパッチ を参照してください。13から名前およびCLIコマンドを改めました。
またpjsipならパッチなしで直接扱えます。 pjsip ひかり電話HGWを参照してください。