Está en la página 1de 89

1

Gorka Gorrotxategi Iaki Baz - Jon Bonilla


CURSO ASTERISK
2
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX
Que es ?

Asterisk es software. Exclusivamente software.

Es software open source, desarrollado principalmente por la


empresa americana DIGIUM.

Liberado con la licencia GL.

!e e"ecuta en # estandar $ar%uitectura x&',x&'('), ppc*


ba"o G+U,Linux, -!D o Mac.!/.

!oporta todas las funcionalidades de las centralitas


tradicionales 0 muc1as m2s 3
3
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX
Esquema Conceptua
4
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Intro!ucci"n
5
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Instaaci"n
Requisitos T$cnicos !e sistema

4e%uisitos5 Dependen directamente de5

Llamadas concurrentes.

#onferencias 0 Aplicaciones comple"as simult2neas.

6ranscodifcaciones necesarias $recodificaci7n*.

rincipalmente, Asterisk re%uiere microprocesador.

!e89n Di8ium5 E%uipo Dual Intel /eon :.& G1; : Gb 4am


soporta '< llamadas concurrentes codificando con el codec
G.=>?.

Dificil determinar con exactitud, me"or apuntar alto para


poder escalar.
6
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Preparan!o a instaaci"n

4e%uisitos @ardware

6ar"etas de telefonAa

#afB

4e%uisitos !oftware

Distribuci7n G+U,Linux

1ttp5,,voipCinfo.or8
7
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Instaaci"n
Instaaci"n !e i%rer&as !epen!ientes

Asterisk necesita para su correcta compilaci7n 0


funcionamiento los si8uientes pa%uetes5

openss1Cserver5 para acceso remoto se8uro.

8cc,make5 compilador de len8ua"e # 0 1erramientas

libcCdev,libsslCdev,;lib:8Cdev,libncursesCdev,libm0s%lclientC
dev
8
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Instaaci"n
'escar(a !e c"!i(o )uente !e Asterisk *I+

Asterisk5 +9cleo $core* del sistema.

Asterisk,soun!s# Doces de calidad pre8rabadas.

Asterisk,a!!ons# !oftware adicional.

-i%pri5 LibrerAa para 8estionar enlaces 4D!I rimarios.

.apte# Interfa; del Eernel para acceder a tar"etas de


comunicaciones para lineas anal78icas o di8itales.

mIS'/ Interfa; del kernel para acceso a tar"etas 4D!I -4I

mIS'/user arte de misdn %ue se e"ecuta en userspace


9
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# A!ministraci"n B0sica
A!ministraci"n %0sica# arranque

Asterisk es un demonio %ue se e"ecuta en se8undo plano. !e


invoca con el comando FasteriskF5
sudo asterisk

Una ve; e"ecutado, nos devuelve el control de la s1ell,


1aciendo un Fdetac1F. odemos comprobar %ue se est2
e"ecutando correctamente con un listado de procesos
1abitual5
ps aux | grep asterisk
10
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# A!ministraci"n B0sica
A!ministraci"n %0sica# cone1i"n a C-I

En este punto tenemos el pro8rama Asterisk en


funcionamiento con la confi8uraci7n de ,etc,asterisk

Asterisk soporta un intBrprete de comandos $#LI5 #ommand


Line Interface*, del estilo de muc1os routers.

ara conectarse basta con e"ecutar el comando5


sudo asterisk -r
Asterisk 1.2.9.1, Copyright (C) 1999 - 2005 Digium.
ritte! "y #ark $pe!%er &markster'digium.%om(
Co!!e%ted to Asterisk 1.2.1 %urre!t)y ru!!i!g o! iro!turio! (pid * 2+5,2)
11
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# A!ministraci"n B0sica
A!ministraci"n %0sica# C-I

El intBrprete de comandos de Asterisk es bastante potente, 0


permite controlar 0 monitori;ar 8ran parte de la situaci7n de
la centralita.

!oporta el empleo de la tecla G6abuladorH, al estilo de las


consolas de U+I/,G+U Linux, por lo %ue para ver un
listado de todos los comandos disponibles, basta con
presionar varias veces la tecla.

ara ver los posibles ar8umentos de un comando o


completar un par2metro lar8o o complicado.
12
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# A!ministraci"n B0sica
A!ministraci"n %0sica# !etenci"n

Es posible reali;ar una desconexi7n del #LI de


Administraci7n con F%uitF. Asterisk continuar2 e"ecut2ndose
en se8undo plano.

ara matar al propio Asterisk desde el #LI, se puede utili;ar


el comando stop, en sus tres variantes5

stop no25 Detiene Asterisk al momento

stop 23en con4enient5 Detiene Asterisk cuando no 1a0a


car8a.

stop (race)u5# Detiene asterisk cuando no 1a0a car8a 0


de"a de aceptar peticiones de llamadas a a partir de este
momento.
13
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# A!ministraci"n B0sica
A!ministraci"n %0sica# 6er%ose

+ivel de IVerboseJ5 Este valor indica la cantidad de


mensa"es %ue se recibir2n sobre los eventos 8enerales del
sistema. #uanto m2s alto, m2s informaci7n sobre lo %ue
sucede en la centralita se recibir2.

Este nivel, se puede establecer de varias formas5

Al arrancar el demonio5
sudo asterisk ------

Al conectarse al demonio5
sudo asterisk -r--------

Desde el #LI5
C./( $et 0er"ose 10
14
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# A!ministraci"n B0sica
A!ministraci"n %0sica# 'e%u(

+ivel de IDebugJ5 Este valor indica la cantidad de mensa"es


%ue se recibir2n sobre los eventos 8enerales del sistema,
pero utili;ado normalmente para depurar problemas de
drivers o de aplicaciones.

Este nivel, se puede establecer de varias formas5

Al arrancar el demonio5
sudo asterisk dddd

Al conectarse al demonio5
sudo asterisk -rdddd

Desde el #LI5
C./( $et De"ug 10
15
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX
Conceptos 7eneraes so%re Asterisk# Terminoo(&a

Cana5 Es una conexi7n %ue conduce una llamada entrante


o saliente en el sistema Asterisk. La conexi7n puede venir o
salir 1acia telefonAa tradicional anal78ica o di8ital o Do;I.

Asterisk soporta una serie de canales, los m2s importantes5

IA/>, !I5 rotocolos Do;I

Kap5 Lineas anal78icas 0 di8itales.

misdn5 4D!I
16
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
4ed
6elef7nica
Asterisk PBX

#oncepto de canal5
6elBfono I
.perador 4D!I
: canal SIP : canal R'SI
8 ama!a# 9 canaes
17
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX
Conceptos 7eneraes so%re Asterisk# Terminoo(&a *II+

'iapan5 !e trata de la confi8uraci7n de la centralita


Asterisk %ue indica el itinerario %ue si8ue una llamada desde
%ue entra o sale del sistema 1asta %ue lle8a a su punto final.
!e trata en lineas 8enerales del comportamiento l78ico de la
centralita.
18
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX
Conceptos 7eneraes so%re Asterisk# Terminoo(&a *III+

E1tension5 En telefonAa tradicional, las extensiones se


asocian con telBfonos, interfaces o men9s. En Asterisk, una
extensi7n es una lista de comandos a e"ecutar.

Las extensiones se acceden cuando5

!e recibe una llamada entrante por un canal dado.

El usuario %ue 1a llamado marca la extensi7n.

!e e"ecuta un salto de extensiones desde el Dialplan de


Asterisk.
19
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX
Conceptos 7eneraes so%re Asterisk# Terminoo(&a *I6+

Conte1to $#ontext*5 El Dialplan o l78ica de comportamiento


de Asterisk se divide en uno o varios contextos. Un contexto es
una colecci7n de extensiones.

Los contextos existen para poder diferenciar el Flu8arF donde se


encuentra una llamada, para5

Aplicar polAticas de se8uridad5 Asterisk no se comporta i8ual


cuando llama un usuario 0 marca el : 0 cuando un usuario
local marca el mismo :.

Men9s 0 submenus diferenciados.

En 8eneral, es una forma de diferenciaci7n.


20
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX
Conceptos 7eneraes so%re Asterisk# Terminoo(&a *6+

Apicaci"n $Application*5 Asterisk e"ecuta secuencialmente


los comandos asociados a cada extensi7n. Esos comandos
son realmente aplicaciones %ue controlan el
comportamiento de la llamada 0 del sistema en sA. Al8unos
e"emplos5

@an8up5 #ol8ar la llamada.

Monitor5 #omen;ar la 8rabaci7n a disco de la llamada.

Dial5 4eali;a una llamada saliente.

Goto5 !alta a otra extensi7n o contexto.

la0-ack5 4eproduce un fic1ero de sonido.


21
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Intro: a a con)i(uraci"n
Con)i(uraci"n !e Asterisk

Asterisk puede confi8urarse desde varios puntos, los m2s


importantes son5

are desde el propio #LI

Desde los fic1eros de confi8uraci7n $.conf* en ,etc,asterisk

La confi8uraci7n se car8a al iniciar Asterisk, por lo %ue para


aplicar cual%uier cambio ser2 necesario recar8arla, para ello
basta con e"ecutar el comando core reload en el cli5
p"uxu"u!tu012C./(%ore re)oad
22
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Con)i(uraci"n Simpe#

misdn.conf

;apata.conf

sip:con)

e1tensions:con)

iax.conf

features.conf

voicemail.conf

meetme.conf

%ueues.conf

...
23
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6o; so%re IP
Con)i(uraci"n para canaes !e 6o; IP# SIP e IAX9

Los fic1eros a manipular son sip.conf e iax.conf, la


instalaci7n crea fic1eros de e"emplo con la sintaxis bastante
comentada a modo de 8uAa.
SIP:CO/<

En este fic1ero se definen5

Dariables 8enerales de !I.

#lientes !I.

!ervidores !I.
24
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6o; so%re IP
SIP:CO/<# Secci"n 7enera

En primer lu8ar existe la secci7n L8eneralM, donde se definen


variables 8lobales 0 aspectos por defecto para todos los
canales !I.

La s0ntaxis es la si8uiente5
3ge!era)4
-aria")e1*-a)or1
-aria")e2*-a)or2
25
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6o; so%re IP
SIP:CO/<# Secci"n 7enera

Las variables 8enerales m2s importantes son5

ao2 5 !isao25 indican los codecs permitidos , no


permitidos.

!tm)mo!e5 permite especificar el mBtodo por el cual se


enviaran los tonos $di8itos pulsados durante la conversaci7n*,
valores posibles5

nat5 Informa a Asterisk del tipo de +A6 en el %ue se


encuentra.

e1ternip5 Direcci7n 9blica tras el +A6.

conte1t5 #ontexto por defecto donde entraran las llamadas


entrantes por !I.

port5 uerto en el %ue escuc1ar $N<'< *.


26
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6o; so%re IP
SIP:CO/<# Cientes 5 Ser4i!ores

En sip.conf se definen tanto los clientes %ue se conectar2n a


Asterisk, como los proveedores %ue se utili;aran para
encaminar llamadas. #onceptualmente, se distin8uen

user5 Envia llamadas a Asterisk

peer5 4ecibe llamadas de Asterisk $proveedor*.

friend5 4ecibe 0 EnvAa llamadas $usuario*.

La s0ntaxis para definir un friend o un peer es5


3!om"re4
type * 5rie!d 6 peer
-aria")e * -a)or
-iara")e2 * -a)or
....
27
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6o; so%re IP
SIP:CO/<# Cientes 5 Ser4i!ores

Las variables m2s importantes %ue deben ser confi8uradas


inicialmente son5

t0pe5 peer , friend

context5 #ontexto donde entraran las llamadas 8eneradas.

nat5 Indica si el usuario o peer se encuentran tras un nat.

1ost5 I remota o d0namic.

username5 nombre de usuario.

secret5 contraseOa de acceso.

allow 0 disallow5 #onfi8uraciones de codecs especAficas para


cada friend,peer.

%ualif05 Eval9a el estado del extremo !I para conocer su


accesibilidad 0 latencia.
28
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6o; so%re IP
SIP:CO/<# E=empo> !ecaran!o cientes#

Damos a declarar de forma b2sica dos clientes en el fic1ero


sip.conf5
37o!4
type * 5rie!d
se%ret * 7o!
disa))o8*a))
a))o8 * g,29
a))o8 * gsm
host*dy!ami%
3)eire4
type * 5rie!d
se%ret * )eire
a))o8 * a))
host*dy!ami%
29
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6o; so%re IP
SIP:CO/<# E=empo> !ecaran!o peers#

Damos a confi8urar un proveedor en sip.conf5


3sare!et4
type*peer
host * 10.11.119.200
disa))o8 * a))
a))o8 * g,29
a))o8 * gsm
5romuser* 100
se%ret*ghost
30
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6o; so%re IP
SIP:CO/<# 6eri)icaci"n !e a con)i(uraci"n con e C-I

Mediante el comando core reload en el #LI de Asterisk, le


indicamos %ue recar8ue la confi8uraci7n. Aun%ue es posible
recar8ar de forma independiente5 #LIH sip reload

Una ve; recar8ada, podemos comprobar los IfriendsJ %ue


1emos definido con el comando5 sip s1ow users

ara ver los IpeersJ definidos5 sip s1ow peers


31
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 'iapan
Intro!ucci"n a 'iapan

@asta el momento conocemos como confi8urar usuarios del


sistema Asterisk 0 proveedores externos.

ero5 P Que sucede cuando un usuario marca un


determinado n9mero R P #omo podemos llamar utili;ando
al8uno de los proveedores confi8urados R

La respuesta a esta 0 muc1as m2s pre8unas es5 el Dialplan.


Es el cora;7n del comportamiento de Asterisk, en Bl se
confi8ura toda la l78ica.

32
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 'iapan
Intro!ucci"n a 'iapan *II+

En len8ua"e natural, un e"emplo mu0 sencillo podrAa ser el


si8uiente5

#uando un usuario marca un n9mero5

!i el n9mero empie;a por <, llamar al destino utili;ando un


proveedor externo.

!i el n9mero tiene S cifras 0 empie;a por :, llamar a un


determinado usuario de la centralita.

!i cuando llamamos a ese usuario, no co8e en '< se8undos,


reproducir un mensa"e de alerta.

En situaciones normales, el dialplan se puede complicar


considerablemente..

33
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 'iapan
Arquitectura !e !iapan

El dialplan se define en extensions.conf, su IformaJ 8enBrica


se aseme"a a este es%uema5

34
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 'iapan
<u=o en e !iapan# E=empo simpi)ica!o

#ontexto Idesde oficinaJ

Extensi7n :<<, rioridad :, Aplicaci7n5 4eproducir #anci7n

Extensi7n :<<, rioridad >, Aplicaci7n5 Llamar a Ton

Extensi7n :<<, rioridad S, Aplicaci7n5 #ol8ar



35
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 'iapan
<u=o en e !iapan# E=empo simpi)ica!o apica!o

La sintaxis en extensions.conf correspondiente serAa5


3desde-o5i%i!a4
exte! *( 100,1,:)ay;a%k(the"eat)es)
exte! *( 100,2,Dia)($/:67o!)

U al declarar el friend se 1ace necesario especificar el


contexto5
3usuario14
type*5rie!d
....
%o!text*desde-o5i%i!a

36
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 'iapan
<u=o en e !iapan# E=empo simpi)ica!o apica!o *II+

La prioridad InJ, es e%uivalente a sumar uno a la prioridad


anterior. Esto permite editar 0 modificar r2pidamente el
Diallan.

La sintaxis en extensions.conf e%uivalente serAa5


3desde-o5i%i!a4
exte! *( 100,1,:)ay;a%k(the"eat)es)
exte! *( 100,!,Dia)($/:67o!)

37
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaciones en e !iapan
Apicaciones en e !iapan

ara obtener un listado de las aplicaciones disponibles,


desde el #LI se puede e"ecutar5 core s1ow applications

ara obtener una descripci7n de una determinada


aplicaci7n5 core s1ow application nombre

38
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaciones en e !iapan
Apicaciones en e !iapan# Apicaciones 7eneraes

Las aplicaciones 8enerales m2s importantes son5

Vait $n*

Espera n se8undos, i8norando los dA8itos marcados durante.

VaitExten $n*

Espera n se8undos, pero 8estionando los dA8itos marcados.

VaitMusic.n@old$n*

4eproduce m9sica en espera durante n se8undos.



39
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaciones en e !iapan
Apicaciones en e !iapan# 7esti"n !e ama!as

Los comandos de 8esti7n de llamadas m2s importantes5

Answer$*

Acepta la llamada entrante por el canal.

-us0$*

EnvAa la seOal de ocupado al ori8en.

@an8up$*

#uel8a la llamada.

4in8in8$*

EnvAa la seOal de tono de llamada.

Dial $ tipo,identificador,timeout,opciones,url *

Aplicaci7n para llamar $ver m2s adelante*.



40
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaciones en e !iapan
Apicaciones en e !iapan# Contro !e <u=o

Al8unos comandos de control de flu"o 0 tempori;aci7n5

Goto $contexto, extension, prioridad*

!alta al contexto, extensi7n 0 prioridad del ar8umento.

GotoIf $ condicion R prioridad: 5 prioridad> *

!alta a la prioridad: si la condici7n se cumple.

!alta a la prioridad> si la condici7n no se cumple.

GotoIf6ime$GtimesHWGweekda0sHWGmda0sHW
Gmont1sHRLLcontextWMextenWMpriorit0*

41
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaciones en e !iapan
Apicaciones en e !iapan# Repro!ucci"n !e soni!os

Al8unas aplicaciones para la reproducci7n5

la0-ack $fic1ero *

4eproduce el fic1ero, continua la e"ecuci7n cuando finali;a.

-ack8round $fic1ero*

4eproduce el fic1ero, pero continua la e"ecuci7n


inmediatamente.

!a0Di8its $ dA8itos*

4eproduce los dA8itos.



42
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaci"n 'ia
Apicaci"n 'ia

La aplicaci7n Dial reali;a una llamada a un determinado


destino, si el destino acepta la llamada, Asterisk FuneF el
ori8en primario de la llamada con este nuevo interlocutor.

+o importa la tecnolo8Aa o protocolos utili;ados5 Un canal


entrante por 4D!I puede finali;ar en una llamada por I, un
usuario !I puede llamar a otro usuario IA/.

6elBfono I
8: Llamada a
extensi7n ><S
9: Llamada a
destino
6elBfono I
Extensi7n ><S
?: Llamada establecida
43
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaci"n 'ia
Apicaci"n 'ia *II+

La sintaxis 8enBrica del comando es5


Dia) ( <e%!o)og=a 6 ide!ti5i%ador | timeout | op%io!es | >?. )

!iendo5

6ecnolo8Aa5 !I,IA/>, KA, MI!D+, ...

Identificador5 Es el destino $n9mero o nombre* %ue se


llamar2 por el canal. La sintaxis depende del canal.

6imeout5 6iempo m2ximo de espera.

.pciones

U4L5 EnvAa una U4L al destino, si lo soporta.



44
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaci"n 'ia
Apicaci"n 'ia *III+

Al8unas de las posibles opciones5

t5 permite %ue la llamada sea transferida por el destino.

65 permite %ue la llamada sea transferida por el ori8en.

m5 reproduce m9sica en espera mientras el destino acepta la


llamada.

45
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Apicaci"n 'ia
Apicaci"n 'ia *I6+

Identificadores en base a tecnolo8Aa5

!I

usuario o extensi7n destino 5 llamada directa

usuario o extensi7n destino X peer

E"emplos5 Dial$!I,><>* , Dial$!I,><:W:<<Wt*,


Dial $!I,?))):'<>)Xproveedor*

IA/>

peer , numero destino

E"emplo5 Dial $IA/>,peerdestino,?<>:>S:>S*


46
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# @ane=o !e E1tensiones
@ane=o !e E1tensiones

La s0ntaxis 8eneral en el dialplan es5


exte! *( @A<@B$/CB, :?/C?/DAD, Ap)i%a%iD!

En el caso de llamadas internas o funcionamiento simple, las


extensiones son conocidas.

Pero %ue pasa cuando un usuario llama a un n9mero %ue


no se preCconoce R

!oluci7n5 Utili;ar patrones en las extensiones.



47
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# @ane=o !e E1tensiones
@ane=o !e E1tensiones# Patrones !e Coinci!encia

ara indicar patrones, se utili;a el car2cter5 I(J

!e pueden utili;ar5

/5 Indica un dA8ito del < al ?

K5 Indica un dA8ito del : al ?

+5 Indica un dA8ito del > al ?

L:>?M Indica el :, > o ?

. Indica uno o m2s caracteres $YAtenci7n3 #oincide


con las extensiones especiales5 1,i,t .., recomendable5 (/.*

E"emplos5

Zi"os +acionales5 exte!*( E9AAAAAAAA

Internacionales5 exte!*( E00.



48
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6aria%es
6aria%es

En el Dialplan de Asterisk existen variables, %ue pueden ser


modificadas por el propio Asterisk en su e"ecuci7n l78ica o
por comandos expresos del Dialplan.

Las aplicaciones pueden cambiar variables.

Los tipos de variables son5

Globales5 Declaradas en extensions.conf $o por comando*.

#anal5 !on propias a cada canal.

Entorno5 Dariables de entorno $U+I/ Like*.

La sintaxis de una variable es5


FG-aria")eH

49
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6aria%es
@ane=o !e 6aria%es

Asi8naci7n de variables5

!etDar$Dariable[valor*

!etGlobalDar$Dariable[valor*

Mane"o de cadenas5

!ubcadenas5 \]Dariable 5 offset 5 lon8itud ^

Devuelve la subcadena de variable %ue comien;a en offset 0


con la lon8itud especificada.

E"emplo5 \] :>S)N'=&?5>5S^ devuelve S)N

Lon8itud5 \]LE+$Dariable*^

#oncatenaci7n5 \]Dariable:^\]Dariable>^

50
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# 6aria%es
6aria%es !e cana !e)ini!as autom0ticamente

Listado de variables m2s importantes5

\]#ALLE4ID^5 #aller ID actual, nombre 0 n9mero.

\]#.+6E/6^5 #ontexto actual.

\]E/6E+^5 Extensi7n actual.

\]#@A++EL^5 #anal actual.

\]DIAL!6A6U!^5 Estado de la llamada5 unavailable,


con8estion, bus0, noanswer, answer, cancel, 1an8up.

\]DA6E6IME^5 @ora actual.

Un comando 9til para ver el contenido es +o.p5

+o.p $ \]DA4IA-LE^ *

+os mostar2 en el #LI el valor.



51
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# E1presiones
S5nta1is !e as E1presiones

Es posible utili;ar expresiones en las llamadas a aplicaciones


$principalmente5 GotoIf*

!0ntaxis5
$[expr1 operador expr2]

.peradores L78icos5 W$or* , _$A+D*

.peradores de #omparaci7n5 [, 3[, G, H, G[, H[

.peradores AritmBticos5 `, C, a, ,, b

L...M , E"emplos5
exten => 1,1,SetVar(total=$[1 + 1])
exten => 1,2,GotoIf($[${CALLERID}=123456]?10:20)

52
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
E=empo I
LusuariosM
exten [H S<<,:,+o.p$Llamada a la secretaria*
exten [H S<<,n,Dial$!I,S<<,:<,t*
exten [H (S//,:,Dial$!I,\]E/6E+^,:<*
LsuperusuariosM
include [H usuarios
exten [H (?////////,:,Dial$Kap,:,\]E/6E+^,><,m*
exten [H ('//.,:,Dial$misdn,85:,\]E/6E+^*
53
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Ariketo
Aote E(3ost *I+
C 4ecepci7n
C #ocina
C 4eservas
Extensi7n N<< permite 1ablar con recepci7n
Extensi7n N<: permite 1ablar con cocina
Extensi7n N<> permite 1ablar con reservas s7lo los laborables
de ? a :) 0 de :' a ><. En caso contrario reproduce un
mensa"e de disculpa 0 cuel8a.
54
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Ariketo I
!I.#.+Z
LrecepcionM cme"or LN<<M
t0pe[friend
1ost[d0namic
disallow[all
allow[alaw
secret[ironsecret
context[serviciosC1otel
callerid[4ecepcion
%ualif0[0es
canreinvite[0es
55
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Ariketo I
E/6E+!I.+!.#.+Z
LserviciosC1otelM
exten [H N<<,:,Dial$!I,recepcion,><,t*
exten [H N<:,:,Dial$!I,N<:,><,tm*
exten [H N<>,:,GotoIf6ime$?5<<C:)5<<WmonCfriWaWaRon,:*
exten [H N<>,n,GotoIf6ime$:'C><5<<WmonCfriWaWaRon,:*
exten [H N<>,n,la0back$locuciones,cerradoCseCsiente*
exten [H on,:,+o.p$Llamada de \]#ALLE4ID^ a 4eservas*
exten [H on,n,Dial$!I,reservas,,m*
56
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Ariketo II
Aote E(3ost II
Al 1otel le ponen por fin las lAneas rdsi 0 se le asi8nan dos
identificadores $DID*5 ?) ))) :>S) _ ?) ))) :>SN. !e %uiere
reservar el primer DID para recepci7n 0 el se8undo DID se
usar2 para el fax.
+ota5 El rdsi tambiBn pertenece a un contexto %ue se supone
confi8urado en misdn.conf
57
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
LrdsiCentrantesM
exten [H ?)))):>S),:,+o.$Llamada entrante por la rdsi*
exten [H ?)))):>S),n,Dial$!I,N<<,><,t*
exten [H ?)))):>S),n,Doicemail$:<<<*
exten [H ?)))):>SN,:,+o.p$Zax entrante*
exten [H ?)))):>SN,n,Dial$IA/>,&<<*
LserviciosC1otelM
...
58
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Ariketo III
@otel E81ost III
Queremos %ue los %ue llaman desde fuera puedan acceder tanto
a recepci7n como a reservas. #omo s7lo disponemos de un DID,
1a0 %ue 1acer un ID4 para %ue el llamante pueda ele8ir con
%uiBn contactar5
+ota5 Aplicaci7n VaitExten$n*
59
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Ariketo III
LrdsiCentrantesM
exten [H ?)))):>S),:,+o.$Llamada entrante por la rdsi*
exten [H ?)))):>S),n,-ack8round$locuciones,bienvenido*
exten [H ?)))):>S),n,VaitExten$)*
exten [H :,:,Dial$!I,N<<,><,t*
exten [H :,n,Doicemail$:<<<*
exten [H >,:,GotoIf6ime$?5<<C:)5<<WmonCfriWaWaRserviciosC
1otel,on,:*
exten [H >,n,GotoIf6ime$:'C><5<<WmonCfriWaWaRserviciosC
1otel,on,:*
exten [H >,n,Doicemail $:<<:*
exten [H t,:,Goto$:,:*
exten [H i,:,Goto$:,:*
60
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Tee)on&a Tra!iciona
Asterisk 5 a Tee)on&a Tra!iciona

ara poder interCoperar con la telefonAa tradicional, Asterisk


necesita 1ardware especAfico.

El principal sponsor 0 desarrollador de Asterisk5 DIGIUM es


el principal fabricante de 1ardware.

61
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Tee)on&a Tra!iciona
Asterisk 5 a Tee)on&a Tra!iciona

ara operar con lineas anal78icas, se necesitan tar"etas con


interfaces Z/.

E"emplo5 Di8ium 6DM<:-

ara operar con telBfonos anal78icos o centralitas cl2sicas,


se re%uieren interfaces Z/!

E"emplo5 Di8ium 6DM:<-

En ambos casos, el driver a utili;ar es ;aptel, la


confi8uraci7n se almacena en ,etc,;aptel.conf

62
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Tee)on&a Tra!iciona
Asterisk 5 a Tee)on&a Tra!iciona *II+

En lineas di8itales $4D!I*, en Europa existen dos tipos5

-4I 5 Acceso b2sico, proporciona > canales de vo;.

4I5 Acceso primario, proporciona S< canales de Do; $E:*.

Asterisk soporta perfectamente ambos tipos de lineas


di8itales, con 1ardware especAfico5

ara primarios, Di8ium proporciona tar"etas de 1asta )


puertos, siendo ;aptel el driver a utili;ar.

ara primarios, Di8ium proporciona tar"etas de 1asta )


puertos, siendo mI!D+ el driver a utili;ar.

63
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Tee)on&a Tra!iciona
Asterisk 5 a Tee)on&a Tra!iciona# -ineas ana"(icas

ara operar con las tar"etas con interfaces Z/! , Z/.,


Asterisk utili;a el subsistema Kaptel5 Kapata 6elep1on0

Es necesario descar8ar e instalar el pa%uete, est2 disponible


en e) 5tp de Digium

Una ve; instalado el sistema ;aptel, es necesario


confi8urarlo en ,etc,;aptel.conf

Definir ;onas $para frecuencias de tonos*

Definir interfaces en los canales5 Z/! , Z/.

!e puede verificar la confi8uraci7n correcta con el comando


instalado5 It%5g --

64
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Tee)on&a Tra!iciona
Asterisk 5 a Tee)on&a Tra!iciona# -ineas ana"(icas II

Asterisk utili;a los m7dulos provistos por ;aptel para acceder


al 1ardware.

Este enlace se confi8ura en5 ,etc,asterisk,;apata.conf

Aspectos importantes a confi8urar5

#ontext5 contexto donde iran las llamadas 8eneradas por


cada canal.

ec1o cancel5 cancelaci7n de ec1o $problema importante en


telefonAa*.

ara utili;ar correctamente las lineas espaOolas son


necesarios los si8uientes par2metros $0a no es necesario
parc1ear asterisk*5
a!s8ero!po)aritys8it%h*yes
ha!gupo!po)aritys8it%h*yes

65
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita

6oda la secuencia 0 pro8ramaci7n del dialplan es el


verdadero n9cleo del sistema centralita, si bien, las
si8uientes funcionalidades se confi8uran en features.conf5

6ransferencias de llamadas5 transferencia de llamadas entre


diversos usuarios, independientemente de la tecnolo8Aa %ue
usen.

#all arkin85 arkin8 de llamadas.

#all ickup5 AutoCtransferencia de un telBfono %ue estB


sonando.

66
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# Trans)erencias

En caso de !I e IA/>5 La transferencia puede ser nativa. El


usuario !I es el dueOo de su llamada3

En features.conf se especifica5

blindxfer [H secuencia

ermite reali;ar una transferencia de llamada a cie8as


marcando la secuencia.

atxfer [H secuencia

ermite reali;ar una transferencia de llamada atendida. El


ori8en es puesto en espera, mientras el destino se comunica
con el nuevo destino para anunciarle la lllamada. !i el nuevo
destino cuel8a, la llamada no se transfiere.

pickupexten [H secuencia

Especifica como co8er una llamada del


call8roup.

67
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# Trans)erencias *II+

ara poder reali;ar transferencias vAa -/, Asterisk debe


estar a la escuc1a de los tonos confi8urados, para ello5

La aplicaci7n Dial debe 1aber recibido como par2metro FtF


para permitir transferencia en destino o F6F para 1acerlo en
ori8en $o ambas*.

En el caso de !I, los D6MZ pueden ser enviados de varias


formas $4Z#>&SS,out of band, !I Info,inband*, Asterisk
debe saber como los enviar2 el cliente !I.

E"emplo de llamada Dial5


exte! *( 100, 1, BoCp())ama!do a :eio)
exte! *( 100, !, Dia) ( $/:6peio|10|t)

68
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# @Bsica en Espera
Asterisk puede poner un canal dado en espera $F@.LDF*,
principalmente en las si8uientes situaciones5

Durante una transferencia.

Durante una llamada si se 1a especificado el par2metro FmF,


%ue indica %ue no se oir2 tono de llamada sino m9sica en
espera.

Durante una espera en el parkin8.

!i la aplicaci7n Music.n@old o VaitMusic.n@old 1a sido


llamada desde el Diallan

!i el destino de la llamada 1a solicitado explAcitamente %ue


la llamada sea puesta en espera

Es posible tener distintos tipos de m9sica en espera.

La m9sica en espera se confi8ura en


musiconhold.conf

69
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# CaParkin( *I+

El callparkin8 es una funcionalidad %ue permite transferir la


llamada a un Fparkin8F virtual. udiendo col8ar sin %ue la
llamada ori8en sea desconectada de Asterisk, 0a %ue se
encontrar2 apacarcada,

ara operar, el usuario transfiere la llamada a una extensi7n


especial $parkext en features.conf*, Asterisk aparca la
llamada 0 anuncia la posici7n en el parkin8.

#ual%uier usuario %ue ten8a incluido en su contexto el


contexto especial FparkedcallsF puede recuperar la llamada
aparcada llamando directamente a su posici7n en el
parkin8.

70
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# CaParkin( *II+
8+ A 0 - est2n en conversaci7n.
9+ A transfiera al =<< 0 FaparcaF a - en el arkin8 =<:.
A -
A
?: Est2s aparcado
M9sica en espera
-
8: Llamar =<<

9: Anuncio de a5
- aparcado en =<:
71
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# CaParkin( *III+
?+ Desde otro telBfono # se puede reco8er a - del arkin8
marcando el =<:.
C+ # 0 - est2n en conversaci7n.
#
8: Llamar =<:
# -
72
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# CaPickup

F#allpickupF es el 1ec1o de poder descol8ar 0 responder a la


llamada entrante a un telBfono o 8rupo de telBfonos
determinado desde un tercer telBfono %ue no est2 sonando.

La confi8uraci7n de los c7di8os D6MZ para F#allpickupF se


confi8ura en features.conf

!e definen dos conceptos5

call8roup5 6oda llamada %ue entra a una extensi7n


determinada pertenece al,los call8roups de la extensi7n.

pickup8roup5 Es el,los call8roups de llamadas entrantes %ue


el usuario puede 1acer FpickupF.

En cada usuario de la centralita se define esos dos


par2metros.

73
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# Coas !e ama!as

Una llamada entrante puede ser enviada a una cola de


llamadas, %ue ser2 8estionada por determinados usuarios.

!e utili;an muc1o en entornos tipo FcallcenterF, con los


canales tipo de A8entes $%ue 1acen Flo8in en el sistemaF*.

Las colas pueden comportarse de forma distinta5

!uena todos los telBfonos 1asta %ue al8uno descuel8ue.

Los telBfonos van sonando en orden

...

Existen colas con prioridad.

Las colas de llamadas se confi8uran en %ueues.conf5



74
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# I6R

I6R5 Interactive Doice 4esponse

El modo de funcionamiento es bastante sencillo5

Al 1acer una llamada a la aplicaci7n VaitExten, Asterisk se


%ueda a la espera de %ue el usuario mar%ue una extensi7n.

En caso de timeout $el usuario no marca nada en el tiempo


especificado*, Asterisk salta a la extensi7n FtF si existe.

En caso contrario, Asterisk busca la extensi7n 0 la e"ecuta,


sino existe, salta a la extensi7n FiF si existe.

!e utili;a casi siempre en combinaci7n con la aplicaci7n


-ackGround $!e comien;a a reproducir el fic1ero 0 se8uido
se entra en espera, para %ue el usuario pueda introducir
extensiones sin tener %ue esperar*..

75
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# I6R *II+
Apicaci"n
VaitExten
-ama!a
Entrada en el men9 interactivo
6imeout
R
Apicaci"n
!alta a E/6 t
Existe
extensi7n
R
Apicaci"n
!alta a E/6 i
Apicaci"n
Llamar extensi7n
!A
+o +o
!A
76
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk como PBX
Asterisk como Centraita# I6R *III+

E"emplo de men95
3me!u-i-r4
exte! *( s, 1, A!s8er()
exte! *( s, !, ;a%kJrou!d(i!tro-me!u)
exte! *( s, !, ait@xte!(10)
exte! *( 1, 1,Joto(e!tra!tes-dpto%omer%ia),s,1)
exte! *( 2, 1,Joto(e!tra!tes-dpto%omer%ia),s,1)
exte! *( i, 1,:)ay;a%k(op%io!-i!-a)ida)
exte! *( i, !,Joto(me!u-i-r,s,1)
exte! *( t, 1, Joto(e!tra!tes-ge!era)es)

77
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Contro !e ama!as
Re(istro !e ama!as

Asterisk permite llevar un control ex1austivo de todas las


llamadas %ue se 1an reali;ado o recibido.

Es interesante para control propio de facturaci7n,


independiente del proveedor $si no lo somos*.

ermite reali;ar estadAsticas.

Este control se denomina5 #D4, #all Detail 4ecord



78
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Contro !e ama!as
Re(istro !e ama!as *II+

El re8istro del #D4 se escribe por defecto en el fic1ero


,var,lo8,asterisk,cdrCcsv,Master.csv

Existen extensiones al cdr5 cdr(m0s%l por e"emplo, %ue


permiten almacenar los re8istros en una base de datos.

cdr(m0s%l est2 disponible en asteriskCaddons

El #D4 se confi8ura en el fic1ero cdr.conf, para el m7dulo


de M0!QL, se utili;a cdr(m0s%l.conf

ara confirmar el estado del #D4 desde el #LI, se puede


e"ecutar5
C./( %dr status

79
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Contro !e ama!as
@onitori;aci"n

Asterisk provee el protocolo AMI5 Asterisk Mana8er 6#,I


AI

Utili;ando este protocolo, Asterisk permite5

#rear llamadas

Monitori;ar llamadas

Monitori;ar canales 0 colas

E"ecutar comandos

!e trata de un demonio m2s de Asterisk, %ue escuc1a en el


puerto tcp N<S&

!e confi8ura en mana8er.conf

80
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Contro !e ama!as
@onitori;aci"n *II+

Una de las me"ores aplicaciones opensource para controlar


0 visuali;ar el estado en tiempo real de la centralita Asterisk
es5 Zlas1 .perator anel $Z.*.

Z. 1a sido desarrollado en erl 0 MI+G, 0 se compone de


dos partes5

!ervidor de datos

Zlas1 Applet
81
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Inte(raci"n
Inte(raci"n

Asterisk puede ser implantado como un centralita anal78ica,


di8ital e I sin problemas.

!in embar8o, en muc1os entornos las centralitas o sistemas


telef7nicos acaban de ser renovados 0 plantear un cambio
dr2stico no es viable.

!e ofrecen varias posibilidades, entre ellas5

Inte8raci7n como pasarela a I

Inte8raci7n como servicios adicionales



82
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Inte(raci"n
Inte(raci"n como pasarea a IP *I+

Asterisk puede suponer un abaratamiento de costes mu0


importante, confi8urandolo como pasarela a DoI.

La implantaci7n es casi transparente para los sistemas


existentes $confi8urar rutas*5
!istema de
telBfonos actuales
#entralita
actual
Internet
4ed
telef7nica
E
n
la
c
e
s

c
o
n
o
p
e
r
a
d
o
r
e
s

a
c
t
u
a
le
s
DoI
83
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Inte(raci"n
Inte(raci"n como pasarea a IP *II+

De forma transparente para la actual centralita5

El mismo es%uema pero cediendo la l78ica de


enrutamiento a Asterisk.

Implantaci7n totalmente transparente.


6elBfonos
anal78icos
#entralita
actual Internet
4ed
telef7nica
E
n
l
a
c
e
s

c
o
n
o
p
e
r
a
d
o
r
e
s

a
c
t
u
a
l
e
s
D
o
I
84
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Inte(raci"n
Inte(raci"n como ser4icios a!icionaes

La posibilidad de ser implantado en Fcabe;aF de la centralita


actual, permite5

Ampliar el n9mero de extensiones actuales $0a sean I o


tradicionales*, col8ando las nuevas extensiones del nuevo
Asterisk.

#rear un sistema de bu;7n de vo; avan;ado

#rear un men9 ID4 $re%uiere la confi8uraci7n los DID! en la


central actual*.

85
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk PBX# Inte(raci"n
Inte(raci"n como centraita IP

Uno de los servicios en los proveedores de Do;I son los


n9meros ?<x 0 8eo8r2ficos por I, tanto nacionales como
internacionales.

La venta"a de basarse en telefonAa I es la facilidad de crecer


en extensiones.

El proveedor nos asi8na un n9mero de la numeraci7n


tradicional 0 nos encamina las llamadas por !I,IA/>...

Esta nueva posibilidad supone 8ran movilidad 0 a1orro de


costes5 no es necesario tener m2s lineas, 9nicamente tener
anc1o de banda 0 una latencia aceptable.

!in embar8o5 Dependencia de Internet.



86
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
A7I# Asterisk 7ate2a5 Inter)ace
Qu$ es A7I?

Interfa; para comunicar Asterisk con pro8ramas externos


en diferentes len8ua"es de pro8ramaci7n5
C, C#, Bourne Shell, PHP, Ruby, Python, Perl, Java

El pro8rama debe cumplir5

!er e"ecutable $mediante un intBrprete es v2lido*.

Locali;ado por dfecto en ,var,lib,asterisk,a8iCbin

Asociado con al8una extensi7n en el Dial lan5


exten => 200,1,AGI(mi_programa.php|argumentos)

#omunicaci7n con Asterisk5

El pro8rama escribe en la salida est2ndar para enviar un


comando a Asterisk.

El pro8rama lee de entrada est2ndar para obtener una


respuesta de Asterisk.
87
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Asterisk# Auto,!ia out
Auto,!ia out

ermite iniciar llamadas desde aplicaciones externas.

!e copia un fic1ero tipo call$callfiles* en5


,var,spool,asterisk,out8oin8,

Asterisk inmediatamente llamar2 al canal especificado en


#1annel 0 lo conectar2 con el contexto dado $tambiBn es
posible especificar una aplicaci7n*.

E"emplo5
Channel: SIP/bt100
MaxRetries: 1
RetryTime: 60
WaitTime: 30
Context: outgoing
Extension: 944416024
Priority: 1
88
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
Re)erencias
Bi%io(ra)&a

Asterisk, The Future of Telephony. Tim Dan Me88elen, Tared


!mit1 _ Leif Madsen d .F 4eill0
Sitios De%

Voip-info: 1ttp5,,www.voipCinfo.or8
Lista de correo

Asterisk-es
89
Gorka Gorrotxategi Iaki Baz - Jon Bonilla
CURSO ASTERISK
-icencia
Copyright 2007 Irontec <contacto@irontec.com>

Detalles de la licencia5

1ttp5,,creativecommons.or8,licenses,b0,>.N,es,deed.es

También podría gustarte