「FreePBX:10:トランク:ひかり電話(ホーム)」の版間の差分

提供: VoIP-Info.jp
移動先: 案内検索
(ページの作成:「{{Template:書きかけ}} カテゴリ:FreePBX カテゴリ:ひかり電話 ひかり電話のホームゲートウェイ(HGW)をFreePBXのトランク(FXO)と...」)
 
(ひかり電話ルータ(HGW)の設定)
 
(同じ利用者による、間の68版が非表示)
6行目: 6行目:
  
 
==方針==
 
==方針==
これまで、ひかり電話のゲートウェイ(ルータ)の認証がAsteriskではうまくできないためにAsterisk本体用のパッチを用意していました。ところがFreePBXの場合にはAsterisk自体にパッチをあてることができないので別な方法を使うことにします。<br>
+
Chan_SIPでは、ひかり電話のゲートウェイ(ルータ)の認証がAsteriskではうまくできないためにAsterisk本体用のパッチを用意していました。ところがFreePBXの場合にはAsterisk自体にパッチをあてることができないので、別なアプローチをとっていました。-> [[FreePBX:5:トランク:ひかり電話(ホーム)]]
Asteriskとひかり電話ホームを繋ぐ場合の問題はREGISTER時の認証におけるURIの問題だけで、それ以降のINVITEや実際の通話には問題はありませんでした。このため提供しているパッチではREGISTER時の認証の際のURIを組み立てなおしているだけです。実はこのREGISTERさえ回避できれば、Asteriskでひかり電話ホームを使うためのそれほど大きな問題はありません。<br>
+
<br>
認証で問題が発生するのであれば、要するに認証を使わなければ良い話です。これは、ひかり電話のゲートウェイ(ルータ/HGW)の設定を変更するだけで実は可能です。<br>
+
<br>
(この方法は"生の"Asteriskでも使えます)
+
FreePBX Distro 6からはChan_PJSIPが使えるため、Asterisk+PJSIPを使いひかり電話HGWへtrunkするのと同様の設定をFreePBXで行います。<br>
 +
Asterisk+PJSIPでのひかり電話HGWへのtrunk方法 -> [[Pjsip_ひかり電話HGW]]<br>
  
 
==ひかり電話ルータ(HGW)の設定==
 
==ひかり電話ルータ(HGW)の設定==
以下の例はRT-200NEのものですが、最近のルータでも同様の設定があるはずです。電話設定から内線設定を開き、FreePBXで使いたい内線番号(HGWの内線番号)を指定して設定します。<br>
+
以下の例はRT-200NEのものですが、最近のルータでも同様の設定があるはずです。<br>
 +
ひかり電話ルータのホスト名はntt.setupになります。<br>
 +
ひかり電話ルータがHGWであっても、OGであっても、またルータのIPを変更したとしても、ルータ自身がDNSとなり名前解決をしてくれます。<br>
 +
ブラウザのアドレスバーに[http://ntt.setup http://ntt.setup]を入力し、HGWにアクセスします。<br>
 +
IDとパスワードは、工事業者から聞いているはずです。<br>
 +
次に電話設定から内線設定を開き、FreePBXで使いたい内線番号(HGWの内線番号)を指定して設定します。<br>
 
<br>
 
<br>
 
[[ファイル:Fpx018.jpg|420px]]<br>
 
[[ファイル:Fpx018.jpg|420px]]<br>
 
<br>
 
<br>
 +
===MAC認証の設定===
 +
MAC認証はChan_SIPを使っていても、Chan_PJSIPを使っていても使用可能です。<br>
 
:'''内線番号''' : 通常はHGW内の内線番号です。ここでは例として'''3'''と想定します。
 
:'''内線番号''' : 通常はHGW内の内線番号です。ここでは例として'''3'''と想定します。
 
:'''ニックネーム''' : デフォルトのままでかまいません。
 
:'''ニックネーム''' : デフォルトのままでかまいません。
21行目: 29行目:
 
:'''MACアドレス''' : FreePBXをインストールしているマシンのMACアドレスを指定します。XX:XX:XX:XX:XX:XX の形式です。
 
:'''MACアドレス''' : FreePBXをインストールしているマシンのMACアドレスを指定します。XX:XX:XX:XX:XX:XX の形式です。
 
:'''ダイジェスト認証''' : 「行わない」を指定するのですが一旦「行う」にして下記のユーザIDとパスワードを設定しておいてください。ユーザIDとパスワードを指定してから'''行わない'''に指定してください。
 
:'''ダイジェスト認証''' : 「行わない」を指定するのですが一旦「行う」にして下記のユーザIDとパスワードを設定しておいてください。ユーザIDとパスワードを指定してから'''行わない'''に指定してください。
:'''ユーザID''' : この端末のユーザIDですが、ここでは例として'''3'''と想定します。
+
:'''ユーザID''' : この端末のユーザIDですが、ここでは例として'''0003'''と想定します。
 +
:'''パスワード''' : この端末のパスワードですが、ここでは例として'''pass1234'''と想定します。
 +
<br>
 +
FreePBX側でDIDによって着信ルートを変えない場合(キャッチオールさせる)場合には着信番号の設定はここで行います。<br>
 +
着信番号制御を使う場合には複数の番号をここで指定します。この場合にはダイヤルインの制御はFreePBX側で行えます。'''
 +
 
 +
===ダイジェスト認証の設定===
 +
'''Chan_SIPではトランクできません。'''必ずChan_PJSIPで使用してください。
 +
:'''内線番号''' : 通常はHGW内の内線番号です。ここでは例として'''3'''と想定します。
 +
:'''ニックネーム''' : デフォルトのままでかまいません。
 +
:'''端末属性''' : 音声専用端末に指定しておきます。
 +
:'''MACアドレス''' : FreePBXをインストールしているマシンのMACアドレスを指定します。XX:XX:XX:XX:XX:XX の形式です。指定しなくても、trunkできます。
 +
:'''ダイジェスト認証''' : 「行う」にして下記のユーザIDとパスワードを設定しておいてください。
 +
:'''ユーザID''' : この端末のユーザIDですが、ここでは例として'''0003'''と想定します。
 
:'''パスワード''' : この端末のパスワードですが、ここでは例として'''pass1234'''と想定します。
 
:'''パスワード''' : この端末のパスワードですが、ここでは例として'''pass1234'''と想定します。
 
<br>
 
<br>
要するにダイジェスト認証をやめてMACアドレスで認証するようにします。<br>
 
着信番号の設定はFreePBXに着信させたい番号を設定しておきます。<br>
 
 
FreePBX側でDIDによって着信ルートを変えない場合(キャッチオールさせる)場合には着信番号の設定はここで行います。<br>
 
FreePBX側でDIDによって着信ルートを変えない場合(キャッチオールさせる)場合には着信番号の設定はここで行います。<br>
 
着信番号制御を使う場合には複数の番号をここで指定します。この場合にはダイヤルインの制御はFreePBX側で行えます。'''
 
着信番号制御を使う場合には複数の番号をここで指定します。この場合にはダイヤルインの制御はFreePBX側で行えます。'''
  
 
==FreePBXの設定==
 
==FreePBXの設定==
===Trunk===
+
*Chan_SIPを使う場合 -> [[FreePBX:10:トランク:ひかり電話(ホーム):Chan_SIP]]
*'''MenuBar -> Connectivity -> Trunks'''<br>
+
*Chan_PJSIPを使う場合 -> [[FreePBX:10:トランク:ひかり電話(ホーム):Chan_PJSIP]]
Add SIP Trunk で新しいトランクを設定します。<br>
 
設定項目は以下だけ設定すればかまいません。<br>
 
:'''Trunk Name''' : トランク名を指定します(例: hikaridenwa)
 
:'''Outbound CallerID''' : 発信用の通知番号(ひかり電話の自分の番号)を指定します。
 
:'''Maximum Channles''' : 1チャンネル契約なら1、2チャンネル契約なら2を指定します。
 
Dialed Number Manipulation Rulesの項目はここでは何も指定しません。
 
'''Outgoing Settings'''の項目には以下を指定します。<br>
 
:'''Trunk Name''' : トランク名を指定します。例えばhikari-outなど。
 
:'''PEER Details''' : ここが少しトリッキーです。上のHGWの設定にあわせて以下のように記述します。
 
type=peer
 
secret=pass1234
 
username=0003
 
fromuser=3
 
domain=ひかり電話ルータのIPアドレス
 
fromdomain=ひかり電話ルータのIPアドレス
 
host=ひかり電話ルータのIPアドレス
 
insecure=port,invite
 
dtmfmode=inband
 
USER Contextは"hikari-in"など適当な名前を指定しておきます。<br>
 
Register Stringには以下を指定します。実際にはダイジェスト認証は行われないのですが、ユーザ名とパスワードを指定してREGISTERするようにしておきます。<br>
 
3@pass1234@ひかり電話ルータのIPアドレス
 
以上の設定で、ひかり電話ホームがFreePBXのトランクとして使用できるようになります。
 
 
 
===着信設定===
 
====単純に着信させたい場合====
 
*'''Menu Bar -> Connectivity -> Inbound Routes'''<br>
 
Add Incoming Routeで新しい着信ルートを設定します。FreePBXでは発信と着信は"別な"設定として定義されます。<br>
 
とりあえず以下の項目だけ設定できれば着信するようになります。<br>
 
(注意:事前に内線電話機の登録と設定を行っておいてください-> [[FreePBX:内線設定]])<br>
 
:'''Description''' : この経路の名前を指定します。hikari-inなど適当な名前を指定しておきます。
 
:'''DID Number''' : (要注意箇所) 通常はここには着信する番号(DID)を指定するのですが、ひかり電話ホームのルータの場合には着番号は落ちてこず、'''s'''エクステンションに落ちてくるため、ここには'''s'''を指定してください。<br>
 
注:FreePBX 12以降と思われますが全てのDIDを受け付ける場合には's'を指定せず空白にしておけば全てキャッチします。<br>
 
あとはページの下の方にある'''Set Destination'''を設定します。ここでは左のプルダウンから'''Extensions'''を選択し、着信させたい内線番号を右のプルダウンから選んでおいてください。<br>
 
以上で、ひかり電話に着信があると内線電話機が鳴動するようになります。<br>
 
この方法は一番簡単な方法で、カスタムのextenを書く必要もありませんが、もし他にも着番(DID)なしで着信してくるような回線を併用していると、着信経路が明確ではなくなってしまうため着信の経路制御がうまくいかなくなります。<br>
 
 
 
====DID制御(着番での宛先制御)====
 
ひかり電話のホームの場合、ルータからはDIDは渡されず登録している内線に紐付けられている番号で着信するだけです。このため、ひかり電話のHGWを使って着番を制御を行うには少しトリックが必要です。<br>
 
上記の単なる着信の場合と同じに設定すると大混乱を招きますので、併用してはいけません!<br>
 
<br>
 
まずカスタムのコンテキストを作成します。FreePBXにssh等でログインして、extensions_custom.conf に以下のコンテキストを作成します。<br>
 
[hgw-custom]
 
exten => s,1,Set(DESTNUM=${SIP_HEADER(To)})
 
exten => s,n,NoOp(${DESTNUM})
 
exten => s,n,Set(DESTNUM=${DESTNUM:1:10})
 
exten => s,n,Goto(from-trunk,${DESTNUM},1)
 
電話番号の桁数が異なる場合には 1:10 の部分を調整してください。1文字目から10文字の意味です。<br>
 
<br>
 
次にトランクから着信でこのコンテキストを通します。<br>
 
Trunkの設定を上記のものに加えて、context= を足します。<br>
 
type=peer
 
secret=pass1234
 
username=0003
 
fromuser=3
 
domain=ひかり電話ルータのIPアドレス
 
fromdomain=ひかり電話ルータのIPアドレス
 
host=ひかり電話ルータのIPアドレス
 
insecure=port,invite
 
dtmfmode=inband
 
context=hgw-custom
 
これでトランク(ひかり電話HGW)の着信からはhgw-customコンテキストを経由してから、トランクでの着信に制御が渡ります。<br>
 
この際、DIDとしてSIPヘッダから取得した宛先の着番に変換されているので以下のように普通のインバウンドルートを設定します。<br>
 
*'''Menu Bar -> Connectivity -> Inbound Routes'''<br>
 
Add Incoming Routeで新しい着信ルートを設定します。FreePBXでは発信と着信は"別な"設定として定義されます。<br>
 
とりあえず以下の項目だけ設定できれば着信するようになります。<br>
 
(注意:事前に内線電話機の登録と設定を行っておいてください-> [[FreePBX:内線設定]])<br>
 
:'''Description''' : この経路の名前を指定します。hikari-inなど適当な名前を指定しておきます。
 
:'''DID Number''' : 自分の着信番号、0312345678 のように指定するだけです。
 
'''もし以前にs着信(キャッチオール)の経路を作成していた場合には必ず削除しておいてください。'''
 
  
===発信設定===
 
*'''Menu Bar -> Connectivity -> Outbaound Routes'''<br>
 
Add Routeで発信を定義します。以下の項目を設定します。なおここでは外線は0でダイヤルされるとそのまま外線発信されるものとします(プレフィクスなし0xxxxの番号は外線とみなす)。<br>
 
:'''Route Name''' : hikaridenwa とか適当な名前を設定します。
 
:'''Route CID''' : この番号を使ってHGWに行こうとするので内線番号(ここの例では'''3''')を指定し、右側のOverride Extensionをチェックしておきます。
 
'''Dial Patterns that will use this Route'''はこの経路を使って発信する際の番号パターンを指定するものです。ここでは0で始まり次が番号であれば外線(ひかり電話)に出したいので、以下の画面のように'''0X.'''を指定してあります。<br>
 
[[ファイル:Fpx019.jpg]]<br>
 
最後に'''Trunk Sequence for Matched Routes'''で、この経路の行き先、つまり、ひかり電話のトランクを指定します。<br>
 
これで、ひかり電話ホームを使って発信できるようになります。
 
==外線発信ができない場合==
 
内線電話機から外線発信ができない場合には内線電話機の使用するトランク設定が正しくない場合がありますので[[FreePBX:5:内線設定]]のページを参考に使用するトランクの設定を行ってください。
 
==注意==
 
FreePBXのデフォルト設定では以下の警告が出ます
 
  WARNING[2121]: chan_sip.c:23527 handle_response_register: Got 423 Interval too brief for service 3@192.168.xxx.xxx, minimum is 3600 seconds
 
これはお馴染みのREGISTER時間の警告なので気になる場合にはSIPのグローバルセッティングを'''MenuBar -> Settings -> Asterisk SIP Settings'''で修正してください。
 
 
==HGWの内線を使いたい場合==
 
==HGWの内線を使いたい場合==
 
[[FreePBX:5:トランク:ひかり電話(ホーム):内線]]
 
[[FreePBX:5:トランク:ひかり電話(ホーム):内線]]

2015年11月11日 (水) 12:18時点における最新版

ひかり電話のホームゲートウェイ(HGW)をFreePBXのトランク(FXO)として使用します。ビジネス/オフィス/直収のページではありません。

方針

Chan_SIPでは、ひかり電話のゲートウェイ(ルータ)の認証がAsteriskではうまくできないためにAsterisk本体用のパッチを用意していました。ところがFreePBXの場合にはAsterisk自体にパッチをあてることができないので、別なアプローチをとっていました。-> FreePBX:5:トランク:ひかり電話(ホーム)

FreePBX Distro 6からはChan_PJSIPが使えるため、Asterisk+PJSIPを使いひかり電話HGWへtrunkするのと同様の設定をFreePBXで行います。
Asterisk+PJSIPでのひかり電話HGWへのtrunk方法 -> Pjsip_ひかり電話HGW

ひかり電話ルータ(HGW)の設定

以下の例はRT-200NEのものですが、最近のルータでも同様の設定があるはずです。
ひかり電話ルータのホスト名はntt.setupになります。
ひかり電話ルータがHGWであっても、OGであっても、またルータのIPを変更したとしても、ルータ自身がDNSとなり名前解決をしてくれます。
ブラウザのアドレスバーにhttp://ntt.setupを入力し、HGWにアクセスします。
IDとパスワードは、工事業者から聞いているはずです。
次に電話設定から内線設定を開き、FreePBXで使いたい内線番号(HGWの内線番号)を指定して設定します。

Fpx018.jpg

MAC認証の設定

MAC認証はChan_SIPを使っていても、Chan_PJSIPを使っていても使用可能です。

内線番号 : 通常はHGW内の内線番号です。ここでは例として3と想定します。
ニックネーム : デフォルトのままでかまいません。
端末属性 : 音声専用端末に指定しておきます。
MACアドレス : FreePBXをインストールしているマシンのMACアドレスを指定します。XX:XX:XX:XX:XX:XX の形式です。
ダイジェスト認証 : 「行わない」を指定するのですが一旦「行う」にして下記のユーザIDとパスワードを設定しておいてください。ユーザIDとパスワードを指定してから行わないに指定してください。
ユーザID : この端末のユーザIDですが、ここでは例として0003と想定します。
パスワード : この端末のパスワードですが、ここでは例としてpass1234と想定します。


FreePBX側でDIDによって着信ルートを変えない場合(キャッチオールさせる)場合には着信番号の設定はここで行います。
着信番号制御を使う場合には複数の番号をここで指定します。この場合にはダイヤルインの制御はFreePBX側で行えます。

ダイジェスト認証の設定

Chan_SIPではトランクできません。必ずChan_PJSIPで使用してください。

内線番号 : 通常はHGW内の内線番号です。ここでは例として3と想定します。
ニックネーム : デフォルトのままでかまいません。
端末属性 : 音声専用端末に指定しておきます。
MACアドレス : FreePBXをインストールしているマシンのMACアドレスを指定します。XX:XX:XX:XX:XX:XX の形式です。指定しなくても、trunkできます。
ダイジェスト認証 : 「行う」にして下記のユーザIDとパスワードを設定しておいてください。
ユーザID : この端末のユーザIDですが、ここでは例として0003と想定します。
パスワード : この端末のパスワードですが、ここでは例としてpass1234と想定します。


FreePBX側でDIDによって着信ルートを変えない場合(キャッチオールさせる)場合には着信番号の設定はここで行います。
着信番号制御を使う場合には複数の番号をここで指定します。この場合にはダイヤルインの制御はFreePBX側で行えます。

FreePBXの設定

HGWの内線を使いたい場合

FreePBX:5:トランク:ひかり電話(ホーム):内線

次のステップ

FreePBX:5:184/186コール
FreePBX:5:RingGroups