CCM Asterisk SIP Trunk

12
Asterisk Cisco CallManager Integration Why integrate Cisco CallManager and Asterisk ? Features: Asterisk provides features that CallManager by itself does not. Migration: Allow a gradual migration from a closed source PBX to open source PBX. There are two ways to accomplish this: 1. Using H.323 : In CCM Asterisk appears as a H.323 Gateway. 2. Using SIP (only in CCM 4.X+): 1. Open up the CallManager Administration web page. 2. Since a SIP trunk requires MTP, make sure you have one: 1. Service -> Media Resource -> Media Termination Point 2. Normally your CallManager server should appear there if you do an empty query 3. if not, go to the CallManager Serviceabilty web page, and activate the Cisco IP Voice Media Streaming App service 3. Select Device->Trunk from the menu. 1. Select the "Add a New Trunk" link from the upper right hand corner of the "Find and List Trunks" page.

description

CCM Asterisk SIP Trunk

Transcript of CCM Asterisk SIP Trunk

Page 1: CCM Asterisk SIP Trunk

Asterisk Cisco CallManager IntegrationWhy integrate Cisco CallManager and Asterisk?

Features: Asterisk provides features that CallManager by itself does not. Migration: Allow a gradual migration from a closed source PBX to open source PBX.

There are two ways to accomplish this:

1. Using H.323: In CCM Asterisk appears as a H.323 Gateway. 2. Using SIP (only in CCM 4.X+):

1. Open up the CallManager Administration web page. 2. Since a SIP trunk requires MTP, make sure you have one:

1. Service -> Media Resource -> Media Termination Point 2. Normally your CallManager server should appear there if you do an empty

query 3. if not, go to the CallManager Serviceabilty web page, and activate the

Cisco IP Voice Media Streaming App service 3. Select Device->Trunk from the menu.

1. Select the "Add a New Trunk" link from the upper right hand corner of the "Find and List Trunks" page.

1. Select "SIP Trunk" as the "Trunk type" and "SIP" as the "Device Protocol". Click on the "Next" button.

Page 2: CCM Asterisk SIP Trunk

1. Enter a name in the "Device Name". Valid characters are letters, numbers, dashes, dots (periods), and underscores. The device name is only used internally in Call Manager so it can be anything you want.

2. Enter a description in the "Description" field. 3. Select a device pool. 4. Enter the IP address of your Asterisk server in the "Destination Address" field. 5. Select "UDP" as the "Outgoing Transport Type". 6. Modify any other settings as needed for your ((CiscoCallManager|CallManager)

installation. 7. Click on the "Insert" button. 8. Add route patterns in CallManager that send calls to Asterisk using the SIP trunk

that you just created. 9. In sip.conf:

[callman01] type=friend context=incoming host=10.0.0.1 disallow=all allow=ulaw allow=alaw nat=no canreinvite=yes qualify=yes

[callman02] type=friend context=incoming host=10.0.0.2 disallow=all allow=ulaw allow=alaw nat=no

Page 3: CCM Asterisk SIP Trunk

canreinvite=yes qualify=yes

It is important to use "qualify" in sip.conf since Call Manager does not support registration for SIP trunks.

Here is a simple example of how to send calls to Call Manager in extensions.conf:

[macro-dialout-callmanager]

exten => s,1,ChanIsAvail(SIP/callman02&SIP/callman01) exten => s,2,Dial(${CUT(AVAILCHAN||1)}/${ARG1}) exten => s,3,Hangup

exten => s,102,Congestion

[outgoing]

exten => _XXXX,1,Macro(dialout-callmanager,${EXTEN}) exten => _9NXXXXXX,1,Macro(dialout-callmanager,${EXTEN}) exten => _91NXXNXXXXXX,1,Macro(dialout-callmanager,${EXTEN})

exten => i,1,Congestion

Cisco Call Manager Express 3.3

CCME can be configured as follows:

Configure a dial-peer pointing to your asterisk server on the CCME 3.3 router:

dial-peer voice 13 voip

extensions on asterisk destination-pattern 22..

SIP Protocol session protocol sipv2

Page 4: CCM Asterisk SIP Trunk

Asterisk Server IP session target ipv4:10.0.0.1

DTMF tones in RFC2833 for Voicemail integration dtmf-relay rtp-nte

Allowed codecs codec g711alaw

And configure asterisk exactly the same as above for Call Manager 3.2, except for voicemail to work add:

dtmfmode=rfc2833

Into your sip.conf entry.

Cisco Call Manager 6.1

It' very simitar to 4.1, but you must change the UDP protocol of sip in this menu:

System > Security Profile > SIP Trunk Security Profile

Outgoing Transport Type: UDP

Page 5: CCM Asterisk SIP Trunk

Here is the step by step guide for h323 trunk to cisco call manager. (valid for both for asterisk and trixbox)

First of all do this:

cp /etc/asterisk-1.2.8-samples/ooh323.conf /etc/asterisk amportal stop amportal start

Then apply the followings as stated.

A- Here is my working ooh323.conf file;

; Objective System's H323 Configuration example for Asterisk ; ooh323c driver configuration ; ; general section defines global parameters ; ; This is followed by profiles which can be of three types - user/peer/friend ; Name of the user profile should match with the h323id of the user device. ; For peer/friend profiles, host ip address must be provided as "dynamic" is ; not supported as of now.

Page 6: CCM Asterisk SIP Trunk

; ; Syntax for specifying a H323 device in extensions.conf is

For Registered peers/friends profiles ; OOH323/name where name is the name of the peer/friend profile. ;

For unregistered H.323 phones OOH323/ip:port OR if gk is used OOH323/alias where alias can be any H323 ; alias ; ; For dialing into another asterisk peer at a specific exten ; OOH323/exten/peer OR OOH323/exten@ip ; ; Domain name resolution is not yet supported. ; ; When a H.323 user calls into asterisk, his H323ID is matched with the profile ; name and context is determined to route the call ; ; The channel driver will register all global aliases and aliases defined in ; peer profiles with the gatekeeper, if one exists. So, that when someone ; outside our pbx (non-user) calls an extension, gatekeeper will route that ; call to our asterisk box, from where it will be routed as per dial plan.

general ;Define the asetrisk server h323 endpoint

;The port asterisk should listen for incoming H323 connections. ;Default - 1720 port=1720

;The dotted IP address asterisk should listen on for incoming H323 ;connections ;Default - tries to find out local ip address on it's own bindaddr=10.1.23.101

;This parameter indicates whether channel driver should register with ;gatekeeper as a gateway or an endpoint. ;Default - no gateway=no

;Whether asterisk should use fast-start and tunneling for H323 connections. ;Default - yes ;faststart=no ;h245tunneling=no

Page 7: CCM Asterisk SIP Trunk

;H323-ID to be used for asterisk server ;Default - Asterisk PBX h323id=ObjSysAsterisk e164=100

;CallerID to use for calls ;Default - Same as h323id callerid=asterisk

;Whether this asterisk server will use gatekeeper. ;Default - DISABLE ;gatekeeper = DISCOVER ;gatekeeper = a.b.c.d gatekeeper = DISABLE

;Location for H323 log file ;Default - /var/log/asterisk/h323_log ;logfile=/var/log/asterisk/h323_log

;Following values apply to all users/peers/friends defined below, unless ;overridden within their client definition

;Sets default context all clients will be placed in. ;Default - default context=default

;Sets rtptimeout for all clients, unless overridden ;Default - 60 seconds ;rtptimeout=60 ; Terminate call if 60 seconds of no RTP activity ; when we're not on hold rtptimeout=3 ;do not drop this below 3 nor increase much...other wise ;you will not able to call same number again for some time because ;it hangs.Now 3 seconds waiting is needed and it is acceptable.

;Type of Service ;Default - none (lowdelay, thoughput, reliability, mincost, none) ;tos=lowdelay

;amaflags = default

;The account code used by default for all clients.

Page 8: CCM Asterisk SIP Trunk

;accountcode=h3230101

;The codecs to be used for all clients.Only ulaw and gsm supported as of now. ;Default - ulaw ; ONLY ulaw, gsm, g729 and g7231 supported as of now disallow=all ;Note order of disallow/allow is important. allow=gsm allow=ulaw allow=g729 allow=g723

; dtmf mode to be used by default for all clients. Supports rfc2833, q931keypad ; h245alphanumeric, h245signal. ;Default - rfc 2833 dtmfmode=rfc2833

User/peer/friend definitions ; User config options Peer config options ; ------------------ ------------------- ; context ; disallow disallow ; allow allow ; accountcode accountcode ; amaflags amaflags ; dtmfmode dtmfmode ; rtptimeout ip ; port ; h323id ; email ; url ; e164 ; rtptimeout

;

;Define users here ;Section header is extension myuser1 type=user context=context1 disallow=all allow=gsm allow=ulaw

Page 9: CCM Asterisk SIP Trunk

mypeer1 type=peer context=context2 ip=a.b.c.d ; UPDATE with appropriate ip address port=1720 ; UPDATE with appropriate port e164=101

myfriend1 type=friend context=default ip=10.0.0.82 ; UPDATE with appropriate ip address port=1820 ; UPDATE with appropriate port disallow=all allow=ulaw e164=12345 rtptimeout=60 dtmfmode=rfc2833

B-here is the trunk configuration to cisco call manager;

Dial rules:8XXXX custom dial string:OOH323/[email protected]:1720

C-here is outbond routes

Route name:h323trunk Dial rules:8XXXX OOH323/[email protected]:1720

D-For cisco call manager

first create a h323 gateway with asterisk ip then create route patern and route to this gateway be carefull abaout regions codecs because you must allow these codecs in oh323.conf as i stated in the beginning conf file.

Brothers i recommend you update your trixbox to version 1.2.3 as described in update trixbox section in that way your addon versions will be change and you

Page 10: CCM Asterisk SIP Trunk

will have more stable h323 trunk in long term.(you will just change addon versions in the upper part.)

FOR SER & TRIXBOX INTEGRATION FOLLOW THE LINK BELOW: http://www.trixbox.org/modules/newbb/viewtopic.php?topic_id=7786&post_id=30904&order=0&viewmode=thread&pid=30735&forum=2#forumpost30904

Brothers, The addons used in trixbox 2.0 and trixbox 1.2.3 are causing the asterisk crash... saying core dumped...

here is the solution; on trixbox 1.2.3 (NOT TRIXBOX 2.0 !!!);

STEP 1:DELETE CURRENT ADDONS RPM ; rpm -qa | grep asterisk-addons

rpm -e asterisk-addons-1.2.4_1.2.12.1-1.294

STEP2:LOAD ADDONS VERSION 1.2.3

rpm -i asterisk-addons-1.2.3-1.219.i386.rpm

(i put in the link->http://n.domaindlx.com/ergenay/rpms/asterisk-addons-1.2.3-1.219.i386.rpm)(sometimes page is under load so try your chance.) (also same link on "http://www.ergenay.com" alüminyum korkuluk )

amportal stop

amportal start

then it works perfect.

on trixbox 2.0 it is NOTworking whatever you do... so STAY on 1.2.3 and DO rpm change if you are using "ooh323".