PBXs - VoIP.ms Wiki

PBXs

From VoIP.ms Wiki

(Difference between revisions)
Jump to: navigation, search
[draft revision][quality revision]
(SIP Trunk (Username/Password Authentication): Significant improvements to the Cisco IOS section)
Line 197: Line 197:
The example below is based on IOS 15.1(3)T.  Minor adjustments may be necessary for ealier IOS revisions.
The example below is based on IOS 15.1(3)T.  Minor adjustments may be necessary for ealier IOS revisions.
Note that the dial plan shown below will allow you to dial anything and will pass those digits directly to voip.ms, but will take a few seconds to route the call unless you finish the number with a #.
Note that the dial plan shown below will allow you to dial anything and will pass those digits directly to voip.ms, but will take a few seconds to route the call unless you finish the number with a #.
-
 
+
This example uses newyork.voip.ms as a primary route and chicago.voip.ms as a backup route.  You can use whichever hosts you prefer, so long as you keep them consistent in the configuration.
  configure terminal
  configure terminal
   
   
  voice service voip
  voice service voip
 +
  ip address trusted list
 +
  ipv4 74.63.41.218        !Current IP address for newyork.voip.ms at the time of this writing.
 +
  ipv4 173.208.83.50        !Current IP address for chicago.voip.ms at the time of this writing
 +
  ip address trusted call-block cause not-in-cug
   gcid
   gcid
   clid substitute name
   clid substitute name
Line 217: Line 221:
  sip-ua
  sip-ua
   credentials username your_account password 0 your_password realm voip.ms
   credentials username your_account password 0 your_password realm voip.ms
-
   authentication username your_account password 0 your_password
+
   authentication username your_account password 0 your_password realm voip.ms
-
   registrar 1 dns:newyork.voip.ms  !Pick your preferred first server
+
   registrar 1 dns:newyork.voip.ms auth-realm voip.ms  !Pick your preferred first server
-
   registrar 2 dns:montreal.voip.ms !Pick the next best here
+
   registrar 2 dns:chicago.voip.ms auth-realm voip.ms  !Pick the next best here
   !You can configure up to 6 registrar servers for fault-tolerance
   !You can configure up to 6 registrar servers for fault-tolerance
   
   
Line 225: Line 229:
  dial-peer voice 1 voip
  dial-peer voice 1 voip
   incoming called-number 5555551...
   incoming called-number 5555551...
-
  voice-class sip asserted-id ppi
 
   no voice-class sip block 180
   no voice-class sip block 180
   no voice-class sip block 181
   no voice-class sip block 181
   no voice-class sip block 183
   no voice-class sip block 183
-
   voice-class sip pass-thru headers unsupp
+
   dtmf-relay rtp-nte
-
   voice-class sip pass-thru content unsupp
+
  no vad
-
   voice-class sip pass-thru content sdp
+
   voice-class sip bind media source-interface GigabitEthernet0/0      !Use your internet-facing interface here
-
  dtmf-relay rtp-nte
+
   voice-class sip bind control source-interface GigabitEthernet0/0    !Use your internet-facing interface here
   
   
  !This dial peer is for outgoing calls and matches anything.
  !This dial peer is for outgoing calls and matches anything.
  !Finish dialing with a # to immediately route the call.
  !Finish dialing with a # to immediately route the call.
 +
!This is the first-priority dial peer for if your first-priority registrar server is available
  dial-peer voice 2 voip
  dial-peer voice 2 voip
   destination-pattern T
   destination-pattern T
-
  voice-class sip asserted-id ppi
 
   no voice-class sip block 180
   no voice-class sip block 180
   no voice-class sip block 181
   no voice-class sip block 181
   no voice-class sip block 183
   no voice-class sip block 183
-
  voice-class sip pass-thru headers unsupp
 
-
  voice-class sip pass-thru content unsupp
 
-
  voice-class sip pass-thru content sdp
 
   dtmf-relay rtp-nte
   dtmf-relay rtp-nte
   session protocol sipv2
   session protocol sipv2
   session transport udp
   session transport udp
-
   session target sip-server  
+
   session target dns:newyork.voip.ms
 +
  no vad
 +
  codec g711ulaw
 +
  voice-class sip bind media source-interface GigabitEthernet0/0      !Use your internet-facing interface here
 +
  voice-class sip bind control source-interface GigabitEthernet0/0    !Use your internet-facing interface here
 +
  preference 1
 +
 +
!This dial peer is the same as #2, but lower preference.
 +
!This dial peer will be used for outgoing calls in case the first server is unavailable.
 +
!If ANY response (failure or success) is received from the first server, this dial peer will not be used.
 +
dial-peer voice 3 voip
 +
  destination-pattern T
 +
  no voice-class sip block 180
 +
  no voice-class sip block 181
 +
  no voice-class sip block 183
 +
  dtmf-relay rtp-nte
 +
  session protocol sipv2
 +
  session transport udp
 +
  session target dns:chicago.voip.ms
 +
  no vad
 +
  codec g711ulaw
 +
  voice-class sip bind media source-interface GigabitEthernet0/0      !Use your internet-facing interface here
 +
  voice-class sip bind control source-interface GigabitEthernet0/0    !Use your internet-facing interface here
 +
  preference 2
  end
  end
  copy run start
  copy run start

Revision as of 14:28, 14 April 2013

Contents

FreePBX / PBX in a Flash (SIP)

freepbxsiptrunk.gif

Siptrunk.png

Fill the blanks with your information, please note that the images above are just examples.
canreinvite=nonat
nat=yes
context=from-trunk
host=atlanta.voip.ms
secret=
type=peer
username=
disallow=all
allow=ulaw
; allow=g729 ; uncomment if you purchased g.729 from Digium
fromuser=
trustrpid=yes
sendrpid=yes
insecure=invite
qualify=yes
Register String:
youraccountnumber:yourpassword@atlanta.voip.ms:5060

FreePBX / PBX in a Flash (IAX2)

freepbxiax.gif

Iaxtrunk.png

Fill the blanks with your information, please note that the images above are just examples.
type=friend
username=
secret=
context=from-trunk
host=atlanta.voip.ms
disallow=all
allow=ulaw
insecure=port,invite
requirecalltoken=no
qualify=yes
Register String:
youraccountnumber:yourpassword@atlanta.voip.ms:4569
NOTE: The trunk name should be set to voipms in lowercase. Otherwise you may have issues with the incoming calls. 

If the trunk name is not specifically set to voipms, the following error may result on inbound calls: "Call rejected, CallToken Support required."

Asterisk (SIP)

sip.conf

[general]                
register => 100000:johnspassword@atlanta.voip.ms:5060

[voipms]
canreinvite=no
context=mycontext
host=atlanta.voip.ms
secret=johnspassword ;your password
type=peer
username=100000 ;your account
disallow=all
allow=ulaw
; allow=g729 ; Uncomment if you support G729
fromuser=100000 ;your account
trustrpid=yes
sendrpid=yes
insecure=invite
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(SIP/${EXTEN}@voipms)
exten => _1NXXNXXXXXX,n,Hangup()
exten => _NXXNXXXXXX,1,Dial(SIP/1${EXTEN}@voipms)
exten => _NXXNXXXXXX,n,Hangup()
exten => _011.,1,Dial(SIP/${EXTEN}@voipms)
exten => _011.,n,Hangup()
exten => _00.,1,Dial(SIP/${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. (SIP)

sip.conf

Note: You'll need to create a sub account to use IP Auth

[voipms]
canreinvite=nonat
context=mycontext
host=atlanta.voip.ms
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(SIP/${EXTEN}@voipms)
exten => _1NXXNXXXXXX,n,Hangup()
exten => _NXXNXXXXXX,1,Dial(SIP/1${EXTEN}@voipms)
exten => _NXXNXXXXXX,n,Hangup()
exten => _011.,1,Dial(SIP/${EXTEN}@voipms)
exten => _011.,n,Hangup()
exten => _00.,1,Dial(SIP/${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 (IAX2)

iax.conf

register => 100000:johnspassword@atlanta.voip.ms

[voipms]
type=friend
username=100000 ;your account
secret=johnspassword ;your password
context=mycontext
host=atlanta.voip.ms
disallow=all
allow=ulaw
; allow=g729 ; uncomment if you support it
insecure=port,invite 
requirecalltoken=no


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(IAX2/voipms/${EXTEN})
exten => _1NXXNXXXXXX,n,Hangup()
exten => _NXXNXXXXXX,1,Dial(IAX2/voipms/1${EXTEN})
exten => _NXXNXXXXXX,n,Hangup()
exten => _011.,1,Dial(IAX2/voipms/${EXTEN})
exten => _011.,n,Hangup()
exten => _00.,1,Dial(IAX2/voipms/${EXTEN})
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






Cisco IOS

SIP Trunk (Username/Password Authentication)

For the configuration below to work, you must have DNS name lookups properly configured on your router. The example below is based on IOS 15.1(3)T. Minor adjustments may be necessary for ealier IOS revisions. Note that the dial plan shown below will allow you to dial anything and will pass those digits directly to voip.ms, but will take a few seconds to route the call unless you finish the number with a #. This example uses newyork.voip.ms as a primary route and chicago.voip.ms as a backup route. You can use whichever hosts you prefer, so long as you keep them consistent in the configuration.

configure terminal

voice service voip
 ip address trusted list
  ipv4 74.63.41.218         !Current IP address for newyork.voip.ms at the time of this writing.
  ipv4 173.208.83.50        !Current IP address for chicago.voip.ms at the time of this writing
 ip address trusted call-block cause not-in-cug
 gcid
 clid substitute name
 allow-connections sip to sip
 no supplementary-service sip moved-temporarily
 no supplementary-service sip refer
 sip
  e911
  transport switch udp tcp
  asserted-id ppi
  localhost dns:dns.name.of.your.device
  midcall-signaling passthru
  no call service stop

sip-ua
 credentials username your_account password 0 your_password realm voip.ms
 authentication username your_account password 0 your_password realm voip.ms
 registrar 1 dns:newyork.voip.ms auth-realm voip.ms  !Pick your preferred first server
 registrar 2 dns:chicago.voip.ms auth-realm voip.ms  !Pick the next best here
 !You can configure up to 6 registrar servers for fault-tolerance

!This dial peer will match all incoming calls for DIDs in the range (555)555-1000 to  (555)555-1999
dial-peer voice 1 voip
 incoming called-number 5555551...
 no voice-class sip block 180
 no voice-class sip block 181
 no voice-class sip block 183
 dtmf-relay rtp-nte
 no vad
 voice-class sip bind media source-interface GigabitEthernet0/0       !Use your internet-facing interface here
 voice-class sip bind control source-interface GigabitEthernet0/0     !Use your internet-facing interface here

!This dial peer is for outgoing calls and matches anything.
!Finish dialing with a # to immediately route the call.
!This is the first-priority dial peer for if your first-priority registrar server is available
dial-peer voice 2 voip
 destination-pattern T
 no voice-class sip block 180
 no voice-class sip block 181
 no voice-class sip block 183
 dtmf-relay rtp-nte
 session protocol sipv2
 session transport udp
 session target dns:newyork.voip.ms
 no vad
 codec g711ulaw
 voice-class sip bind media source-interface GigabitEthernet0/0       !Use your internet-facing interface here
 voice-class sip bind control source-interface GigabitEthernet0/0     !Use your internet-facing interface here
 preference 1

!This dial peer is the same as #2, but lower preference.
!This dial peer will be used for outgoing calls in case the first server is unavailable.
!If ANY response (failure or success) is received from the first server, this dial peer will not be used.
dial-peer voice 3 voip
 destination-pattern T
 no voice-class sip block 180
 no voice-class sip block 181
 no voice-class sip block 183
 dtmf-relay rtp-nte
 session protocol sipv2
 session transport udp
 session target dns:chicago.voip.ms
 no vad
 codec g711ulaw
 voice-class sip bind media source-interface GigabitEthernet0/0       !Use your internet-facing interface here
 voice-class sip bind control source-interface GigabitEthernet0/0     !Use your internet-facing interface here
 preference 2
end
copy run start






Talkswitch

Talkswitch



Unlike other small business telephone systems, TalkSwitch is easy to install, saving you time and money; you can even do it yourself. And with its easily configured settings, moving employees or changing the way your phone system handles calls is a snap.

Talkswitch Configuration






Trixbox

Trixbox



trixbox Community Edition began in 2004 as the massively popular Open Source IP-PBX project named Asterisk@Home. Since then, it has grown into the world's most popular distribution of Asterisk with over 65,000 downloads per month. trixbox is known for its flexibility to satisfy the needs of custom deployments and will continue to be FREE (as in beer and freedom). Trixbox has not been maintained since June 2010. Customers should look for alternatives. Trixbox Configuration






3CX Phone System

3CX Phone System



3CX Phone System for Windows is a software-based IP PBX that replaces a proprietary hardware PBX / PABX. 3CX’s IP PBX has been developed specifically for Microsoft Windows and is based on the SIP standard – making it easier to manage and allowing you to use any SIP phone (software or hardware).

3CX Phone System Configuration






SIPfoundry

Sipfoundry-logo.png

SIPfoundry is the home of the sipXecs open source unified communications and collaboration project. If you are looking to replace your aging (IP) PBX with an all software modern communications solution that scales to mid-size and large enterprise, look no further. We are community dedicated to the development of SIP and XMPP based communications solutions. Founded in 2004 as an independent 501(3)c not-for-profit corporation based in Massachusetts, SIPfoundry is governed by an independent board of directors. SIPfoundry is open an invites all interested parties to cooperate and collaborate. While the sipXecs project is the largest active project at SIPfoundry, we are open to make available our infrastructure to other interested projects. A commercial enterprise edition of the sipXecs solution is available from eZuce with full support, software maintenance, training, indemnification, and other services.

To learn how to configure sipXecs to work with voip.ms, follow this 10 minute guide here:

http://blog.myitdepartment.net/?p=191






PBXes.org

PBXes



PBXes is a hosted PBX running like a voicemail service or an email server in a data center. Like a classical PBX it serves as the bridge between your organisation (the extensions) and the public telephone network (the trunks). Thus it optimises both your internal and external communications. As trunks any SIP providers worldwide may be used.

PBXes Configuration






Nortel/Avaya BCM 450 and BCM50 R6

Avaya BCM



Avaya BCM450 (formerly Nortel BCM 450) and the BCM50 with VOIP or SIP Trunk keycode license.

The BCM system is a popular legacy Nortel phone system that uses classic Nortel "Meridian" M and T series digital sets and their Unistim IP phones. BCM Configuration






Personal tools
Namespaces
Variants
Actions
VoIP.ms Wiki
Configuration
Guides (English)
Guides (Français)
Guías (Español)
Toolbox