匿名

差分

Asterisk pjsip trunk intra

5,082 バイト追加, 2018年10月30日 (火) 17:03
池袋側
拠点間をAsteriskのSIPで接続します。拠点はIPアドレス固定でレジスタ無しで通信します。想定は以下の通り。拠点間をAsteriskのSIPで接続します=両端IPアドレス固定=拠点はIPアドレス固定でレジスタ無しで通信します。想定は以下の通り。
[池袋]---------------------------[板橋]
192.168.100.1 192.168.100.2
SIP Port=5070 SIP Port=5070
拠点番号 02 拠点番号 01
ダイヤル時のプレフィクスとして拠点番号(01,02)を使用し、相手内線に着信させる想定とします。
==池袋側==
基本:AOR,Endpointとして板橋を定義します。板橋側からの接続の認証を受け入れるためにAuthを、板橋への接続のためのOutbound_authを書きます。
[itabashi]
type = aor
contact = sip:192.168.100.2:5070
qualify_frequency = 30
authenticate_qualify = yes
[itabashi]
type = identify
endpoint = itabashi
match = 192.168.100.2
;外からの接続を受け入れるためのauth
[ikebukuro]
type = auth
auth_type = userpass
username = ikebukuro
password = ikepass
;板橋側に認証してもらうためのauth(endpointのoutbound_auth)
[itabashi]
type = auth
auth_type = userpass
username = itabashi
password = itapass
;板橋のendpointを定義
[itabashi]
type = endpoint
context = intra-incoming
disallow = all
allow = ulaw
rtp_symmetric = yes
force_rport = yes
rewrite_contact = yes
direct_media = no
send_pai = yes
inband_progress = yes
language = ja
auth = ikebukuro
outbound_auth = itabashi
aors = itabashi
[[カテゴリ:Asterisk]]
[[カテゴリ:pjsip]]
 
==板橋側==
基本的に設定は同じです。相手をendpointとして定義しAORや認証情報を書きます。
[ikebukuro]
type = aor
contact = sip:192.168.100.1:5070
qualify_frequency = 30
authenticate_qualify = yes
[ikebukuro]
type = identify
endpoint = ikebukuro
match = 192.168.100.1
[itabashi]
type = auth
auth_type = userpass
username = itabashi
password = itapass
[ikebukuro]
type = auth
auth_type = userpass
username = ikebukuro
password = ikepass
[ikebukuro]
type = endpoint
context = intra-incoming
disallow = all
allow = ulaw
rtp_symmetric = yes
force_rport = yes
rewrite_contact = yes
direct_media = no
send_pai = yes
inband_progress = yes
language = ja
auth = itabashi
outbound_auth = ikebukuro
aors = ikebukuro
 
==ダイヤルプラン==
endpointではcontext=intra-incomingに定義していますので着信側は[intra-incoming]で処理します。
===着信設定===
[intra-incoming]
exten => 201,1,Dial(PJSIP/201)
exten => 202,1,Dial(PJSIP/202)
のように書けば内線に落とせます。
===発信側===
発信側で例えば池袋からなら
exten => _01XXX,1,Dial(PJSIP/{EXTEN:2}@itabashi)
のように書くと相手拠の内線にダイヤルできます。<br>
板橋からなら
exten => _02XXX,1,Dial(PJSIP/{EXTEN:2}@ikebukuro)
のように書きます。
=片端IPアドレス固定、片端ダイナミック=
拠点はIPアドレス固定でレジスタ無しで通信します。想定は以下の通り。
 
[池袋]-----------------REGISTER->[板橋]
IP不明 192.168.100.2
SIP Port=5070
拠点番号 02 拠点番号 01
ダイヤル時のプレフィクスとして拠点番号(01,02)を使用し、相手内線に着信させる想定とします。
==池袋側==
板橋に対してREGISTERするクライアントになります。この際、ユーザ名は"ikebukuro"として認証を取ります。<BR>
『自分の』名前がikebukuroなのでikebukuroでauthを使っています。混乱しないように。
[itabashi]
type = aor
contact = sip:192.168.0.2:5070
qualify_frequency = 30
authenticate_qualify = no
[itabashi]
type = registration
transport = transport-udp
outbound_auth = ikebukuro
server_uri = sip:192.168.0.2:5070
client_uri = sip:ikebukuro@192.168.0.2
retry_interval = 60
[itabashi]
type = identify
endpoint = itabashi
match = 192.168.0.2
[ikebukuro]
type = auth
auth_type = userpass
username = ikebukuro
password = ikepass
realm = asterisk
[itabashi]
type = endpoint
context = intra-incoming
disallow = all
allow = ulaw
rtp_symmetric = yes
force_rport = yes
rewrite_contact = yes
direct_media = no
send_pai = yes
inband_progress = yes
language = ja
from_user = ikebukuro
from_domain = 192.168.0.2
auth = ikebukuro
outbound_auth = ikebukuro
aors = itabashi
from_user,from_domainを指定しないと、いろんなものが'内線@自分のIPアドレス'の形で出て行こうとするので相手先でエラーになります。
 
==板橋側==
池袋からのREGISTERを受け入れるので、基本的な考え方は電話機の接続と同じです。<br>
AORのmax_contacts = 1を指定することでREGISTER受け入れを許可します(1つだけ)
[ikebukuro]
type = aor
max_contacts = 1
qualify_frequency = 30
authenticate_qualify = no
[ikebukuro]
type = auth
auth_type = userpass
username = ikebukuro
password = ikepass
realm = asterisk
[ikebukuro]
type = endpoint
context = intra-incoming
disallow = all
allow = ulaw
rtp_symmetric = yes
force_rport = yes
rewrite_contact = yes
direct_media = no
send_pai = yes
inband_progress = yes
language = ja
auth = ikebukuro
outbound_auth = ikebukuro
aors = ikebukuro