Está en la página 1de 17

Instalacin y Configuracin de Asterisk

<Moiss Silva> moy@ivsol.net


TODO:
Tipo de Propuesta: Taller - 4 Horas
Track: Aplicaciones
Resumen:
Es imortante !ue las comunicaciones sean a"iertas. #or lo tanto es imortante aoyar el soft$are li"re.
Mas a%n el soft$are li"re !ue se encarga de &acer osi"le la comunicacin. Asterisk se &a osicionado en ocos
a'os como algo mas !ue un #()* es un servidor de comunicaciones increi"lemente fle+i"le. ,urante este taller
mostraremos como configurar Asterisk ara oner en marc&a tu roio #(). E+licaremos las diferencias y el ael
!ue -uegan los distintos rotocolos !ue ueden ser utili.ados ara /oI#.
,urante esta sesin tcnica se tocar0n los siguientes untos1
2 Instalacin de Asterisk en 34567inu+ 8referentemente 3entoo 7inu+9
2 Configuracin de e+tensiones SI#: IA) 8si &ay recursos: ;a: 5nicall9
2 Configuracin de los atrones de marcado.
2 Configuracin de transferencia asistida y otros servicios 8features.conf9
2 5so de los mane-adores C,<.
2 5so aroiado de los C=,ECs
2 E-emlo de uso de diversas alicaciones 8/oicemail: MeetMe etc9
2 Cone+iones IA)>: tios de autori.acin 8<SA: lain: md?9
1. Instalacin de Asterisk ( otros pa!uetes necesarios" (1 #ora"
Asterisk es un #() 8#rivate (ranc& E+c&ange9 "asado comletamente en soft$are. @uncionalidad !ue
durante muc&o tiemo se &acia utili.ando circuitos electrnicos de conmutacin &a eme.ado a desarrollarse en
soft$are: volviendo los e!uios mas fle+i"les: configura"les y "aratos. 7a instalacin de Asterisk en 34567inu+ no
difiere muc&o de la instalacin de cual!uier otro servicio. Antes de instalarlo veremos como esta constituida la
ar!uitectura general de Asterisk. En el siguiente diagrama &e lasmado los concetos !ue considero mas imortantes
y !ue tocaremos a lo largo de este taller.
Si nuestro deseo fuera unicamente instalar Asterisk ara servicios uramente /oI#. 7a arte del diagrama
!ue involucra c&anA.a: c&anAunicall y los drivers de .atel desaarecerBan. Sin em"argo normalmente es necesario
conectarnos a redes tradicionales como la red telefnica %"lica conmutada: <C#C o #SC4 or sus siglas en ingls.
#or esta ra.n necesitamos algunas deendencias mas. 7os siguientes a!uetes son necesarios ara nuestra
instalacin.
s!lite >.+ 8 utili.aremos el sencillo mane-ador de C,< ara SD7ite9
.atelEF.>.? 8drivers ara el funcionamiento de tar-etas telefnicas #CI 9
asteriskEF.>.G.F
kia+: k&one 8o cual!uier otro ar de soft&ones SI# e IA)9
En gentoo "asta utili.ar los Huse flagsH aroiados y e-ecutar el comando Hemerge asteriskH. #ara ver las "anderas
disoni"les y cuales se encuentran &a"ilitadas e-ecuta Hemerge asterisk EvH: cual!uier "andera e+tra !ue desees
agregar o eliminar uedes &acerlo editando el arc&ivo H6etc6ortage6ackage.useH. ,eendiendo de las "anderas
gentoo decidira las deendencias adecuadas ara Asterisk y los soft&ones.
#ara instalarlo a mano: descomrime los arc&ivos .tar.g. con el comando
tar E+v.f <nom"re del arc&ivo>
#ara el caso de .atel el siguiente comando lo instalar01
make linu+>I
make install
Asterisk necesita1
make install
7a comilacin uede tomar minutos mas: minutos menos deendiendo de la velocidad de tu rocesador: o de si
comartes la comilacin utili.ando servicios como distcc. Mientras se comila: asemos a revisar los arc&ivos de
configuracin y directorios mas imortantes !ue se instalar0n.
$etc$asterisk
En este directorio se encuentran todos los arc&ivos necesarios ara configurar la gran cantidad de servicios !ue
Asterisk rovee. ComarBa muc&o tiemo revisar todos estos servicios: or lo !ue nos concentraremos en los mas
imortantes.
asterisk.conf > configuraciones generales de la u"icacin de directorios de configuraciones: mdulos
comilados: voicemails etc. En general es "uena idea no modificar estas configuraciones: salvo casos
eseciales.
cdr.conf > Configuraciones referentes al HCall ,etail <ecordH. 7os C,< son sumamente imortantes ara
las coma'ias telefnicas. Modificar datos en este arc&ivo uede reercutir en la integridad de los C,< si
no est0s seguro de lo !ue &aces. Si tu instalacin es unicamente de rue"a: o los C,< no son materia
imortante: no &ay ro"lema.
codecs.conf > A menos !ue utilices S#EE): o !uieras &acer cosas eseciales con la forma en la !ue los
codecs se comortan: es me-or no modificar este arc&ivo.
e+tconfig.conf > Arc&ivo ara maear arc&ivos de configuracin &acia ta"las en alguna "ase de datos: de
forma !ue no es necesario guardar las configuraciones en arc&ivos. Mas adelante &a"laremos un oco mas
acerca de esto.
e+tensions.conf > Cal ve. el arc&ivo mas imortante de Asterisk. En este arc&ivo se toman las decisiones de
ruteo de las llamadas. Mas adelante veremos la sinta+is de este arc&ivo y &a"laremos so"re e+tensions.ael
features.conf > Este arc&ivo es tam"in muy imortante. #ermite &a"ilitar y configurar servicios genricos
de un #() como la transferencia asistida y monitoreo de llamadas.
ia+.conf > Imortante arc&ivo ara el funcionamiento del canal c&anAia+ !ue le ermite a Asterisk
interactuar con otros disositivos IA): incluyendo otros #() Asterisk.
indications.conf > Configuraciones ara los gruos de fre!uencias a utili.ar ara la indicacion del roceso
de las llamadas. 7os defaults suelen ser suficiente.
logger.conf > Due nivel de ver"osidad de"en tener los mensa-es de log y a donde de"en ser enviados.
manager.conf > Configuracin del imortante servicio AMI 8Asterisk Manager Interface9 !ue ermite
conectarnos a un socket CC# y mane-ar el #(). ,e cierta forma se encuentra relacionado con el arc&ivo
&tt.conf: !ue rovee de una interface ara rogramar alicaciones con AJA) !ue se comuni!uen
directamente con AMI.
modules.conf > Arc&ivo sumamente imortante. ,etermina !ue mdulos ser0n cargados or Asterisk al
iniciar. Es frecuente !ue cuando se instala asterisk or rimera ve.: no arran!ue de"ido a !ue no uede
cargar un mdulo ara el !ue no tenemos soorte. Esto se soluciona comentando la lBnea del mdulo en
este arc&ivo.
si.conf > An0logo del arc&ivo ia+.conf ara el rotocolo SI#
.aata.conf > Configuracin de los canales ;a. 7as configuraciones de este arc&ivo de"en coincidir con el
&ard$are instalado y la configuracin del driver .atel. E+iste un arc&ivo muy similar a este llamado
unicall.conf: no incluido directamente con Asterisk.
$%ar$lo&$asterisk
Cuando &ay ro"lemas: este es el lugar en donde de"emos "uscar. En esta careta se encuentran los
arc&ivos de registro de las oeraciones de Asterisk. /eamos !ue arc&ivos odemos encontrar.
cdr:d" > Este arc&ivo se encuentra disoni"le si se cuenta con el C,< &andler ara la "ase de datos SD7ite.
El arc&ivo contiene la "ase de datos de los registros de las llamadas.
eventAlog > <egistro de eventos sucedidos en el #().
full > Creado con la intencion de contener todos los mensa-es de de"ug del sistema.
messages > Contiene un listado de los mensa-es de $arning: de"ug y demas niveles de logeo.
!ueueAlog > Arc&ivo utili.ado rincialmente or la alicacion aA!ueue.
$%ar$li'$asterisk
,irectorio con arc&ivos de audio: llaves <SA: scrits A3I 8Asterisk 3ate$ay Interface9: "ase de datos
astd" y arc&ivos ara el e!ue'o servidor KCC# ara AJAM 8Async&ronus Javascrit Asterisk Manager9. A!ui
veremos una descricin de cada uno de los directorios: ya !ue los arc&ivos ueden ser irrelevantes.
agiE"in6 > A!ui se contienen rogramas en C: #K#: #yt&on o cual!uier otro lengua-e con el !ue se retenda
interactuar desde Asterisk. Al final de este taller revisaremos con mas detalle A3I.
keys6 > ,irectorio !ue contiene llaves <SA ara la autenticacin de llamadas con el rotocolo IA)>
sounds6 > ,irectorio con todos los sonidos !ue ser0n utili.ados or alicaciones como #lay"ack89 y
(ackground89
mo&mL > Arc&ivos M#L ara Music=nKold
(ien: a&ora !ue la comilacin &a terminado: y &emos terminado de revisar los arc&ivos !ue fueron
instalados: odemos roceder a iniciar Asterisk. /arias distri"uciones de 34567inu+ incluyen su roia forma de
iniciar servicios. #ara gentoo1 6etc6init.d6asterisk start
Kaciendolo a ata no es tan difBcil. Iniciaremos el servicio como HrootH 8no intenten esto en casaM9.
asterisk Evvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvc
Si se e!uivocan en la cantidad de HvH vale !ueso y rovocamos Hkernel anicH: asi !ue cuentenle "ien todas
las v: 1 : ya &a"lando en serio: solo estamos usando dos ociones ara iniciarlo. 7a HvH indica F incremento en la
ver"osidad 8!ue tantos mensa-es de notificaciones se o"servan en la consola9: asi !ue mientras mas letras HvH m0s
mensa-es tenemos. 7a letra HcH nos roorciona una consola donde odemos ver mensa-es de lo !ue sucede en el
#() y odemos e-ecutar comandos de Asterisk. 7a linea de comandos en Asterisk es muy similar a "as&: asi !ue es
sencilla de usar. Si resionamos <CA(>: veremos los comandos disoni"les: y desde luego tam"in odemos
comletarlos. A&ora estrenemos nuestra linea de comandos e-ecutando1
2C7I> si s&o$ eers
Este comando nos muestra los HeersH disoni"les en el sistema. 4o revisaremos con detalle lo !ue
significa un HeerH. ,e momento digamos !ue nos muestra las e+tensiones dadas de alta en el sistema !ue &a"lan el
rotocolo SI#. E+iste un comando an0logo ara IA)>. Con esto ya tenemos un #() instalado en nuestra
comutadoraM. En la siguiente seccin veremos como &acer algo %til con l 1,
(. Patrones de marcado con)i&uracin de e*tensiones +IP$IA, (1 #ora"
#ara los imacientes iremos directo a la accin y luego las e+licaciones. A"re el arc&ivo
6etc6asterisk6e+tensions.conf con tu editor favorito 8sugiero /IM amliamente9 y escri"e1
N&elloE$orldO
e+ten P> A)):F:Ans$er89
e+ten P> A)):>:#lay"ack8&elloE$orld9
e+ten P> A)):L:Kangu89
3uarda el arc&ivo: a"re si.conf y escri"e1
NgeneralO
NgeneralO
"indortP?QIQ
"indaddr P Q.Q.Q.Q
localnet P FR>.FIS.F.Q6>T * a!ui va la direccion de la red en la !ue te encuentras
allo$Pall
defaultconte+tPunaut&ori.ed
NLLO
tyePfriend
secretPverysecure
&ostPdynamic
natPno
dtmfmodePinfo
!ualifyPyes
conte+tP&elloE$orld
@i-ate !ue el ar0metro Hconte+tH del registro NLLO de"e coincidir con el conte+to !ue agregamos en
e+tensions.conf. A&ora: como Asterisk guarda sus arc&ivos de configuracin en memoria al iniciar: los cam"ios !ue
&emos &ec&o no &an sido detectados. #ara ello nos dirigimos a la consola y escri"imos1
2C7I > si s&o$ eers
U de"e mostrarnos algo como esto1
4ame6username Kost ,yn 4at AC7 #ort Status
LL 85nsecified9 , Q 54V4=W4
Esto nos indica !ue Asterisk &a detectado el nuevo registro de e+tensin. A&ora a"re tu cliente SI# 8k&one
or e-emlo.9: en k&one de"es dirigirte a
H@ile > Identity...H
5n formulario te solicitar0 varios camos. #roorciona los siguientes1
@ull 4ame1 <tu nom"re>
5ser #art of SI# 5<71 LL
Kost #art of SI# 5<71 <la I# o nom"re de dominio de la ma!uina !ue corre Asterisk>
Aut&entication 5ser1 LL
Es osi"le !ue V#&one re!uiera de reiniciarse ara alicar los cam"ios. Al reiniciar: si se encuentra "ien
configurado: te edira el ass$ord ara el registro. El ass$ord es el camo !ue indicamos como HsecretH en la
configuracin del registro LL. #roorcionalo ara finali.ar el registro. En el momento en el !ue resiones HenterH
desus de &a"er ingresado el ass$ord: en Asterisk de"e aarecer el intento de registro: con un mensa-e indicando
si fu e+itoso: o fall 8la causa mas com%n: teclear incorrectamente el ass$ord.9.
Como usuario registrado uedes iniciar a &acer llamadas. A&ora teclea cual!uier n%mero de dos dBgitos 8II or
e-emlo9 y resiona enter. Si tienes tu tar-eta de sonido "ien configurada: o decidiste utili.ar un telfono I# en lugar
de un soft&one: de"es escuc&ar un mensa-e de una mu-er de vo. se+y diciendo1 HKello WorldH. U voil0: tenemos
nuestro rimer ruteo de llamada concretado.
Antes de continuar con un ruteo algo mas avan.ado: o"servemos como Asterisk mane-a la ar!uitectura de
sus arc&ivos de configuracin.
7os canales c&anAsi. c&anAia+ y c&anA.a 8asi como otras entidades en el sistema9 tienen acceso a su
arc&ivo de configuracin a travs de Asterisk: !uien a su ve. tiene registrado un config engine !ue se encarga de
o"tener los datos. Este config engine uede acceder a una "ase de datos 8ostgres!l: mys!l etc9 o directamente a los
arc&ivos contenidos en 6etc6asterisk. /eamos a&ora el flu-o general de una llamada generada or un SI# 5A 8SI#
5ser Agent9.
En realidad es un o!uito mas comle-o !ue lo mostrado *9 : sin em"argo ara nuestros fines es suficiente
sa"er lo !ue el diagrama muestra. #ara !ue una llamada ueda reali.arse el 5A 8user agent9 de"e estar de"idamente
registrado. En el caso de ;a el registro es imlicito uesto !ue la tar-eta #CI no udo &a"er sido instalada ni
conectada sola en la comutadora 1
5na ve. registrado el 5A: uede roceder a solicitar el inicio de una llamada enviando un n%mero. Esta
eticin es reci"ida or el mdulo corresondiente de Asterisk 8c&anA.a: c&anAsi: c&anAia+: c&anA+++9: !uien a su
ve. revisa el arc&ivo de configuracin corresondiente 8.aata.conf: si.conf: ia+.conf 9 ara autori.ar la llamada y
decidir a !ue Hconte+toH de e+tensions.conf se delegar0 el ruteo de la llamada: asB como otras configuraciones
esecBficas de como tratar la llamada y al 5A. 5na ve. delegado el ruteo al conte+to: e+tensions.conf tendr0 el
comleto control de la llamada: y es donde nosotros: como Administradores de Asterisk de"emos decidir como
rutear la llamada en "ase al n%mero marcado y cual!uier otro set de criterios !ue deseemos utili.ar. Asi !ue: la
rimer regunta !ue de"emos &acernos es !ue deseamos &acer con nuestras llamadas y !ue numeracin utili.aremos
ara &acerlo. #or e-emlo: simlificando un oco las cosas odemos decir !ue telme+ decide en sus centrales !ue
cuando reci"a un numero iniciando con QF: seguido de FQ n%meros: lo diri-ira a un ruteo nacional: detectando
osteriormente el cdigo de estado: 0rea &asta encontrar el destino final. 4osotros eme.aremos con una red mas
simle: sin involucrar otros servidores o conmutadores: asB !ue ondremos una regla simle. 7as e+tensiones
internas de nuestro sistema tendr0n dos dBgitos. Asi !ue a"rimos el arc&ivo e+tensions.conf y escri"imos1
NinternalEe+tensionsO
e+ten P> A)):F:Ans$er89
e+ten P> A)):>:,ial8SI#6XYE)CE4Z9
e+ten P> A)):L:Kangu89
7os carcteres dentro de los corc&etes indican el nom"re del conte+to. El inicio del conte+to se encuentra
-usto de"a-o de su definicin entre corc&etes: y termina al iniciar otro conte+to: o al terminar el arc&ivo. ,entro del
conte+to de"en encontrarse nuestras definiciones de ruteo 8conocidas en Asterisk como e+tensiones9: llamadas a
alicaciones: macros etc. El conte+to !ue aca"amos de definir unicamente ermite: a los disositivos configurados
ara usarlo: marcar n%meros de longitud de > dBgitos. 7a sinta+is ara las e+tensiones es1
e+ten P> <atron>: <rioridad>: <alicacin>
#atrn1 7a comrensin de los atrones es fundamental ara organi.ar correctamente nuestro sistema y &acerlo
funcionar de una forma otima y sencilla ara nuestros usuarios. Al final de este documento se encuentra en el
andice algo de teorBa !ue tuve !ue anali.ar ara desarrollar un ruteador de llamadas en #K# saltandome el
reconocimiento de atrones de Asterisk: a!ui solo veremos lo necesario ara continuar. 5n atrn de marcado en
Asterisk se comone de una serBe de n%meros y sBm"olos !ue reresentan rangos de n%meros. ,e esta forma
Asterisk decide !ue eme.ar a &acer con la llamada !ue est0 reci"iendo.
#rioridad1 =rden secuencial ara la e-ecucin de alicaciones de Asterisk so"re la llamada reci"ida.
Alicacin1 @uncionalidad !ue se desea e-ecutar so"re la llamada 8conectar con otro disositivo: reroducirle un
arc&ivo de audio: colgarla etc.9
Analicemos el conte+to NinternalEe+tensionsO. 7a rimer linea dice1
e+ten P> A)):F:Ans$er89
7o !ue indica !ue como rimer alicacin a e-ecutar ara un n%mero de dos dBgitos Asterisk e-ecutar0 la
alicacin Ans$er89. Cada alicacin se e-ecuta or un tiemo varia"le: deendiendo de o"-etivo de la alicacin. A
la alicacin Ans$er solo le toma unos milisegundos. Su o"-etivo es simle: iniciali.ar varia"les y datos imortantes
so"re la llamada. Es sumamente imortante !ue siemre utilices esta alicacin al iniciar el ruteo de una llamada. El
guin "a-o antes de las dos ) significa inicio de atrn. Es v0lido tam"in omitir el guin "a-o cuando se ondr0
como atrn un n%mero en articular: or e-emlo He+ten P> F>:F:Ans$er89H.
7a segunda lBnea del conte+to dice1
e+ten P> A)):>:,ial8SI#6XYE)CE4Z9
Esta lBnea indica !ue como segunda rioridad se e-ecutar0 la alicacin ,ial: reci"iendo como rimer
argumento la cadena HSI#6XYE)CE4ZH. 7a alicacin dial se encarga de conectar la llamada con otro unto. Sus
argumentos ueden ser comlicados: este es solo el caso m0s "0sico de conectar una llamada con otro unto. 7a
cadena dice XYE)CE4Z e+ande a ser el n%mero marcado de > dBgitos. ,e tal forma !ue si el 5A envia el n%mero
LT: la alicacin ,ial reci"e el e!uivalente a ,ial8SI#6LT9. 7o !ue rovocarBa !ue Asterisk intentara conectar la
llamada con la e+tensin LT. Si no e+isten un registro en el arc&ivo si.conf con la e+tensin LT registrada: la
alicacin ,ial iniciali.a una varia"le llamada XY,IA7SCAC5SZ con el valor HCKA454A/AI7H indicando !ue el
canal solicitado no se encuentra disoni"le. El valor de esta varia"le es frecuentemente consultado desus de las
llamadas a ,ial89 ara decidir !ue &acer con la llamada. Es frecuente tam"in !ue si CKA454A/AI7 es el valor de
la varia"le: a continuacin se e-ecute una alicacin como #lay"ack89 ara reroducit un arc&ivo de audio indicando
!ue la e+tensin no e+iste o no se encuentra disoni"le.
#or %ltimo la lBnea
e+ten P> A)):L:Kangu89
le indica a Asterisk !ue como rioridad n%mero L de"e colgar la llamada.
,e forma similar a como configuramos la e+tensin SI#: se configura la e+tensin IA). En realidad el rotocolo
IA) es me-or conocido como IA)>: ya !ue la versin F del rotocolo ya no se encuentra soortada. Sin em"argo el
arc&ivo conserva el nom"re ia+.conf. /eamos una configuracin tBica.
7a configuracin de un cliente IA) muy similar a la configuracin ara un cliente SI#. /eamos un e-emlo
de configuracin.
NgeneralO
"indortPT?IR
"indaddr P Q.Q.Q.Q
allo$Pall
defaultconte+tPunaut&ori.ed
NGFLO
tyePfriend
secretPverysecure
&ostPdynamic
conte+tP&elloE$orld
E+isten sin em"argo algunas e!ue'as diferencias en algunos ar0metros de"ido a !ue el rotocolo IA)>
es enteramente diferente al rotocolo SI#. #ara !ue el telfono SI# reviamente configurado udiera comunicarse
con esta nueva e+tensin IA) tendriamos !ue modificar el conte+to en e+tensions.conf de esta forma1
NinternalEe+tensionsO
e+ten P> A)):F:Ans$er89
e+ten P> A)):>:,ial8SI#6XYE)CE4Z9
e+ten P> A)):L:Kangu89
e+ten P> A))):F:Ans$er89
e+ten P> A))):>:,ial8IA)>6XYE)CE4Z9
e+ten P> A))):L:Kangu89
-. .aptel .apata. (1 #ora o -/ minutos0 depende de si se cuenta con tar1etas"
Al rinciio del documento mencionamos "revemente los canales ;a. 7os canales ;a son la vBa de
comunicacin entre Asterisk y el &ard$are #CI telefnico. El canal ;a se comunica directamente con el driver de
las tar-etas telefnicas #CI 8;atel9. ,e tal suerte !ue cuando en un dial lan se escri"e una lBnea como1
e+ten P> A)))))))):>:,ial8;a6F6XYE)CE4Z9
7a eticin de cone+in es asada or Asterisk &acia el mdulo c&anA.a !ue a su ve. se comunica con el
driver ara indicarle !ue &a"le con el &ard$are ara !ue la tar-eta #CI &aga su tra"a-o telefnico ara iniciar una
llamada. Esta e+licacin la odemos areciar me-or en el siguiente diagrama1
Cal ve. en el diagrama &e e+resado una e+licacin !ue uede arecer mas rofunda de lo necesario: sin
em"argo creo !ue no &ace da'o conocer como es !ue Asterisk enca-a en todo el sistema oerativo.
A&ora: tal ve. sea mas sencillo entender or !ue es necesario !ue la configuracin de .aata.conf coincida
en algunos untos con la configuracin de los drivers de .atel 86etc6.atel.conf9. En el diagrama se arecian los
mdulos de .atel mas imortantes1 @)=: @)S y EF6CF. Se encuentra fuera del o"-etivo de este documento
descri"ir a detalle cada uno de los mdulos: sin em"argo dar una descricin "reve del o"-etivo y alcances de cada
mdulo.
@)S 8@oreign E+c&ange Suscri"ers91 Mdulo caa. de generar se'ali.acin tio @)S. 7a se'ali.acin @)S
es roia de centrales telefnicas. 7os uertos @)S son a!uellos !ue roveen de tono de marcado roorcionando
un nivel de volta-e y necesariamente conectados en su otro e+tremo &acia un uerto @)=. En nuestras casas: los
uertos de los telfonos son @)= y se encuentran conectados a los sockets de la ared: !ue van a dar &acia la central
telfonica !ue rovee de se'ali.acin @)S.
@)= 8@oreign E+c&ange =ffice91 Mdulo encargad de acetar tono: enviar digitos y reci"ir llamadas.
5sualmente destinados a ser nodos finales. 7a se'ali.acin @)= es roia de los telfonos analgicos
convencionales.
A continuacin veremos una configuracin cl0sica de una tar-eta @)=.
Nc&annelsO
ec&ocancelPyes
ec&ocancel$&en"ridgedPyes
ec&otrainingPFQQ
r+gainPFS
t+gainP>
rela+dtmfPyes
signallingPf+sAks
calleridPno
usecalleridPno
restrictcidPno
t&ree$aycallingPyes
transferPyes
cancallfor$ardPyes
callreturnPyes
grouP>
immediatePyes
"usydetectPno
callrogressPno
musicon&oldPdefault
conte+tPinternalEe+tensions
c&annelPFEL
Kay una diferencia imortante 8aarte de la evidente diferencia de ar0metros9 entre el arc&ivo de
configuracin .aata.con y los arc&ivos si.conf e ia+.conf. Mientras en ia+ y si el fin de un set de ar0metros se
encuentra determinado or el inicio de otro conte+to. En .aata solo e+iste F conte+to: el conte+to Nc&annelsO. U
&acemos distincin entre ar0metros !ue ali!uen a un canal u otro en "ase al ar0metro esecial Hc&annelH. Cada
ve. !ue aarece Hc&annelH se configura el canal o rango de canales esecificado con los ar0metros !ue est0n
definidos antes. En este arc&ivo &ay un ar0metro !ue es sumamente imortante1 HsignallingH. Este ar0metro
determina !ue se'ali.acin ser0 utili.ada con el uerto de la tar-eta #CI. Esta se'ali.acin de"e ser co&erente con la
se'ali.acin declarada en el arc&ivo de configuracin del driver de la tar-eta. /eamos cual serBa la configuracin
correcta de 6etc6.atel.conf ara un arc&ivo .aata como el anterior.
f+sksPF
f+sksP>
f+sksPL
5n arc&ivo .atel con estos L ar0metros serBa suficiente. Indicando !ue se utili.ara se'ali.acin @)S ke$l
start: una variacin de la se'ali.acin @)S con suervisin ara descone+iones.
Como udimos o"servar: &ay una similitud muy imortante entre .aata.conf: ia+.conf y si.conf. Esto es:
todos contienen un ar0metro conocido como Hconte+tH !ue determina donde iniciar0 el ruteo de las eticiones de
llamada reci"idas. 7a %nica diferencia es !ue nuestro conte+to internalEe+tensions de"e ser e+tendido un oco:
de"ido a !ue a diferencia de SI# e IA): las llamadas !ue reci"amos or nuestra interface @)= no envian un n%mero
rutea"le. 7a interface @)= unicamente reci"e tono de tim"rado: indicando !ue alguien !uiere llamarnos: se suone
!ue un telfono convencional: ante tal se'al tim"rarBa y alguien lo contestarBa. Sin em"argo no conectamos un
telfono: contectamos un #(). Como #() es nuestra resonsa"ilidad rutear la llamada. Cenemos "asicamente dos
ociones1
F. Enviar la llamada directamente a una e+tensin ar"itraria
>. <eali.ar una contestacin autom0tica con una gra"acin !ue le ida a !uien llama !ue mar!ue la e+tensin
deseada.
,e momento solo o"servaremos la ocin mas simle: la F. 4uestro conte+to internalEe+tensions !uedarBa
asi1
NinternalEe+tensionsO
e+ten P> s:F:Ans$er89
e+ten P> s:>:,ial8SI#6LL9
e+ten P> s:L:Kangu89
e+ten P> A)):F:Ans$er89
e+ten P> A)):>:,ial8SI#6XYE)CE4Z9
e+ten P> A)):L:Kangu89
e+ten P> A))):F:Ans$er89
e+ten P> A))):>:,ial8IA)>6XYE)CE4Z9
e+ten P> A))):L:Kangu89
Esta ve. agregamos un atrn esecial: HsH. Este atrn esecial indica !ue cuando no e+ista un n%mero a
rutear: se eme.ar0 en ese unto. <ecaitulando. Cual!uier disositivo !ue tenga este conte+to como inicio de ruteo
tiene L osi"ilidades1
E marcar un n%mero de L dBgitos ara e+tensiones IA).
E marcar un n%mero de > dBgitos ara e+tensiones SI#.
E cuando no se reci"e n%mero se marca a la e+tensin SI# LL directamente.
4. Troncales IA,(. (1 #ora"
En el lingo de las telecomunicaciones: una troncal es una cone+in entre dos centrales telefnicas. 5n #()
es una e!ue'a central telefnica. #or lo tanto si contamos con m0s de una comutadora odemos crear un enlace
telefnico entre am"as comutadoras. En esta seccin anali.aremos como crear un enlace con una o mas centrales
telefnicas mediante el rotocolo IA)>.
#or si no lo &a"Ba mencionado: IA)> es el rotocolo nativo de Asterisk: sus siglas significan Inter Asterisk
E+c&ange. A diferencia de SI#: IA) es un rotocolo ensado directamente en /oI#: or lo !ue no necesita uertos
adicionales 8SI# necesita cone+iones adicionales <C# ara llevar la vo.: o el video9. ,ecidB incluir unicamente
troncales IA) de"ido a su simlicidad. (ien: ara eme.ar necesitamos dos comutadoras con Asterisk instalado.
7lamaremos a la rimer comutadora Hia+roviderH y a la otra Hia+clientH. 4otese !ue los nom"res son meramente
ilustrativos: no e+iste un cliente y un servidor: ni un cliente ni un rovider. En cuanto al rotocolo se refiere am"os
untos son iguales. IA)> soorta varios mtodos de autenticacin. A!ui usaremos el mtodo de llave <SA: a mi
arecer tal ve. el m0s seguro. Emecemos or configurar Hia+roviderH.
ia+.conf en Hia+roviderH
NgeneralO
ortPT?IR
"indaddrPQ.Q.Q.Q
Nia+clientO
tyePfriend
&ostPdynamic
conte+tPia+clientconte+t
aut&Prsa
inkeysPia+clientkey
notransferPyes
e+tensions.conf en Hia+roviderH
Nia+clientconte+tO
e+ten P> A)):F:Ans$er89
e+ten P> A)):>:,ial8SI#6XYE)CE4SI=4Z9
e+ten P> A)):L:Kangu89
NinternalEe+tensionsO
e+ten P> ATT)):F:Ans$er89
e+ten P> ATT)):>:,ial8IA)>6ia+rovider1Nia+roviderkeyO@ia+client.&ost.com6XYE)CE41>Z9
e+ten P> ATT)):L:Kangu89
Como odr0n ver unicamente le damos acceso a esta cone+in a marcar e+tensiones tio SI#. A&ora
configuraremos la comutadora Hia+clientH
ia+.conf en Hia+clientH
NgeneralO
ortPT?IR
"indaddrPQ.Q.Q.Q
Nia+roviderO
tyePfriend
&ostPdynamic
conte+tPia+roviderconte+t
aut&Prsa
inkeysPia+roviderkey
notransferPyes
e+tensions.conf en Hia+clientH
Nia+roviderconte+tO
e+ten P> A)):F:Ans$er89
e+ten P> A)):>:,ial8IA)>6XYE)CE4SI=4Z9
e+ten P> A)):L:Kangu89
NinternalEe+tensionsO
e+ten P> ALL)):F:Ans$er89
e+ten P> ALL)):>:,ial8IA)>6ia+client1Nia+clientkeyO@ia+rovider.&ost.com6XYE)CE41>Z9
e+ten P> ALL)):L:Kangu89
,el lado del cliente solo damos acceso a e+tensiones IA). A&ora: no &emos terminado !ueda endiente un
unto imortante. 7a generacin de las llaves <SA. #ara ello rimero analicemos lo !ue &emos &ec&o.
F. En la m0!uina ia+rovider creamos un conte+to nuevo en ia+.conf con el nom"re ia+client y en la m0!uina
ia+client creamos de igual forma un conte+to: e+ceto !ue con el nom"re ia+rovider. Estos conte+tos son las
definiciones ara darle entrada a otro disositivo a nuestro sistema telefnico. 7os otros untos imortantes dentro
de estos conte+tos son conte+t y inkeys: el rimero determina donde se iniciara el ruteo de las llamadas reci"idas or
este &ost. El otro ar0metro es el nom"re de una llave <SA %"lica con la !ue autori.aremos al &ost a entrar a
nuestro sistema. 7as llaves <SA de"en estar u"icadas en la careta 6var6li"6asterisk6keys a menos !ue algo diferente
se esecifi!ue en el arc&ivo de asterisk.conf
>. Creamos un conte+to de ruteo ara reci"ir las llamadas de nuestros &osts. En ia+rovider unicamente damos
acceso a e+tensiones SI# de > dBgitos. En ia+client damos a e+tensiones IA) de > digitos.
L. Creamos un conte+to ara oder reali.ar llamadas &acia el &ost en cuestion. 7a sinta+is ara llamar a otro &ost ia+
es1
,ial8IA)>6<usuario>1<Nllave<SAO>@<&ost>6<e+tension deseada>9
Como se uede ver: la e+tensin deseada !ue esecificamos es XYE)CE41>Z esto significa: la e+tensin marcada
originalmente: !uitandole dos dBgitos de inicio. El LL en ia+client lo de-amos constante a manera de refi-o: ero no
es enviado al ia+rovider. El TT en ia+rovider de igual forma.
5na ve. aclarado esto: rocedemos a crear nuestro ar de llaves. 5na %"lica y una rivada. #ara ello
necesitamos el rograma oenssl. En la comutadora ia+client e-ecutamos1
oenssl genrsa Eout 6var6li"6asterisk6keys6ia+clientkey.key FQ>T
oenssl rsa Ein 6var6li"6asterisk6keys6ia+clientkey.key Eu"out Eout 6var6li"6asterisk6keys6ia+clientkey.u"
En la comutadora ia+rovider e-ecutamos1
oenssl genrsa Eout 6var6li"6asterisk6keys6ia+roviderkey.key FQ>T
oenssl rsa Ein 6var6li"6asterisk6keys6ia+roviderkey.key Eu"out Eout 6var6li"6asterisk6keys6ia+roviderkey.u"
@inalmente transferimos una coia de las llaves %"licas entre los &osts. En ia+rovider1
sc 6var6li"6asterisk6keys6ia+roviderkey.u" root@ia+client.&ost.com16var6li"6asterisk6keys6
En la m0!uina ia+client1
sc 6var6li"6asterisk6keys6ia+clientkey.u" root@ia+rovider.&ost.com16var6li"6asterisk6keys6
@inalmente en asterisk e-ecutamos Hrestart $&en convenientH: con esto Asterisk leer0 las llaves al iniciar.
#ara rovar es necesario configurar un ar de e+tensiones: una en cada &ost e intentar marcar: desde ia+client
HLL))H donde )) es el n%mero de la e+tensin de dos dBgitos en ia+rovider. #ara llamar desde ia+rovider se
marca HTT))H.
2. Otr3s Aplicaciones. (posi'le tiempo so'rante indeterminado"
AJAM 8Async&ronus Javascrit Asterisk Manager9
A<A 8 Asterisk <eal Cime Arc&itecture 9
Alicaciones Misc. Meetme89: /oiceMail89: C&anSy89: diversas ociones en ,ial89: C,< 8 F &ora 9
A3I y AMI

También podría gustarte