wiki:AsteriskDebian

DebianにAsteriskをインストールする。

>> Asterisk情報

どういうわけか、ちょうど一年前にこのページを書いたのですが、少し状況が変わってきたので更新しておきます。

世の中、DebianにAsteriskをインストールする話はあまりみかけませんが、当社はDebianが大勢を占めているのでDebianにインストールします。 以下のような方針にします。

  • Debian Etchにインストールする。
  • Asteriskは自分でビルドする。
  • Zaptelは、Debianが用意しているパッケージを入れる。
  • 日本の環境にあわせて、パッチを適用する。

Zaptel 1.2.11

# apt-get install zaptel-source
# apt-get install gcc-4.0
# CFLAGS=-DZERO_BATT_RING m-a a-i zaptel
# depmod
# apt-get install zaptel

/etc/zaptel.confは、こんな感じ。

loadzone=jp
defaultzone=jp
fxsks=1-4

ちなみに、うちでは TDM400Pを使っています。 日本の認定(いわゆるJATE認定)は取得されていませんが、ひかり電話アダプタVG820aのアナログ側に接続しているので、少なくとも法律的には大丈夫。

Asterisk 1.2.14とAsterisk Addons 1.2.7

なんで、Asterisk 1.2.24も出てるのに1.2.14なのかというと、上記のZaptelのバージョンで対応できるのが1.2.14までだからです。 Debianのパッケージを使わずにZaptelをインストールすれば、1.2.24でも大丈夫なはず。

# apt-get install ncurses-dev
# apt-get install libssl-dev
# apt-get install libtonezone-dev
# apt-get install libpri-dev

libtonezoneは、本来はZaptelのソースに含まれている。 上記の方法によるZaptelのビルドではインストールされないため、別途インストールした。

以下のスクリプト「Build.sh」を作ってビルドしました。

#!/bin/sh

ASTERISKDIST="http://downloads.digium.com/pub/asterisk/releases/asterisk-1.2.14.tar.gz"
ASTERISKDIR="asterisk-1.2.14"
JA_PATCH="ftp://ftp.voip-info.jp/asterisk/patch/scripts/ja_autopatch.sh"
METERMAID="http://bugs.digium.com/file_download.php?file_id=10350&type=bug"
PREFIX="/usr/local/asterisk"

ADDONDIST="http://downloads.digium.com/pub/asterisk/releases/asterisk-addons-1.2.7.tar.gz"
ADDONDIR="asterisk-addons-1.2.7"

if [ ! -d $ASTERISKDIR ]; then
  wget -O - $ASTERISKDIST | tar xzf -
  cd $ASTERISKDIR
  wget -O - $JA_PATCH | sh
  wget -O - $METERMAID | patch -p0
  INSTALL_PREFIX=$PREFIX make
  cd ..
fi

if [ ! -d $ADDONDIR ]; then
  wget -O - $ADDONDIST | tar xzf -
  cd $ADDONDIR/format_mp3
  make INCLUDE=-I../../$ASTERISKDIR/include
fi
% ./Build.sh

スクリプトを読んでいただけばわかるとおり、「/usr/local/asterisk」以下にインストールするようにビルドしました。 インストールは以下のように。

# mkdir /usr/local/asterisk
# cd asterisk-1.2.14
# INSTALL_PREFIX=/usr/local/asterisk make install
# cd asterisk-addons-1.2.7/format_mp3
# cp format_mp3.so /usr/local/asterisk/usr/lib/asterisk/modules

format_mp3をインストールすれば、mpg123は必要ありません。 Asteriskのmusiconhold.confは以下のとおり。

[default]
mode=files
directory=/usr/local/asterisk/var/lib/asterisk/mohmp3
random=yes