FreePBX と NTT ひかり電話の接続

Asterisk は NTT ひかり電話と接続することができます。ただし、NTT からレンタルするルーターによります。

NTT ひかり電話ルーターの設定

最初に ブラウザーから NTT ひかり電話ルーターへアクセスして、Asterisk が接続するための内線設定をします。

  1. 左メニューの電話設定にある内線設定をクリックします。
  2. Asterisk の接続に使用する内線番号 (3-7 のいづれか) をクリックします。(ここでは “3” を使用します。)
  3. ニックネームに Asterisk サーバーの名前など任意の文字を入力します。
  4. Asterisk サーバーが接続するためのユーザー ID とパスワードを入力します。
  5. NTT の追加番号サービス「マイナンバー」を利用している場合は、[ 電話番号 ] で発信する時の通知番号と着信番号をチェックします。
  6. [設定] ボタンを押します。

Asterisk の設定 (Asterisk 11 以下の場合)

Asterisk に CUI で /etc/asterisk/sip_general_additional.conf に次の行を追記します。

defaultexpirery=3600

Asterisk を再起動します。

トランクの追加

FreePBX で NTT ひかり電話ルーターと接続するためのトランクを追加します。

chan_pjsip の場合

インバウンドルートをひかり電話の着信番号によって制御する場合は、コンテキストを作る必要があります。

  1. メニューの [アドミン]-[Config Edit] を選択します。
  2. extensions_custom.conf を選択して、次の行を入力します。
    [from-pjsip-custom]
    exten => _.,1,Goto(from-pstn,${CUT(CUT(PJSIP_HEADER(read,To),@,1),:,2)},1)
  3. [保存] ボタンを押します。

次に NTT ひかり電話ルーターと接続するためのトランクを追加します。

  1. メニューの [接続]-[トランク] を選択します。
  2. [トランクを追加] ボタンを押して、[SIP (chan_pjsip) トランクを追加] を選択します。
  3. General タブのトランク名に任意の名前を入力します。
  4. pjsip 設定タブをクリックします。
  5. ユーザー名にひかり電話ルーターに設定したユーザー ID を入力します。
  6. Secret にひかり電話ルーターに設定したパスワードを入力します。
  7. SIP Server にひかり電話ルーターの IP アドレスを入力します。
  8. 先ほど、コンテキストを作成した場合は、コンテキストに from-pjsip-custom を入力します。
  9. 高度な設定タブをクリックします。
  10. DTMF Mode をバンド内にします。
  11. From User にひかり電話ルーターで選択した内線番号を入力します。
  12. クライアントURIに sip:[ひかり電話ルーターで選択した内線番号]@[ひかり電話ルーターの IP アドレス] を入力します。(例: sip:2@192.168.0.1)
  13. [送信] ボタンを押します。
  14. 右上の [変更を適用] ボタンを押します。

chan_sip の場合

  1. メニューの [接続]-[トランク] を選択します。
  2. [トランクを追加] ボタンを押して、[SIP (chan_sip) トランクを追加] を選択します。
  3. General タブのトランク名に任意の名前を入力します。
  4. General Settings のOutbound Caller ID に任意の文字を入力します。
  5. Outgoing Settings の Trunk Name に General Settings の Trunk Name に入力した文字を入力します。
  6. Outgoing Settings の PEER Details に次の文字を入力します。
    host=[NTT ルーターの IP アドレス]
    fromuser=[NTT ルーターでクリックした内線番号]
    username=[NTT ルーターに設定したユーザー ID]
    secret=[NTT ルーターに設定したパスワード]
    type=friend
    insecure=invite,port
  7. USER Context にひかり電話の電話番号を入力します。
  8. USER Details に context=from-trunk-sip-[Trunk Name に入力した文字] を入力します。
  9. Register String に次の値を入力します。
    [内線番号]:[パスワード]:[ユーザー ID]@[IP アドレス]/[USER Context]
  10. [ Submit Changes ] ボタンを押します。

インバウンドルートの設定

ひかり電話で着信した時の設定をします。

  1. 左メニューの Inbound Routes をクリックします。
  2. DID Number にひかり電話の電話番号を入力します。
  3. Set Destination に着信した時の動作を選択します。
  4. [ Submit ] ボタンを押します。

Set Destination に Extension や Ring Goups を選択した時の注意

Set Destination に設定した Extension もしくは Ring Group の Extension すべてがオフラインの場合、着信が切断されてしまいます。NTT ルーターにアナログ端末を接続していれば、Set Destination で選択した Extension や Ring Group の Destination if no answer を設定した Trunk にすることで、呼び出しを継続することができます。

Outbound Route の設定

ひかり電話で発信する時の設定をします。

  1. 左メニューの Outbound Routes をクリックします。
  2. Route Name にルート名 (任意の文字) を入力します。
  3. Route CID にひかり電話の電話番号を入力します。
  4. Dial Patterns that will use this Route にひかり電話で発信する時の発信先電話番号のパターンを入力します。
    例1: 警察や救急車など 1 で始まる3桁の番号 : 1XX
    例2: 0 で始まる10桁の日本国内の固定電話 : 0XXXXXXXXX
    例3: 0 で始まる11桁の携帯電話番号 : 0XXXXXXXXXX
  5. Trunk Sequence for Matched Routes で Trunk 設定で追加したトランク名を選択します。
  6. [Add Trunk] ボタンを押します。

すべての設定が完了したら、Apply Config をクリックして、Continue with reload をクリックします。

接続の確認

Asterisk と NTT ルーターの接続は次の項目を確認します。

  • FreePBX System Status の FreePBX Statistics にある IP Trunk Registrations と IP Trunks Online の背景が緑色になっている。
  • FreePBX の Panel タブに設定した Trunk の左側に緑色のアイコンがある。
  • NTT ルーターの内線番号一覧の登録状態が “登録済み” になっている。

投稿者: コネタねこ

上から読んでも『コネタねこ』、下から読んでも『コネタねこ』。贈り物に悩んだら、コネタねこの小ネタ帳。欲しくなっちゃうプレゼント、そんなアイデアのぞきにきてね♪

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください