You are on page 1of 11

INSTALACIN Y CONFIGURACIN DE ASTERISK PARA UTILIZAR EL

VOICEMAIL CON CISCO CALLMANAGER


Objetivo

Integrar el sistema de telefona IP Cisco CallManager con Asterisk

Configuracin en el CallManager

Lo primero es crear un Gateway H.323 / H.225 en Device => Gateway
La direccin IP 172.19.10.8pertenece al Servidor Asterisk









*Para los Device Pool, Location y Calling Search Space, se pueden utilizar los que ya tenemos
creados

A continuacin creamos los siguientes Route Patterns en Route Plan => Route Hunt => Route Pattern



Los Route Pattern (5XXX y 3XXXX) se configuran de la siguiente manera:



*En Partitionpodemos usar una particin ya existente o crear una diferente para identificar al servidor
Asterisk como es en este caso



*El Route Pattern 3XXXX se configura de igual manera

Ahora configuramos la espera de mensajes en Feature => Voice Mail => Message Waiting

Son dos nmeros: 36667 y 36668(off y on respectivamente)









Creamos el numero de Voice Mail 5999en Feature => Voice Mail => Voice Mail Pilot



Con esto concluimos por el momento la configuracin en el Call Manager, ahora veamos la instalacin y
configuracin del servidor Asterisk

Instalacin del Servidor Asterisk en Red Hat Enterprise 4 CentOS 4.3

Escoger la opcin personalizada para seleccionar los siguientes grupos de paquetes:
Editors
Web Server
MySQL Database
Development Tools
Legacy Software Development

Desmarcar todo lo demas !!!!!! ............. sin interfaz grafica

Una vez instalado el sistema operativo (recomendable sin interfaz grfica; sistema mnimo), se procede a
descargar los siguientes archivos en el directorio /usr/src
zaptel-1.2.12.tar.gz http://www.asterisk.org
asterisk-1.2.14.tar.gz http://www.asterisk.org
asterisk-sounds-1.2.1.tar.gz http://www.asterisk.org
asterisk-oh323-0.7.3.tar.gz http://www.inaccessnetworks.com/projects/asterisk-oh323
pwlib-Mimas_patch2-src-tar.gz http://www.inaccessnetworks.com/projects/asterisk-oh323/Libraries
openh323-Mimas_patch2-src-tar.gz

*Si no tenemos mucha experiencia con Linux, podemos descargar todos los paquetes en una PC con SO
Windows y luego transferirlos al servidor Asterisk de manera grfica utilizando FileZilla

http://www.sourceforge.net/projects/filezilla



una vez transferidos los archivos al directorio /usr/src/, descomprimimos todos con el comando:
tar -xzvf <archivo.tar.gz> para comenzar con la instalacin de los mismos.

Instalamos primero los drivers zaptel (necesario para el servicio meet-me ,aunque no tengamos
ninguna tarjeta Digium)
#cd /usr/src/zaptel-1.2.12

Primero editamos el archivo Makefile con el editor vi
vi Makefile

MODULES:=zaptel tor2 torisa wcusb wcfxo wctdm wctdm24xxp \
ztdynamic ztd-eth wct1xxp wcte11xp pciradio \
ztd-loc # ztdummy

debemos quitar el #de ztdummy, luego grabamos y comenzamos con la instalacin

make linux26 =>solo si utiliza el kernel 2.6 (para ver la versin de kernel ejecutar: uname a)
make install
make install-udev =>solo si utiliza el kernel 2.6
make config
modprobe zaptel
modprobe ztdummy













Instalamos Asterisk:
#cd /usr/src/asterisk-1.2.14
make
make install
make samples

Instalamos los archivos de audio:
#cd /usr/src/asterisk-sounds-1.2.1
make install

Para utilizar la Msica en espera (Music On Hold) de archivos .mp3 descargamos desde la pagina:
http://www.mpg123.de/mpg123/mpg123-0.59r.tar.gz

descomprimimos con tar xzvf mpg123-0.59r.tar.gz
#cd /usr/src/mpg123-059r
make linux
make install

crear el enlace simblico correspondiente:
ln -s /usr/local/bin/mpg123 /usr/bin/mpg123

Ahora compilamos el pwlib, openh323 y oh323 (estos procesos toman su tiempo)
#cd /usr/src/pwlib_Mimas_patch2
./configure
make
make install

#cd /usr/src/openh323_Mimas_patch2
./configure
make
make install
#cd /usr/src/asterisk-oh323-0.7.3 => antes se debe editar el archivo Makefile de la siguiente manera:

vi Makefile

PWLIBDIR=/usr/src/pwlib_Mimas_patch2
OPENH323DIR=/usr/src/openh323_Mimas_patch2
ASTERISKINCDIR=/usr/src/asterisk-1.2.14/include

Grabamos los cambios y ejecutamos:
make
make install













Ahora creamos dentro de /var/lib/asterisk/ el script vm.shde la siguiente manera:



vi vm.sh

i f [ $3 - gt 0 ] ; t hen


CALLFI LE=$( cat <<- EOF1
Channel : Local / 381$2
MaxRet r i es: 1
# Ret r y i n 2 mi n
Ret r yTi me: 120
Wai t Ti me: 45

Cont ext : def aul t
Ext ensi on: s
Pr i or i t y: 1

EOF1)

echo " $CALLFI LE" >> " / var / spool / ast er i sk/ out goi ng" / $( dat e
+%Y%mNaVI %M%S) - $1

el se

CALLFI LE=$( cat <<- EOF1
Channel : Local / 380$2
MaxRet r i es: 1
# Ret r y i n 2 mi n
Ret r yTi me: 120
Wai t Ti me: 45

Cont ext : def aul t
Ext ensi on: s
Pr i or i t y: 1

EOF1)

echo " $CALLFI LE" >> " / var / spool / ast er i sk/ out goi ng" / $( dat e
+%Y%mNaVI %M%S) - $1

f i

luego ejecutamos el comando chmod 755 vm.sh

Vamos al directorio /etc/asterisk donde editaremos los archivos sip.conf, extensions.conf, meetme.conf,
oh323.conf, rtp.conf y voicemail.conf

vi sip.conf
[ gener al ]
cont ext =def aul t
bi ndpor t =5060
bi ndaddr =0. 0. 0. 0
t os=0x18
vi deosuppor t =yes ; par a sopor t e de vi deo ( opci onal )
di sal l ow=al l
al l ow=ul aw
al l ow=gsm
l anguage=en
r t pt i meout =60





[ 5105]
user name=5105
t ype=f r i end
host =dynami c
cont ext =def aul t
secr et =passwor d
dt mf mode=r f c2833
mai l box=5105@def aul t
cal l gr oup=1
pi ckupgr oup=1
canr ei nvi t e=no
cal l er i d=user 1 <5105>

[ 5106]
user name=5106
t ype=f r i end
host =dynami c
cont ext =def aul t
secr et =passwor d
dt mf mode=r f c2833
mai l box=5106@def aul t
cal l gr oup=1
pi ckupgr oup=1
dt mf mode=r f c2833
canr ei nvi t e=no
cal l er i d=user 2 <5106>

vi extensions.conf
[ gl obal s]
EXT5574=SI P/ 5105
EXT5575=SI P/ 5106

[ def aul t ]
i ncl ude => meet me
i ncl ude => musi c- on- hol d
i ncl ude => pi ckup
i ncl ude => cal l - manager

; ext ensi ones SI P
ext en => 5105, 1, Macr o( st dext en, ${EXT5105})
ext en => 5106, 1, Macr o( st dext en, ${EXT5106})

; numer o pr evi ament e conf i gur ado en el cal l manager par a messages
ext en => 5999, 1, Answer
ext en => 5999, n, Wai t ( 1)
ext en => 5999, n, Voi ceMai l Mai n( )
ext en => 5999, n, Hangup( )

[ macr o- st dext en]
ext en => s, 1, Di al ( ${ARG1}, 20)
ext en => s, 2, Voi cemai l ( u${MACRO_EXTEN}@def aul t )
ext en => s, 3, Hangup
ext en => s, 102, Voi cemai l ( b${MACRO_EXTEN}@def aul t )
ext en => s, 103, Hangup

[ meet me]
ext en => _5555, 1, Meet Me( ${EXTEN})
ext en => _5555, 2, Got o( def aul t , s, 1)
ext en => _5555, 3, Hangup





[ musi c- on- hol d]
; ext ensi n par a pr obar el musi c- on- hol d
ext en => 5598, 1, Answer
ext en => 5598, n, Wai t ( 1)
ext en => 5598, n, Musi cOnHol d( )
ext en => 5598, n, Hangup( )

[ pi ckup]
ext en => _7XXXX, 1, Pi ckup( ${EXTEN: 1})

[ cal l - manager ]
; cr eaci n de cuent as asoci adas al cal l manager anexos 1313 y 1314
ext en => 31313, 1, Voi cemai l
ext en => 31314, 1, Voi cemai l

; como t engo ext ensi ones de 4 d gi t os en el cal l manager ( _XXXX)
ext en => _XXXX, 1, Di al ( OH323/ ${EXTEN}@<ip del callmanager>: 1720)
; en el caso de t ener un cl ust er de cal l manager , usar l a di r ecci n I P
del Publ i sher

; Par a el uso del cor r eo de voz MWI en el cal l manager
ext en => _380XXXX, 1, Set Cal l er I D( ${EXTEN: 3})
; el ( ${EXTEN: 3}) hace que se no se consi der en l os t r es pr i mer os
di gi t os ( 380)

ext en => _380XXXX, 2, Di al ( OH323/ 36667@<ip del callmanager>)
ext en => _380XXXX, 3, Answer
ext en => _380XXXX, 4, Wai t , 1
ext en => _380XXXX, 5, Hangup

ext en => _381XXXX, 1, Set Cal l er I D( ${EXTEN: 3})
ext en => _381XXXX, 2, Di al ( OH323/ 36668@<ip del callmanager>)
ext en => _381XXXX, 3, Answer
ext en => _381XXXX, 4, Wai t , 1
ext en => _381XXXX, 5, Hangup

ext en => _3XXXX, 1, NoOp
ext en => _3XXXX, 2, Mai l boxExi st s( ${EXTEN: 1}@def aul t )
ext en => _3XXXX, 3, Congest i on
ext en => _3XXXX, 103, Voi cemai l ( su${EXTEN: 1})
ext en => _3XXXX, 104, Pl ayback( vm- goodbye)
ext en => _3XXXX, 105, Hangup

vi meetme.conf
[ r ooms]
conf => 5555, 789

vi oh323.conf
[ gener al ]
l i st enAddr ess=0. 0. 0. 0
l i st enPor t =1720
t cpSt ar t =11000
t cpEnd=11999
udpSt ar t =16384
udpEnd=32767

f ast St ar t =no
h245Tunnel l i ng=no
h245i nSet up=yes





j i t t er Mi n=20
j i t t er Max=100
i pTos=l owdel ay
out boundMax=30
i nboundMax=30
si mul t aneousMax=30

wr apLi bTr aceLevel =1
l i bTr aceLevel =0
l i bTr aceFi l e=st dout

gat ekeeper =DI SABLE
user I nput Mode=RFC2833
musi conhol d=def aul t
cont ext =def aul t

gwpr ef i x= nmer o de anexo- ast er i sk 1
gwpr ef i x= nmer o de anexo- ast er i sk 2
gwpr ef i x= nmer o de anexo- ast er i sk n
al i as=Ast er i sk PBX

[ codecs]
codec=GSM0610
f r ames=4
codec=G711U
f r ames=20

vi rtp.conf
r t pst ar t =16384
r t pend=32767


vi voicemail.conf
[ gener al ]
f or mat =wav49| gsm| wav
ext er nnot i f y=/ var / l i b/ ast er i sk/ vm. sh
cont ext =def aul t

; cr eaci n de cuent as de voi cemai l con passwor d 369
1313 => 369, user A, user 1@empr esa. com, , at t ach=yes| sayci d=no| envel ope=no| del et e=no
1314 => 369, user B, user 2@empr esa. com, , at t ach=yes| sayci d=no| envel ope=no| del et e=no
; 1313 y 1314 son anexos I P exi st ent es en el Cal l Manager , l a par t e de
attach=yes es par a anexar el mensaj e de voz al cor r eo el ect r ni co.























Finalmente
Si queremos cambiar el idioma de las voces ingresamos a cd /var/lib/asterisk/ y cambiamos la carpeta
sound por otra con voces en castellano (solo renombramos la capeta anterior, ejm. sounds_en) disponible
en http://www.ip-flow.com.ar/elianna_pack.html


Ejecutamos Asterisk
#cd /etc/asterisk
asterisk vvvvc

Volvemos al Call Manager y en el anexo IP 1313en Directory Number Configuration agregamos:



En el CallManager tambin podemos seleccionar el numero de segundo que timbrara el telfono antes de
ser transferido a la casilla de voz

Para que Asterisk cargue automticamente despus de reiniciar la maquina debemos agregar las
siguientes lneas en el archivo:
#cd /etc/rc.d/
vi rc.local
asterisk vvvvc


Tambin podemos hacer que nuestros telfonos SIP / IAX de Asterisk llamen a la PSTN (Red de Telefona
Pblica) haciendo uso del Gateway del Callmanager (Router con tarjetas E1 o FXO) de la siguiente
manera:




Ahora editamos nuevamente el extensions.conf

vi extensions.conf

[ cal l - manager ]
; l l amadas a l a PSTN, l ocal es y cel ul ar es
ext en => _[ 4- 8] XXXXXX, 1, Di al ( OH323/ ${EXTEN}@<ip del gateway>: 1720)

ext en => _9XXXXXXX, 1, Di al ( OH323/ ${EXTEN}@<ip del gateway>: 1720)


Si queremos que las llamadas se registren en el CDR del CallManager, cambiamos <ip del
gateway> por <ip del callmanager>

You might also like