FreePBX:5:トランク:Arcstar IP Voice
Arcstar IP Voice をトランクに設定します。 特に断りのない限り、OCNドットフォンでも同様の設定です。 多チャンネルの場合でも、設定するトランクは、基本契約番号1つ分のみです。
目次
FreePBXの設定
Trunk
- MenuBar -> Connectivity -> Trunks
Add SIP Trunk で新しいトランクを設定します。
設定項目は以下だけ設定すればかまいません。
- Trunk Name : トランク名を指定します(例: arcstar)
- Outbound CallerID : 発信用の通知番号(Arcstar IP Voiceの電話番号)を指定します。
- Maximum Channles : 1チャンネル契約なら1、2チャンネル契約なら2を指定します。
Dialed Number Manipulation Rulesの項目はここでは何も指定しません。
Outgoing Settingsの項目には以下を指定します。
- Trunk Name : トランク名を指定します。例えばarcstar-outなど。
- PEER Details : 以下のように記述します。
defaultuser=ユーザID
type=peer
secret=パスワード
qualify=no ;; OCNドットフォンの場合は yes かもしれません。
progressinband=no
port=5060
nat=comedia
maxexpirey=3600
defaultexpirey=3600
language=jp
insecure=invite,port
host=CAのFQDN
fromuser=基本契約番号または電話番号
fromdomain=ipvoice.jp ;; OCNドットフォンの場合は ocn.ne.jp
externrefresh=60
externhost=NATの場合、外向きのFQDN
dtmfmode=inband
canreinvite=no
bindaddr=0.0.0.0
allowguest=no
disallow=all
allow=ulaw&alaw
使用環境に応じて、適宜変更してください。
USER Contextは、参照されないようです。
Register Stringには以下を指定します。
基本契約番号@ipvoice.jp:パスワード:ユーザID@CAのFQDN/基本契約番号
以上の設定で、Arcstar IP Voice がFreePBXのトランクとして使用できるようになります。
着信設定
DID1番号で単純に着信させる場合
- Menu Bar -> Connectivity -> Inbound Routes
Add Incoming Routeで新しい着信ルートを設定します。FreePBXでは発信と着信は"別な"設定として定義されます。
とりあえず以下の項目だけ設定できれば着信するようになります。
(注意:事前に内線電話機の登録と設定を行っておいてください-> FreePBX:内線設定)
- Description : この経路の名前を指定します。arcstar-inなど適当な名前を指定しておきます。
- DID Number : 通常はここには着信する番号(DID)を指定します。
注:全てのDIDを受け付ける場合には空白にしておけば全てキャッチします。
あとはページの下の方にあるSet Destinationを設定します。ここでは左のプルダウンからExtensionsを選択し、着信させたい内線番号を右のプルダウンから選んでおいてください。
以上で、着信があると内線電話機が鳴動するようになります。
複数のDID(着番での宛先制御)
複数のDIDがある場合、このままでは、どのDIDで着信したのかわかりません。 そのため、contextをカスタマイズすることで、着信番号で Inbound Route に振りわけるようにします。 (INVITEのときのTOヘッダから、DIDを取り出して制御をわたします。 詳細は、[1] )
PEER Details に次の1行を加えます。
context=custom-get-did-from-sip
/etc/asterisk/extensions_custom.conf に次の context を加えます。
[custom-get-did-from-sip]
exten => _.,1,Noop(Fixing DID using information from SIP TO header)
exten => _.,n,Set(pseudodid=${SIP_HEADER(To)})
exten => _.,n,Set(pseudodid=${CUT(pseudodid,@,1)})
exten => _.,n,Set(pseudodid=${CUT(pseudodid,:,2)})
exten => _.,n,Goto(from-trunk,${pseudodid},1)
発信設定
省略。