Asterisk設定入門(extensions.conf)
前回の記事では「sip.conf」について見ていきましたが、今回は「extensions.conf」の役割と各設定項目について紹介していきます。
ダイヤルプランとは
「extensions.conf」では「sip.conf」で定義した内線番号ごとのダイヤルプランを定義します。
ダイヤルプランとは、電話発信・着信時にAsteriskをどのように動作させるかを定めた計画のことです。
例えば、コールセンターのような、電話を受けたらまず音声ガイダンスが流し、その後、指示した番号をダイヤルさせることで、発信者が希望する担当者とつなぐ、と言った設定も可能です。
Asteriskは自由度が高いダイヤルプランを作成することが可能であり、それこそが数あるIP-PBXソフトウェアの中でAsteriskが選ばれる大きな理由と言えるでしょう。
ただし、自由度が高い分、設定に対する難易度も高くなっているのも特徴と言えます。
ダイヤルプランの構文
ダイヤルプランは、コンテクスト(context)と呼ばれる複数のセッション(グループ)に分けて定義します。
各コンテクストの中には、エクステンション(extension)とプライオリティ(priority)、アプリケーション(application)を定義し、ダイヤルプランを構成することになります。
言葉で理解するより、実際に設定してみた方がわかりやすいです。
ます、一番簡単なダイヤルプランを定義してみましょう。
# vi /etc/asterisk/extensions.conf
[default] exten => 202,1,Answer() exten => 202,2,Playback(beep) exten => 202,3,Hangup()
上記例では、”[default]”というコンテクストを定義しています。。
このコンテクストは「sip.conf」を編集したとき記述した”context”と関連付くことになります。
エクステンションは、ひとつのコンテクストの中で、ひとつまたは複数個、定義します。
エクステンションの構文は、”exten =>”から始まり、続けて、エクステンション名、プライオリティ、アプリケーションを記述していくことになります。
上記サンプルのエクステンションのひとつを例にとると下記のように表せます。
- exten => 202,1,Answer()
- 202 : エクステンション名(内線番号)
1 : プライオリティ(優先順位)
Answer() : アプリケーション
この”202”というエクステンション名は「sip.conf」内で定義した”[202]”に関連付きます。
数字だけでなく、メールアドレスのように英数字を含めることも許容されています。
プライオリティには1から始まる番号がつけられます。
処理実行の順番と考えればわかりやすいです。
番号は必ず連番とならなくてはいけません。例えば「2」の後に「4」が定義されていた場合、Asteriskは「2」を実行した後、その先は実行しません。
アプリケーションはそのエクステンションの処理内容になります。
例えば、Answer()は応答処理を行うアプリケーションです。
Asteriskにはアプリケーションがたくさん用意されており、それらを組み合わせることで様々な構成を可能にします。
次回、実際にソフトフォンをAsteriskにレジストし、ここまで編集してきた設定ファイルで、どのような動作をするのかを見ていきます。