フリー・エンジニア
高橋隆雄 フリー・エンジニア
高橋隆雄


Asteriskが何に使えるかを知る上でポイントとなるのは当然ながらAsteriskがどのような機能を備えているかである。Asteriskが備える機能は実に多い。単純なソフトスイッチとしてのPBXスイッチングに始まり、ボイスメールやボイスメールの電子メール転送といったモダンなPBXの機能。コール・キューイングのようなCTI向けの機能、さらには他のアプリケーションとの連携など実に様々だ。今回はこれらAsteriskの備える機能の概要を解説しよう。

 まず最初にお礼を。去る4月14日、日経コミュニケーション主催の『無料IP-PBX「Asterisk」の全貌』と題したセミナーが開催された。当日は実にたくさんの方が来場され、日本で開催されるAsterisk関連のセミナーとしては初の大規模なものとなった。遠方より来てくださった方も結構いらっしゃったようで、Asteriskに対する関心の高さをまさに肌で感じた一日であった。ご来場いただいた皆様にはこの場をお借りしてお礼を述べたい。

Asteriskで何ができるのか?

 実は先日、タイムリーにもこの連載で取り上げるのに実に良い質問を頂戴した。『Asteriskで実現できる機能はどんなものですか?』という趣旨の質問だ。これは良い質問ではあるが答えにくい質問である。

 というのもAsteriskはその備える機能を組み合わせることによって、いかようにでも化けることのできるシステムだからだ。つまりスクリプト言語のように言語そのものが備える機能や特性を組み合わせる、すなわちプログラミングすることによって実現できる機能が多岐に渡るのと同様に、Asteriskもその機能の組み合わせによって実現できることはたくさんあるのである。もちろんAsteriskがWebサーバーに化けたりファイル・サーバーに化けるようなことは有り得ない。Asteriskはテレフォニーのためのプラットフォームの一つであり、テレフォニーの各種のアプリケーションを実現可能であると捉えていただけばよい。

Asteriskが備える機能

 Asteriskでは各種の機能は「アプリケーション」と呼ばれる形で実装されている。これに対して各種のプロトコルをサポートする部分は「チャネル」と呼ばれている。これを簡単に図示したものが図1である。

図1 Asteriskのアーキテクチャ
図1 Asteriskのアーキテクチャ

 PBXの肝であるスイッチ部分はPBXコアと呼ばれている。この部分は、いわゆるダイヤル・プランにしたがって挙動が決定する。ダイヤル・プラン内からはAsteriskが備える各種のアプリケーションが呼び出され実行される。このアプリケーションがAsteriskが備える機能であるといってもいいだろう。ただし中にはPBXコア内に実装されているビルトインの機能もあるためアプリケーションがAsteriskの機能すべてというわけではない。

 本稿執筆時点のAsteriskはバージョン1.2.7.1だが、アプリケーションは全部で84ある。アプリケーションのには「ダイヤルする」というシンプルなものや、ボイスメールを実装するものなど様々なものがある。面白いのは各アプリケーションがそれぞれ高い機能を備えている点である。例えば次のような1行を記述するだけでボイスメール機能が使えるようになる。

 exten => 1234,1,VoicaMailMain()

 実際には設定可能なパラメータやオプションがあるのだが、もっとも単純な記述方法はこれで、この1行を書くだけでボイスメールのメニュー、再生、消去といったボイスメール機能が提供される。