Académique Documents
Professionnel Documents
Culture Documents
On this page
Links
Asterisk is a free and Open Source framework for building communications
applications. Asterisk turns an ordinary computer into a VoIP communications
server. Asterisk powers IP PBX systems, VoIP gateways, conference servers and
is used by small businesses, large businesses, call centers, carriers, and
governments worldwide. Today we will install Asterisk on Debian. All required
packages will be installed via apt, but Asterisk will be installed from source.
Let's see how to install Asterisk on Debian
There are many versions of Asterisk available on their website, but the latest is
13 with LTS (Long Term Support). So we will download it from source and install
in this tutorial.
First of all we will install the build environment:
This command will install the basic packages that are needed on a new server
to install Asterisk 13.
Now we will install some more dependencies which are directly dependent on
Asterisk 13:
This command will install the libraries which Asterisk will be needing to work
and for CDR's there are many options available. At the moment, we will install
SQLite also as we haven't decided yet that we will use Mysql or SQLite.
Now we will download asterisk from their website by the following command:
wget http://downloads.asterisk.org/pub/telephony/asterisk/asterisk-13-
current.tar.gz
Now we have successfully downloaded Asterisk 13 on our server.
To install it from the source which we have downloaded we have to extract it.
Use the following command to extract:
cd asterisk-13.3.2/
To compile from a source we have to use the following command which will
check all that are all dependencies installed before installing the software:
./configure
The above image shows that there are some libraries missing now we will
resolve these dependencies one by one:
Now we have downloaded the missing library and we will compile it from source
in order to resolve the issue:
cd jansson-2.5/
./configure
As all of its dependencies are met so we will now execute the following
command to install Libjasson:
Now we will go to Asterisk's folder and execute the ./configure command again
to check if any other dependency is left:
This shows that now we are ready to install Asterisk as all of its dependencies
are met. Now execute the following set of commands and wait for a little while
as it will take some time to execute:
make
Asterisk is now installed and ready to use. You can login to asterisks console by
the following command:
asterisk -cvvvvvvvv
So we have successfully installed Asterisk on our Debian Server and you can
start working on Asterisk.
Links
Asterisk
view as pdf | print
Share this page:
3 Comment(s)
Add comment
Name *
Email *
p
Submit comment
Comments
From: sanvil
Reply
apt-get install libjansson-dev
From: sma
Reply
Hi,
This command look like is lissing a & isn't it :
make install & make samples
Shouldn't it be "make install && make samples" ?
From: Joe
Reply
If you execute with & the following commands will only be executed if the
previous command returned with exit code 0 (success), if make install failed it
will not try to install the sample configuration.
&& executes all commands in a row now matter if they fail or not.
Pgina De Inicio
Sistema Admin
Linux
Cmo instalar Asterisk 13 en Debian
wget http://downloads.Asterisk.org/pub/Telephony/Asterisk/Asterisk-13-
current.tar.gz
CD asterisk-13.3.2/
Para compilar desde una fuente que tenemos que usar el siguiente
comando que le Marque todas las que son todas las dependencias
instaladas antes de instalar el software:
./configurar
CD jansson-2.5 /
./configurar
hacer
Asterisk - cvvvvvvvv
;
Inicio
Fundamentos de Telefonia
o Transmision de la Voz
o PBX-Central Telefonica
o Interconexion a la PSTN
o VoIP Telefonia IP
o Comunicaciones Unificadas
o Introduccion a Asterisk
o Diccionario de Telefonia IP
o Caracteristicas de Elastix
o Fundamentos de Linux
o Configurar VirtualBox Elastix
Tutoriales Elastix
Entrenamiento Elastix
Contacto
Introduccion a Asterisk
Que es Asterisk?
Realmente esta pregunta puede ir mucho ms all de la definicin comn que
se establece para el sistema.
Y para ello se form una alianza con un proyecto de telefona llamado Zapata
iniciado por Jim Dixon. La idea del proyecto Zapata, era la posibilidad de
disear tarjetas especficas para convertir la seal analgica que provena de la
PSTN a una seal digital, y ahorrar costes en la construccin de dispositivos
de telefona y audio avanzados (y muy costosos) gracias a la tremenda
reduccin de costes que sufran ao tras ao los procesadores. A travs de
estos, cada vez ms potentes, y baratos, se podran procesar una o varias
seales de audio digital (DSP) sin gran dificultad y poder paralelamente
construir telfonos con ese coste reducido.
La primera version estable surgio casi 5 aos despues, Asterisk 1.0. A partir de
aqui el sistema de versiones ha evolucionado de la siguiente forma:
Asterisk SCF
Asterisk SCF es un entorno todava en vas de desarrollo que aunque
originalmente no ha sido lanzado para reemplazar al sistema original Asterisk,
ofrecer una evolucin en mltiples trminos que supondra en un futuro su
posible adaptacin por la mayora de los usuarios del mismo.
La idea intencional esta basada, en la posibilidad de ofrecer un sistema capaz
de ser desplegado en Clusters, o mltiples sistemas con total transparencia,
algo que en la actualidad el sistema Asterisk no puede ofrecer de por si, y en
caso de necesitar algun tipo de escalado, era necesario recurrir a soluciones
alternativas como los Proxies SIP como los reconocidos Opensips o Kamailio.
Segn la definicin ofrecida por los desarrolladores, Asterisk SCF ha sido
arquitectnicamente diseado para ofrecer los mximos niveles de
disponibilidad, escalabilidad, extensibilidad, tolerancia a fallos y
rendimiento .
Arquitectura de Asterisk
La arquitectura de Asterisk esta basada en un sistema modular, que depende
del ncleo principal del sistema.
El ncleo del sistema principalmente se basa en cuatro componentes:
Gestin de Mdulos
Temporizador de Sistema
Gestin de Canales
Interfaces de Sistema
Mdulos
Como comentbamos antes, Asterisk esta basado en mdulos independientes,
los cuales pueden ser cargados y descargados a voluntad, en funcin de las
necesidades que deseemos proveer al sistema.
Cada modulo posee una funcionalidad especifica, de tal forma que puedan
tratarse todos los aspectos del sistema, pasando por los tipos de canales (SIP,
IAX, DAHDI) o conexiones a otros sistemas para interactuar con Asterisk
(mail, bases de datos, web, etc.).
Aplicaciones
Recursos
Drivers de canales
Add-ons
Aplicaciones
Por ello la forma mas comn de ser utilizadas es a travs de la Aplicacin Set
Drivers de canales
Son los drivers especficos para cada tipo de canal disponible actualmente o
en un futuro para Asterisk. Estos son los que aportan especficamente la
posibilidad de volver totalmente independiente el sistema de los mismos para
as poder tratarlos de forma totalmente homognea. Son exactamente una
especie de interfaz entre el ncleo de Asterisk y la parte lgica dentro del
sistema operativo. Es exactamente un API.
Por ejemplo, si una llamada, viene del canal DAHDI, con el cdec G.711
(alaw o ulaw dependiendo del pas) y quiere pasarse a una extensin SIP
dentro de nuestro sistema Asterisk, el traductor correspondiente ser el
encargado de realizar esta conversin en tiempo real.
Por otro lado, si lo que estamos tratando son archivos, los encargados de
interpretar el contenido para pasarlo a travs del audio del canal
correspondiente seran los traductores de Formatos. En este mbito los mas
populares son los estndares, GSM y WAV en los que estn basados la mayor
parte de los sonidos por defecto del sistema Asterisk (los mensajes
pregrabados).
Interfaces
Asterisk se despliega y comunica con el entorno a travs de mltiples
interfaces que provee, tanto para trabajos de gestin y mantenimiento
manuales, como para su autogestin de forma esttica, y sistemas externos
que puedan recabar datos de forma dinmica y automtica, y finalmente
pasando a ofrecer interfaces para poder trabajar con lenguajes de
programacin que provean a su vez al sistema de nuevas funcionalidades extra
que no estn construidas en su interior.
Ficheros de Configuracin
Archivos de Configuracin
CLI
Existen libreras AGI prcticamente para todos los lenguajes mas populares
como pueden ser, PHP, Python, Java, Ruby on Rails, etc.
Instalacion de Asterisk
Asterisk para linux
1) Instalar Asterisk
2) ejecutar make
4) make samples
# asterisk -vvvc
*CLI>
[20000] type=friend
secret=a20000b
qualify=yes
nat=no
host=dynamic
canreinvite=no
context=miprimerejemplo
mailbox=20000@miprimerbuzon
[20100] type=friend
secret=b20100a
qualify=yes
nat=no
host=dynamic
canreinvite=no
context=miprimerejemplo
mailbox=20100@miprimerbuzon
4. Reinicializamos el asterisk
5. Configuramos un softphone
[general] context=default
port=5060 ; Puerto UDP en el que responder el Asterisk
bindaddr=0.0.0.0 ; Si queremos especificar que Asterisk est en una IP (si un
equipo tiene 3 IPs por ej.) 0.0.0.0 vale para cualquiera
srvlookup=yes ; Habilita servidor DNS SRV
[pedro] type=friend
secret=welcome
qualify=yes ;Tiempo de latencia no superior a 2000 ms.
nat=no ; El telefono no usa NAT
host=dynamic ; El dispositivo se registra con una IP variante
canreinvite=no ; Asterisk por defecto trata de redirigir
context=internal ; El contexto que controla todo esto
En general los servidores SIP escuchan en el puerto 5060 UDP. Por tanto
configuramos port=5060 . En algunos casos, por ejemplo si utilizamos SER
(Sip Express Router) con Asterisk debemos cambiar este puerto.
DNS es una forma de configurar una direccin lgica para que pueda ser
resuelta. Esto permite que las llamadas sean enviadas a diferentes lugares sin
necesidad de cambiar la direccin lgica. Usando el DNS SRV se ganan las
ventajas del DNS mientras que deshabilitandolo no es posible enrutar
llamadas en base a nombre de dominios. Conviene tenerlo activado, por tanto
se pone la directiva srvlookup=yes
El tipo (type) user se usa para autenticar llamadas entrantes, peer para
llamadas salientes y friend para ambas. En nuestro caso hemos definido una
extensin pedro como friend. Puede realizar y recibir llamadas.
Por ltimo context=internal indica el contexto donde est las instrucciones para
dicha extensin. Esto est relacionado con el contexto del archivo extensions.conf
que marca el plan de numeracin para ese contexto. Por tanto el contexto internal
debe existir en el fichero extensions.conf o de lo contrario deberiamos crearlo.
Varios extensiones pueden tener el mismo contexto.
Opciones avanzadas:
Ejemplos:
[xlite1]
;Se puede activar la supresin de silencio
;Xlite manda paquetes NAT keep-alive, por tanto qualify=yes no es necesario
type=friend
username=xlite1
callerid=juan Perez <5678>
host=dynamic ; el softphone xlite puede estar en cualquier IP
nat=yes ; X-Lite est detrs de un dispositivo NAT
canreinvite=no ; Se suele poner NO si est detrs de un dispositivo que hace
NAT
disallow=all
allow=gsm ; GSM consume menos ancho de banda que alaw o ulaw
allow=ulaw
allow=alaw
[user1_snomsip]
type=friend
secret=blah ; en este caso es la contrasea para registrarse
host=dynamic
dtmfmode=inband ; las posibilidades son inband (en banda), rfc2833, o info
defaultip=192.168.0.59 ; la IP del dispositivo
mailbox=1234; Contestador para mensajes
disallow=all
allow=ulaw ; dado que se ha elegido en banda (inband) para el dtmf se debe
seleccionar alaw o ulaw (G.711)
allow=alaw
[user2_pingtel]
type=friend
username=user2_pingtel
secret=blah
host=dynamic
qualify=1000 ; Se considera caido si pasa ms de 1 segundo sin contestar
callgroup=1,3-4 ; Es miembro de los grupos 1,3 y 4
pickupgroup=1,3-4 ; Se puede hacer un pickup para los grupos 1,2 y 4
defaultip=192.168.0.60 ;IP
disallow=all
allow=ulaw
allow=alaw
allow=g729
[user3_cisco]
type=friend
username=user3_cisco
secret=blah
nat=yes ; El telefono est nateado
host=dynamic
canreinvite=no ;
qualify=200 ; Tiempo de 200 ms para recibir respuesta
defaultip=192.168.0.4
disallow=all
allow=ulaw
allow=alaw
allow=g729
[user4_cisco1]
type=friendusername=user4_cisco
fromuser=pedro ;
secret=blah
defaultip=192.168.0.4 ;
amaflags=default ; Las posibilidades son default, omit, billing o
documentation
accountcode=pedro ; Para propsitos de tarificacin
disallow=all
allow=ulaw
allow=alaw
allow=g729
allow=g723.1
Resto de Contextos []
Si el usuario 3000 no est conectado salta a la prioridad +101 (en nuestro caso
a la 102=1+101 ya que estabamos en la prioridad 1) y hacemos que salte el
contestador para dejar un mensaje.
En este caso llamando al 600 nos va a repetir lo mismo que nosotros dijimos.
Podremos comprobar la latencia del sistema.
En este caso presentamos la extensin start s que es la que coge las llamadas
cuando se esta en ese contexto pero no se sabe la extensin. Tambin se puede
entrar desde otra extensin como en este caso marcando la extensin 1000.
Con Goto podemos ir al contexto, extensin y prioridad que queramos.
En este caso lo que hacemos es que siempre que marquemos el 340 seguido de
cualquier numero (el 340 como perfijo) llamaremos a una extension SIP. Por
ejemplo en el primer caso si marcamos al 340600600 llamaremos al 600600 a
la direccin IP del proveedorsip definido en sip.conf. (EXTEN:3 significa
que quitamos los tres primeros numeros)
Option Description
fichero Nombre del fichero de audio a reproducir
${VAR} Variable de sustitucin
A, a Da de la semana (sbado, domingo, etc)
B,b,h Mes (Enero, Febrero, )
d,e da del mes numrico (primero, segundo,)
Y Ao
I or i Hora, en formato 12 horas
H ,k Hora, en formato 24 horas
M Minutos
P,p AM o PM
Q hoy,ayer
R tiempo 24 horas , incluidos minutos
Resto de Contextos []
Ejemplos:
Buscar
Articulos Recientes:
Funcionalidades de Elastix
Tutoriales de Elastix
Fundamentos de Telefonia
o Transmision de la Voz
o PBX-Central Telefonica
o Interconexion a la PSTN
o VoIP Telefonia IP
o Comunicaciones Unificadas
o Introduccion a Asterisk
o Diccionario de Telefonia IP
o Caracteristicas de Elastix
o Fundamentos de Linux
Tutoriales Elastix
Entrenamiento Elastix
o Servidor Virtual Elastix con SMS y Call-Center
Contacto
Buscanos es Facebook
Suscribase:
Name
Send
Copyright
Volver al inicio