Asterisk es un software libre que permite convertir una computadora común y corriente en una pequeña centralita de telefonia, es decir, en una PBX (Private Branch Exchange).
Voy a mostrar lo fácil que puede ser configurar 2 anexos caseros, utilizando la red de mi casa 🙂
La idea será, dado que es algo casero, NO HAY télefono IP ni varios teléfonos analógicos, solo se cuenta con uno, por lo que dejaré sin línea a mi casa por un buen rato 😛
Saquen el teléfono que les ha instalado su compañía de telefonía y conectenlo un ATA cualquiera, en este caso utilizaré el SPA3102 de Linksys dado que es el que tengo a la mano:
Se conecta el cable del puerto del teléfono al puerto FXS del ATA
El ATA y el teléfono analógicoPara poder jugar con las llamadas de un lugar a otro, necesitamos otro de alguien que haga las llamadas al teléfono analógico, lo más práctico es un sofphone como el Zoiper (www.zoiper.com/), que corre sobre linux y windows, en este caso utilizaré la versión para linux ;=)
Lo pueden descargar de:
http://www.zoiper.com/downloads/free/linux/zoiper201-linux.tar.gz
Ubican el archivo y le hacen un:
tar zxf zoiper201-linux.tar.gz
./zoiper
Debo mencionar que si no cuentan con la posibilidad de tener un ATA para esta prueba pueden utilizar un sofphone más en otra PC, el procedimiento es el mismo que el de registrar un ATA en el Asterisk.
Verfican las conexiones en el switch y manos a la obra …
Switch con mucho cableado …Para instalar Asterisk, utilizamos apt-get, caso estés en Debian, ó también un sudo apt-get caso estés en Ubuntu:
apt-get update
apt-get install asterisk
Por otro lado, si deseas compilar tú mismo el Asterisk, aquí están los pasos: http://blog.pucp.edu.pe/item/29066
Ahora, debes saber que en la carpeta /etc/asterisk/ se encuentran los principales archivos de configuración para los distintos servicios que ofrece Asterisk.
También es importante saber que dentro de dicha carpeta se encuentran los siguientes archivos de configuración que vamos a utilizar:
sip.conf, archivo que configura los clientes SIP.
extensions.conf, archivo donde se configura el funcionamiento de los servicios implementados para los distintos anexos.
En mi caso, voy a tener el siguiente Dial Plan:
Anexo 80 -> 192.168.1.4 (es mi computadora con un sofphone)
Anexo 81 -> 192.168.1.10 (es el ATA con el telefono analogico)
![asterisk](http://blog.pucp.edu.pe/blog/wp-content/uploads/sites/26/2008/07/asterisk_users.jpg)
Es importante saber que en Asterisk se utiliza actualmente los protocolos iax y sip, el primero es para la comunicación entre distintas centrales Asterisk y el segundo es para la comunicación entre Asterisk y sus clientes. A pesar de que iax es un protocolo que hace un uso más eficiente del ancho de banda que sip, la mayoría de clientes VoIP solo soportan sip y es imposible, por lo tanto, utilizar iax para dichos clientes. Asterisk funciona como proxy siempre registra a sus clientes y entabla un protocolo de comunicación con ellos.
Los pasos para la instalación via software de los 2 anexos serán:
1. Configuración de Asterisk
2. Configuración del ATA SPA3102
3. Configuración del Sofphone Zoiper
4. Levantar Asterisk
5. Llamada entre los anexos
1. Configuración de Asterisk:
El primer archivo a configurar, como ya se lo debian imaginar si es que han leido lo anterior, es el sip.conf, dicho archivos si no ha sufrido ninguna modificacion esta hecho como para rellenarlo, puesto que es una plantilla. Solo deben agregar los siguientes datos:
Edito el archivo sip.conf
;########################################
; sip.conf
; configuracion de los clientes sip
; servidor asterisk >p3dRø<
;
;########################################
[general]
;
port=5060
disallow=all
allow=g726
allow=ulaw
allow=alaw
;
;=========================================
;
[80]
type=friend
host=dynamic
language=es
context=internal
secret=80
username=80
callerid=80
dtmfmode=rfc2833
qualify=yes
;
[81]
type=friend
host=dynamic
language=es
context=internal
secret=81
username=81
callerid=81
dtmfmode=rfc2833
qualify=yes
;
Edito el archivo extensions.conf:
;#########################################
; dialplan
; configuracion del dialplan para los anexos sip
; servidor asterisk >p3dRø<
;
;#########################################
;
[general]
;
[internal]
;
exten => 80,1,Dial(SIP/80,26)
exten => 80,n,Hangup
;
exten => 81,1,Dial(SIP/81,26)
exten => 81,n,Hangup
;
2. Configuración del ATA SPA3102
La configuración del ATA SPA3102 lo pueden encontrar en:
http://www.3cx.com/voip-gateways/linksys-3102.html
En la seccion How to configure a LINKSYS SPA-3102 (ATA Functionality) with 3CX, solo que en vez de pensar que se esta configurando con la central 3CX se lo plantea para el Asterisk, que es el mismo procedimiento al final de cuentas.
Solo un detalle, deben conectar el puerto ‘Internet’ del ATA al switch previamente habiéndole configurado una IP para el puerto WAN que esté en red con el resto de los equipos, en mi caso para mi red le puse la 192.168.1.10 como pueden verificar:
3. Configuración del Sofphone Zoiper
Por otro lado, se debe registrar también el sofphone Zoiper con Asterisk, para esto damos clic en configuración:
En este caso configuración es el último botón de la derechaEn domain se pone la IP del servidor Asterisk, en mi red es la 192.168.1.5
Agregar los datos correspondientes
Se comprueban los datos ya registrados4. Levantar Asterisk
Ahora para levantar el asterisk debemos asegurarnos de que Asterisk se ejecute cada vez que se carga el sistema, para esto debemos entrar a /etc/default/asterisk y poner el RUNASTERISK=yes.
Ejecutamos asterisk en modo demonio:
/etc/init.d/asterisk restart
Comprueban que asterisk esté corriendo con el comando
ps -A | grep asterisk
Les debería salir un resultado, algo parecido a esto:
2865 ? 00:00:00 asterisk
Si es así, han tenido éxito y asterisk ya está corriendo en su computador :=)
Finalmente debemos entrar al modo CLI de Asterisk, que es un modo en el cual solo puedes ejecutar comandos propios de asterisk como si estuvieras en un hardware con memoria especial, para verificar que los anexos ya esten registrados:
asterisk -vvvvr
== Parsing '/etc/asterisk/asterisk.conf': Found
== Parsing '/etc/asterisk/extconfig.conf': Found
Asterisk 1.2.13, Copyright (C) 1999 - 2006 Digium, Inc. and others.
Created by Mark Spencer <markster@digium.com>
Asterisk comes with ABSOLUTELY NO WARRANTY; type 'show warranty' for details.
This is free software, with components licensed under the GNU General Public
License version 2 and other licenses; you are welcome to redistribute it under
certain conditions. Type 'show license' for details.
==============================================
Connected to Asterisk 1.2.13 currently running on nodo-c (pid = 6780)
Verbosity was 0 and is now 4
nodo-c*CLI>
O lo que es lo mismo:
Ahora, ya aca, ejecutamos el comando:
CLI> sip show peers
Name/username Host Dyn Nat ACL Port Status 81/81 192.168.1.4 D 5060 OK (5 ms) 80/80 192.168.1.10 D 5060 OK (10 ms) 2 sip peers [2 online , 0 offline]
En Status, debemos fijarnos de que diga OK, de esta forma verficamos que los clientes sip 80 y 81 han sido registrados correctamente en Asterisk.
Importante: Cualquier modificación que hagan en los archivos de asterisk tales como sip.conf, extensions.conf, etc deben poner un /etc/init.d/asterisk restart
5. Llamada entre los anexos
Ahora finalmente se hace la llamada desde el Zoiper(anexo 81) al anexo 80 que es el número del ATA con el teléfono analógico:
Llamada del anexo 81 al anexo 80Espero este pequeño tutorial les sea de ayuda para animarlos a montar su propio Asterisk casero, aquí la receta: 1 Linux + 1 ATA + 1 sofphone + ‘n’ ganas de aprender.
Más adelante veremos también tienen otras opciones de configuración más avanzadas (zapata.conf) como llamada en espera (callwaiting), llamada de tres (threewaycalling), transferencia de llamada (transfer) y buzón de voz.
Hasta otra oportunidad!
▶▶ Twittear
▶▶ ¿Te gustó el artículo? Recibe nuevas noticias y publicaciones en tu correo, subscríbete en el formulario:
14 noviembre, 2008 at 1:15 pm
exelente me re sirve toda esta info para el curso que estoy haciendo de asterisk, gracias
14 noviembre, 2008 at 5:30 pm
De nada XD
Saludos,
Pedro
31 enero, 2009 at 7:59 pm
Muy buena la información, me es muy utiL, por siaca no dictas el curso de asterisk, lo estoy llevando, pero me gustaria reforzar para dominarlo aun más…
2 marzo, 2009 at 4:03 pm
que tal pedro, me parece muy interesante este tema, tengo la inquietud de adentrarme al mismo, y asi mismo utilizarlo para mi tema de tesis, solo que en estos momentos no se me ocurre una aplicacion impactante, que rumbo o aplicacion me recomiendas? para desarrollar un buen proyecto y aun mejor con tu ayuda. gracias
18 marzo, 2009 at 9:56 am
Excelente Ayuda Amigo felicitaciones lo graficaste bien solo mi duda amigo es si es con telefono analogico entonces en una red LAN donde tengo que conectar el telefono convencional si tendre anexos o que tipo de tarjetas tengo que instalar en mi anexos pues quiero llevar a varias pc por la RED LAN agradecere tu repuesta amigo
22 marzo, 2009 at 8:18 pm
Gracias… Me sirvio de mucho
14 abril, 2009 at 8:16 pm
saludos pedro muy interesante, mi duda es como haria para implementar una central de donde se deriven las llamadas a los anexos , que es lo que necesito
18 mayo, 2009 at 3:20 pm
Hola como estas reciba un cordial saludo desde Venezuela
me llamo Giofran Gimenez y estoy interesado en realizar un trabajo
de Grado acerca de un servidor asterix pero su funcionamiento seria
un poco distinto no solamente seria como voip si no que me interesaría
hacer un sistema de facturación y despacho que funcione atreves de SMS
que el cliente tenga la potestad de hacer sus pedidos simplemente con enviar un
mensaje de texto es difícil conseguir información y me pregunto si les interesaría
en darme asesoría o indicarme cuales son los pasos a seguir o recomendaciones
es para mi trabajo de grado soy cursaste de Ing. Telecomunicación 9no semestre
sin mas que decir me despido y espero que lleguen a leer mi correo es daikatan_geo@hotmail.com
25 junio, 2009 at 2:13 am
@Rafael León: sí puedo dictar un curso de asterisk/elastix, me escribes al correo nomás p.valera@pucp.edu.pe
@mauricio: sugiero puedas basarte en automatización y control de las llamadas de los clientes.
@Giofran Gimenez: una vez que tengas el sms sería sencillo analizarlo, puedes utilizar C++ para eso.
Saludos!
25 enero, 2010 at 8:28 pm
Hooooo genial, gracias Pedro sabes deseo hacer + consultas favor si tienes tu email
29 junio, 2010 at 10:25 am
pregunta tonta…yo tengo internet pero no telefono. puedo intalar un server y llamar desde ahi. y a que numero me llamarian.
Saludos…muy bueno el post
29 junio, 2010 at 7:06 pm
depende…
En primer lugar si tienes tu server tu mismo creas tu número y tus anexos… los cuales te llamarán al número que te has asignado en tu dialplan.
En segundo lugar si quieres que te llamen desde celulares o fijos lo más práctico para ti que solo tienes internet es contratar el servicio de alguna empresa que de telefonía por Internet y ellos te asignarán tu número.
Saludos,
16 agosto, 2010 at 5:36 pm
Exelente me parecio muy interesante especialmente para todos los que tenemos interes en montar una centralita
15 marzo, 2011 at 10:36 am
Excelenete aporte amigo, aho lo voy a montar en Centos.
Gracias
28 abril, 2012 at 12:13 pm
Muy bueno loco, gracias ayer se me desperto un interes por asterisk y estoy me sirve para dar los primeros pasos
7 mayo, 2012 at 4:55 am
I do wish there were more people like you around on the interwebs. Not many people are careful with their words, including myself sometimes.
9 mayo, 2012 at 8:04 am
Muy buena presentacion