FreePBX:10:トランク:ひかり電話(ホーム):Chan SIP
FreePBXの設定
Trunk
以下は、指定の設定値以外は、デフォルト値でかまいません。
- メニューバー -> 接続 -> トランク
+トランクを追加 -> +SIP(chan_sip)トランクを追加 で新しいトランクを設定します。
General タブの設定項目は以下を指定します。
- トランク名 : トランク名を指定します(例: hikaridenwa)
- アウトバンドCID : 発信用の通知番号(ひかり電話の自分の番号)を指定します。
- 最大チャネル数 : 1チャンネル契約なら1、2チャンネル契約なら2を指定します。
Dialed Number Manipulation Rulesタブの設定項目はここでは何も指定しません。
sip設定タブの中には2つのタブがあります。
- Outgoing タブの設定項目は以下を指定します。
- トランク名 : トランク名を指定します。例えばhikari-outなど。
- ピア詳細 : ここが少しトリッキーです。上のHGWの設定にあわせて以下のように記述します。
type=peer secret=pass1234 username=0003 fromuser=3 domain=ひかり電話ルータのIPアドレス fromdomain=ひかり電話ルータのIPアドレス host=ひかり電話ルータのIPアドレス insecure=port,invite dtmfmode=inband context=単純着信時はfrom-pstn。DID制御時はfrom-pstn-toheader
- インバウンド タブの設定項目は以下を指定します。
- ユーザーコンテキスト : "hikari-in"など適当な名前を指定しておきます。
- ユーザー詳細 : 空白にします。
- レジスト文字列 : 以下を指定します。実際にはダイジェスト認証は行われないのですが、ユーザ名とパスワードを指定してREGISTERするようにしておきます。
3:pass1234@ひかり電話ルータのIPアドレス
着信設定
- メニューバー -> 接続 -> インバウンドルート
Add Incoming Routeで新しい着信ルートを設定します。FreePBXでは発信と着信は"別な"設定として定義されます。
とりあえず以下の項目だけ設定できれば着信するようになります。
(注意:事前に内線電話機の登録と設定を行っておいてください-> FreePBX:内線設定)
- 説明 : この経路の名前を指定します。hikari-inなど適当な名前を指定しておきます。
- ダイヤルイン番号 : 単純着信時は空白。DID制御時は自分の着信番号、0312345678 のように指定するだけです。
発信設定
単純に発信させたい場合
- メニューバー -> 接続 -> アウトバンドルート
Add Routeで発信を定義します。以下の項目を設定します。なおここでは外線は0でダイヤルされるとそのまま外線発信されるものとします(プレフィクスなし0xxxxの番号は外線とみなす)。
経路設定の設定項目は以下を指定します。
- 経路名 : hikaridenwa とか適当な名前を設定します。
- ルート CID : 発信番号を選択するが、代表番号以外でもHGWで上書きされる
- 内線を上書き : はいを選択する
- 一致したルートのトランクシーケンス : この経路の行き先、つまり、ひかり電話のトランクを指定します。
Dial Patternsの設定項目は以下を指定します。 この項目は発信する際の番号パターンにより、経路を指定するためのものです。
- 一致パターン : ここでは0で始まり次が番号であれば外線(ひかり電話)に出したいので、以下の画面のように0X.を指定してあります。
発番選択したい場合
1.まずカスタムマクロmacro-dialout-trunk-predial-hookを有効にします。
PREDIAL_HOOK_RETが"BYPASS"以外の値だと、macro-dialout-trunk-predial-hookが有効になります。
- メニューバー -> アドミン -> Config Edit
Asterisk Custom Configuration Files -> extensions_custom.conf
以下を記入し、保存をクリック
[macro-dialout-trunk-custom] exten => s,1,Set(PREDIAL_HOOK_RET=)
2.macro-dialout-trunk-predial-hookでSIPヘッダーを追加する。
ntt-****の値は、NTT西日本の場合ntt-west、NTT東日本の場合ntt-east。筆者のところでは東日本は未検証。
- メニューバー -> アドミン -> Config Edit
Asterisk Custom Configuration Files -> extensions_custom.conf
以下を記入し、保存をクリック
[macro-dialout-trunk-predial-hook] exten => s,1,SIPAddHeader(P-Preferred-Identity: <sip:${CALLERID(number)}@ntt-****.ne.jp>)
3.アウトバンドルートを通る条件で発番を選択させる。
発信したい発番の数だけ条件が必要です。
- メニューバー -> 接続 -> アウトバンドルート
Add Routeで発信を定義します。以下の項目を設定します。
経路設定の設定項目は以下を指定します。
- 経路名 : hikaridenwa とか適当な名前を設定します。
- ルート CID : 発信番号を選択するが、代表番号以外でもHGWで上書きされる
- 内線を上書き : はいを選択する
- 一致したルートのトランクシーケンス : この経路の行き先、つまり、ひかり電話のトランクを指定します。
Dial Patternsの設定項目は以下を指定します。 この項目は発信する際の番号パターンにより、経路を指定するためのものです。
- 前に付与 : 例えば、頭に9を付けてダイヤルすると、この発番でダイヤルします。
- 一致パターン : ここでは0で始まり次が番号であれば外線(ひかり電話)に出したいので、以下の画面のように0X.を指定してあります。
- 発信者ID : 例えば、2XXとしておくと、内線200番台は、この発番でダイヤルします。
異常がある場合
- 発信も着信もしない
トランクの設定を見直してください
- 発信するが着信しない
メニューバー -> 接続 -> インバウンドルート -> ダイヤルイン番号を空白にしてみる。
その設定で着信したら、インバウンドルートの内容をチェックする。
着信できなかったら、HGWの着信番号の項目をチェックする。
- 着信するが発信しない
メニューバー -> 接続 -> アウトバンドルート -> Dial Patterns -> 一致パターンをX.にしてみる。
その設定で発信したら、アウトバンドルートの内容をチェックする。
- 発信番号が違う
メニューバー -> 接続 -> アウトバンドルートでアウトバンドルートの順番が正しいかチェックする。