Dial()アプリケーション概要

Dial()アプリケーション概要

前回まではダイヤルプランの概要を紹介してきましたが、今回からいよいよ内線電話環境を構築方法を見ていきます。



Dial()アプリケーション

「ダイヤルプランは難解である」みたいなことを以前の記事に書いてしまいましたが、単純な内線電話環境を構築するだけなら簡単です。

電話番号をダイヤルしたら、相手を呼び出し、相手が受話器を上げたことを判別し、必要な情報を交換し、セッションを確立してから通話を開始する。
離れた場所にいる相手と電話でつながるまでにザックリ書くとこのような手順を踏む必要があります。

しかし、AsteriskではDial()アプリケーションを呼び出すだけでそれらの全てを実現してくれます。


Dial()
相手先にコールし、チャネルを結ぶ。
複数の引数を取り、それぞれ下記のような意味を持つ。
 第1引数:コールに使用する技術とコールしようしている相手の内線番号を指定。
 第2引数:タイムアウトまでの時間を指定。(省略可能)
 第3引数:オプション文字列を指定。(省略可能)
 第4引数:URLを指定。(省略可能)

記述例
exten => 202,1,Dial(SIP/202,10,r,http://www.google.co.jp)

第1引数では利用するプロトコル(SIPやIAXなど)と、スラッシュ(/)をはさんで内線電話番号を指定します。
上記例では、内線番号「202」であるSIPデバイスを指定していることになります。

第2引数は相手を呼び出す時間を秒数で指定します。
相手を呼び出してから、ここで指定した秒数が経過したら次のプライオリティに制御が移ります。(次回詳しく見ていきます。)

第3引数はオプション文字列を指定します。
オプションとして「d」「t」「T」「w」「W」「f」「o」「r」などがあります。
上記例では「r」を指定していますが、これは相手を呼び出している間、発信側にリングバックトーンを流すことを設定しています。

第4引数ではURLを指定しています。
ここで指定したURLはINVITEメッセージの中に埋め込まれ、相手側に送られることになります。
下記はURLをパケットキャプチャした画面です

Dial() 第4引数のキャプチャ

この引数はあまり使われることはありませんので、通常は指定しません。



次回は実際にDial()アプリケーションを使用して内線環境を構築していきます。

タグ