最終更新日:170728 原本2016-03-08 

Ad-header.png Fusion-logo.png   新刊→

Asterisk 13

提供:VOIP-Info.jp Wiki


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

メンテナンス終了は2018年10月
セキュリティフィックス提供終了は2019年10月

目次

概要

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  ← CentOS7 に対応していないので実行しません。かわりに以下のようにsystemctlの起動用ファイルを作成します。
# vim /usr/lib/systemd/system/asterisk.service

[Unit]
Description=Asterisk PBX and Telephony Daemon
After=network-online.target

[Service]
Type=simple
Environment=HOME=/var/lib/asterisk
WorkingDirectory=/var/lib/asterisk
User=asterisk
Group=asterisk
ExecStart=/usr/sbin/asterisk -f -C /etc/asterisk/asterisk.conf
ExecStop=/usr/sbin/asterisk -rx 'core stop now'
ExecReload=/usr/sbin/asterisk -rx 'core reload'
PrivateTmp=true

[Install]
WantedBy=multi-user.target

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

1. ユーザー/グループをasteriskで動作させるための設定、SELinux対応。
2. 各種設定ファイル対応。を参照

最低限のPBXとして動作させるには設定ファイルにAsterisk 13 サンプル設定ファイルを使用してみてください。

# cd /etc
# mv asterisk asterisk.bak
# mkdir asterisk
# cd asterisk
# wget http://ftp.voip-info.jp/asterisk/conf/conf-sample-13_current.tar.gz
# tar zxvf conf-sample-13_current.tar.gz

※ Sound File Folder は /var/lib/asterisk/sounds/en/ *.gsm です。

MP3を使用する場合の注意

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

# ./contrib/scripts/get_mp3_source.sh

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

コールパーク使用上の注意

Asterisk 13では従来のスタイル(features.conf)で使用するパーキング設定は使えなくなっています。res_parking.conf を使用してください。複数のパーキングロットを使用することができます。

https://wiki.asterisk.org/wiki/display/AST/Asterisk+12+Configuration_res_parking

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

Asterisk 13 pjsip

サンプル設定ファイル

Asterisk 13以降用にサンプルの設定ファイルを一新しました。

Asterisk 13 サンプル設定ファイル

ひかり電話ホームの使用

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