Asterisk PJSIP
From VoIP.ms Wiki
Contents |
Asterisk (PJSIP)
pjsip.conf
[mycontext]
; Make sure to include inbound prior to outbound because the _NXXNXXXXXX handler will match the incoming call and create a loop
include => voipms-inbound
include => voipms-outbound
[voipms-outbound]
exten => _1NXXNXXXXXX,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _1NXXNXXXXXX,n,Hangup()
exten => _NXXNXXXXXX,1,Dial(PJSIP/1${EXTEN}@voipms)
exten => _NXXNXXXXXX,n,Hangup()
exten => _011.,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _011.,n,Hangup()
exten => _00.,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _00.,n,Hangup()
; inbound context example for your DID numbers, do not add the number 1 in front
[voipms-inbound]
exten => 7863643011,1,Answer() ;your DID
[transport-udp]
type = transport
protocol = udp
bind = 0.0.0.0
[voipms]
type = registration
transport = transport-udp
outbound_auth = voipms
client_uri = sip:[email protected]:5060 ; (one of our multiple servers, you can choose the one closer to your location)
server_uri = sip:atlanta.voip.ms:5060 ; (one of our multiple servers, you can choose the one closer to your location)
[voipms]
type = auth
auth_type = userpass
username = 100000 ; (Replace with your 6 digit Main SIP Account User ID or Sub Account username, i.e. 123456 or 123456_sub)
password = johnspassword ; your password
[voipms]
type = aor
contact = sip:[email protected] ; (one of our multiple servers, you can choose the one closer to your location)
[voipms]
type = endpoint
transport = transport-udp
context = mycontext
disallow = all
allow = ulaw
from_user = 100000 ; (Replace with your 6 digit Main SIP Account User ID or Sub Account username, i.e. 123456 or 123456_sub)
auth = voipms
outbound_auth = voipms
aors = voipms
; NAT parameters:
rtp_symmetric = yes
rewrite_contact = yes
send_rpid = yes
[voipms]
type = identify
endpoint = voipms
match = atlanta.voip.ms ; (one of our multiple servers, you can choose the one closer to your location)
extensions.conf
[mycontext]
; Make sure to include inbound prior to outbound because the _NXXNXXXXXX handler will match the incoming call and create a loop
include => voipms-inbound
include => voipms-outbound
[voipms-outbound]
exten => _1NXXNXXXXXX,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _1NXXNXXXXXX,n,Hangup()
exten => _NXXNXXXXXX,1,Dial(PJSIP/1${EXTEN}@voipms)
exten => _NXXNXXXXXX,n,Hangup()
exten => _011.,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _011.,n,Hangup()
exten => _00.,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _00.,n,Hangup()
; inbound context example for your DID numbers, do not add the number 1 in front
[voipms-inbound]
exten => 7863643011,1,Answer() ;your DID
Asterisk IP Auth. (PJSIP)
pjsip.conf
Note: You'll need to create a sub account to use IP Auth
[voipms] canreinvite=nonat context=mycontext host=atlanta.voip.ms (one of our multiple servers, you can choose the one closer to your location) type=peer disallow=all allow=ulaw ; allow=g729 ; uncomment if you support g729 nat=yes
extensions.conf
[mycontext]
; Make sure to include inbound prior to outbound because the _NXXNXXXXXX handler will match the incoming call and create a loop
include => voipms-inbound
include => voipms-outbound
[voipms-outbound]
exten => _1NXXNXXXXXX,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _1NXXNXXXXXX,n,Hangup()
exten => _NXXNXXXXXX,1,Dial(PJSIP/1${EXTEN}@voipms)
exten => _NXXNXXXXXX,n,Hangup()
exten => _011.,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _011.,n,Hangup()
exten => _00.,1,Dial(PJSIP/${EXTEN}@voipms)
exten => _00.,n,Hangup()
; inbound context example for your DID numbers, do not add the number 1 in front
[voipms-inbound]
exten => 7863643011,1,Answer() ;your DID