エージェント端末の「常時接続」設定を電話回線を通して使用する
エージェント端末の「常時接続」機能とは?
レジスターしているエージェントの電話機と常時接続 (通常のケース) :
常時接続機能を有効にすると、エージェントがBrekeke CCSにログインした際、通話のコネクションを確立するためにBrekeke PBX内のメディアサーバープロセスはUAとして、INVITEメッセージをエージェントの電話機に送出します。
確立した通話のセッションはBrekeke PBXとエージェントの電話機との間でエージェントがBrekeke CCSをログアウトするまで維持されます。
このような通常のケースの場合、バンドルされたBrekeke SIP Server内に保存されているレジスター情報を元にINVITEメッセージはエージェント端末へ向けて送出されます。
ITSP(キャリア)の電話回線を通してエージェントの電話機と常時接続 :
このようなキャリアの電話回線を通してエージェントのスマートフォンなど電話機と常時接続する場合、バンドルされたBrekeke SIP Server内にエージェントの電話機についてのレジスター情報は存在しません。またメディアサーバーはINVITEの送出先となるITSPの情報や認証情報も保持していない(※1)ため、この常時接続は失敗してしまいます。
※1 ITSPへの宛先情報や認証に必要な情報は通常、Brekeke PBX内のARS ルートとして保存されています。
解決方法:
ケース 1. ITSPとの接続において、認証情報が不要である場合。
バンドルされたBrekeke SIP Serverのダイヤルプラン設定において、INVITEメッセージを正しく目的の宛先(ITSP)へ送出するためのダイヤルプランルールを設定します。
例:
[Matching Patterns]
$request = ^INVITE
$localhost = ^true
$port = ^5056$
$geturi(To) = sip:(.+)@
[Deploy Patterns]
To=sip:%1@<itsp domain>
From=sip:<account>@itsp domain>
X-PBX-Param: <empty>
ケース 2. ITSPとの接続において認証が必要な場合
一般的にITSPへのルーティング情報及び認証情報はARSルートして保存されます。そのためこれらの情報を取得するため、メディアサーバーから送出されたINVITEメッセージを一旦、PBXコアモジュール側に戻します。この動作はバンドルされたBrekeke SIP Server (BSS)においてダイヤルプランルールを追加することで実現します。
Step 1. 以下のようなダイヤルプランルールを追加して、メディアサーバーから送出されたINVITEメッセージをPBXコアへ戻します。
[Matching Patterns]
$request = ^INVITE
$localhost = ^true
$port = ^5056$
[Deploy Patterns]
$target=127.0.0.1:5052
セキュリティ強化のため、以下のダイヤルプランも追加してなりすましメッセージを拒否(Decline)します。
[Matching Patterns] $request = ^INVITE $localhost = ^false X-PBX-Param = ^pin$ [Deploy Patterns] $action = 603
Step 2. PBX側において、 以下のARS Pattern-IN を設定して戻ってきた INVITEメッセージを許可します。
Patterns - IN [Matching Patterns] To: sip:(.+)@ Plugin 1: sipheader Param 1: X-PBX-Param Return 1: ^pin$ [Deploy Patterns] From: pin&f1 Custom: &action.type=pin
Step 3. PBX側において、以下の例のようにARS Pattern – OUT を設定して INVITE メッセージが ITSP側へ正しく送信されるようにします。
既存のITSP接続用ARSルート内において設定済みのPattern – OUTをコピーして、以下のように[Matching Patterns]を変更した新しい Pattern- OUTを作成、追加することをお勧めします。
Patterns - OUT [Matching Patterns] To: sip:([0-9]{10,20})@ Plugin 1: prop Param 1: action.type Return 1: ^pin$ [Deploy Patterns] <Enter Connection Info for your ITSP>
※2. この説明ではメディアサーバーの使用ポートを 5056 (デフォルト)として想定しています。作業前にメディアサーバーが実際に使用しているポートを PBX >[SYSTEM] > [Status] > [Media Server] >[Listen port(out)] で確認してください。