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