Configuración de la centralita

En la actualidad están comenzando a aparecer gran cantidad de aplicaciones que nos permiten configurar asterisk sin necesidad de tocar ficheros de configuración, pero todas las aplicaciones carecen de alguna funcionalidad, por lo que hemos optado por no utilizar ninguna por ahora.

Configuraremos nuestro sistema modificando los ficheros de configuración de asterisk que se crearon al instalar el paquete asterisk-config, los cuáles nos harán esta tarea mucho más sencilla en caso de necesitar alguna funcionalidad específica. Estos ficheros se encuentran en la carpeta /etc/asterisk/.

Creación de cuentas SIP

Como comentamos en apartados anteriores, vamos a necesitar cinco cuentas SIP para utilizar teléfonos IP con esta tecnología y varias cuentas IAX para utilizar softphones en los departamentos del centro.

Para añadir cuentas SIP debemos editar el fichero: /etc/asterisk/sip.conf. Para ello abrimos una ventana de shell y escribimos “sudo nano /etc/asterisk/sip.conf” donde:

El comando sudo hace que lo siguiente que hagamos sea con privilegios de administrador.
El comando nano es un editor de textos sencillo.
/etc/asterisk/sip.conf es el fichero de configuración de todo lo relacionado con el protocolo sip, entre otras cosas, es donde crearemos las cuentas SIP.

Pulsamos la tecla AvPag hasta llegar al final del documento e introducimos el siguiente texto:

[100]
type=friend
secret=12345
host=dynamic
context=ies
[101]
type=friend
secret=12345
host=dynamic
context=ies
[102]
type=friend
secret=12345
host=dynamic
context=ies
[103]
type=friend
secret=12345
host=dynamic
context=ies
[104]
type=friend
secret=12345
host=dynamic
context=ies

Ya tenemos creadas las cuentas para los teléfonos IP. El comienzo de los datos de una cuenta SIP es el número de la cuenta entre corchetes, después, el significado de cada campo es:

  • type=friend ; Nos indica el tipo de endpoint que queremos configurar. Por ahora no vamos a entrar en detalles de los diferentes endpoints que podríamos crear, por lo que todos serán tipo friend.
  • secret=12345 ; Es la clave que va a tener el endpoint. Si este sistema va a estar en producción, el configurar una clave adecuada nos evitará problemas como que un hacker se registre con nuestro sistema y comience a hacer llamadas gratis desde nuestro sistema. En nuestro ejemplo, la clave es 12345, no usar esta clave por defecto por temas de seguridad.
  • host=dynamic ; Con este parámetro podríamos fijar las direcciones IP de nuestros endpoints SIP, pero como generalmente la mayoría de los sistemas utilizan DHCP y por tanto las direcciones IP pueden variar, las configuraremos como dinámicas.
  • context=ies ; Asterisk está preparado para poder configurar varias centralitas en la misma máquina, desde este parámetro definimos el contexto en el que se van a mover nuestras llamadas. En la sección de configuración del plan de numeración veremos más detalles sobre este parámetro.

Ahora solo falta guardar los cambios en el archivo sip.conf y ya tendremos creadas las cuentas de los teléfonos IP en nuestra centralita. Para ello, pulsaremos las teclas “Control+O” para guardar y “Control+X” para salir del editor.

Para comprobar que todo ha ido bien, podemos arrancar asterisk, si no lo estuviera ya, recargar la configuración y comprobar que las cuentas sip se han creado correctamente. Para ello, deberemos escribir desde una ventana de shell:

sudo asterisk -r

Con este comando entramos en la interfaz de usuario de asterisk. Es un algo austera, pero con unos pocos comandos podemos ver gran cantidad de información. Al entrar nos encontraremos con la siguiente pantalla:

Consola Asterisk

Como podemos observar, hemos entrado en la consola de asterisk, por lo que podremos escribir comandos, como por ejemplo “help” para empezar a ver la lista completa de comandos que acepta.

Para recargar la configuración de asterisk en caso de haber realizado cambios se realiza mediante el comando “reload”. Si no recargamos la configuración, ésta no tendrá efecto hasta que no reiniciemos el servicio de asterisk.

Si lo que queremos es ver las cuentas sip que hemos creado, podemos ejecutar el comando “sip show peers” y nos aparecerá la siguiente pantalla:

Consola de Asterisk comando Sip show peers

De esta forma podemos comprobar que las cuentas han sido creadas correctamente, aunque todavía no se han registrado los teléfonos con el sistema.

[ad#ad-1]

Creación de cuentas IAX

Como comentamos en apartados anteriores, vamos a necesitar una cuenta IAX para cada departamento, de tal forma que utilicen softphones para comunicarse.

Para añadir cuentas IAX debemos editar el fichero: /etc/asterisk/iax.conf. Para ello abrimos una ventana de shell y escribimos “sudo nano /etc/asterisk/iax.conf” donde:

El comando sudo hace que lo siguiente que hagamos sea con privilegios de administrador.
El comando nano es el editor.
/etc/asterisk/iax.conf es el fichero de configuración de todo lo relacionado con el protocolo iax, entre otras cosas, es donde crearemos las cuentas IAX.

Pulsamos la tecla AvPag hasta llegar al final del documento e introducimos el siguiente texto:

[105]
type=friend
secret=12345
host=dynamic
context=ies
[106]
type=friend
secret=12345
host=dynamic
context=ies
[107]
type=friend
secret=12345
host=dynamic
context=ies

Tantas secciones y números de cuenta como departamentos haya en el centro y por tanto, tantos como cuentas IAX queramos configurar.

Si nos fijamos es una configuración exáctamente igual que las cuentas SIP, sólo hemos variado los números de las cuentas para que no coincidan con las otras, aunque esto no es obligatorio.

Una vez creadas, volvemos a entrar en la consola de asterisk con el comando “sudo asterisk -r”, recargamos la configuración con “reload” y comprobamos que hemos creado las cuentas iax correctamente con el comando “iax2 show peers”, quedando algo muy similar a la siguiente ventana:

Comando en consola de Asterisk IAX2 show peers

[ad#ad-1]

Plan de numeración

Ahora que ya tenemos las cuentas configuradas, sólo nos queda configurar el plan de numeración. En este caso se trata de asignar las extensiones a sus cuentas, de tal forma que cuando alguien marque la extensión 101 por ejemplo, la llamada se rute hasta la cuenta SIP con el número 101, de tal forma que suene el teléfono registrado con esta cuenta.

El fichero de configuración del plan de numeración de asterisk es /etc/asterisk/extensions.conf.

Para editarlo escribiremos el comando “sudo nano /etc/asterisk/extensions.conf” y con la tecla AvPag iremos hasta el final del fichero donde añadiremos las siguientes líneas:

[ies]
exten => 100,1,Dial(SIP/100,25,trT)
exten => 101,1,Dial(SIP/101,25,trT)
exten => 102,1,Dial(SIP/102,25,trT)
exten => 103,1,Dial(SIP/103,25,trT)
exten => 104,1,Dial(SIP/104,25,trT)

exten => 105,1,Dial(IAX2/105,25,trT)
exten => 106,1,Dial(IAX2/106,25,trT)
exten => 107,1,Dial(IAX2/107,25,trT)
exten => 110,1,Echo()

Ahora ya hemos definido el contexto IES que habíamos visto a la hora de crear las cuentas. Desde aquí estamos definiendo el comportamiento de las extensiones y cómo se rutan las llamadas.

El comando exten se encarga de definir el comportamiento de una extensión, veamos qué significa cada campo: exten => 100,1,Dial(SIP/100,25,trT)

  • 100 es el número de la extensión que estamos definiendo.
  • 1 sería la secuencia que hay que seguir. En caso de querer hacer diferentes saltos por si el teléfono 100 no contesta, podríamos poner en la secuencia otra redirección con el número 2, que sería una alternativa a la ruta de la llamada.
  • Dial es el comando que establece la llamada, y podemos ponerle tres parámetros, aunque no son todos obligatorios. El primer parámetro es dónde queremos que se llame al marcar la extensión 100. Según el ejemplo, el teléfono registrado con la cuenta SIP número 100 comenzaría a sonar durante 25 segundos, de ahí el segundo parámetro, tras ese tiempo daría comunicando. El tercer parámetro es mejor ponerlo, aunque ahora no entraremos en detalles de su significado (tiene que ver con los DTMFs o tonos de marcado).

Con estos pasos, ya tendríamos configurada la centralita para realizar llamadas internas entre extensiones, primer paso de cualquier sistema de telefonía IP. Pero todavía nos falta registrar los endpoints con nuestra centralita, es decir, configurar los teléfonos ip y los softphones de cada uno de los departamentos.

Por último, podemos comprobar que hemos añadido una nueva extensión, la 110, en la que se ejecuta la aplicación de prueba de eco, todo lo que se habla es devuelto como eco por la centralita, de esta forma podemos probar las extensiones.

Siguiente >

[ad#ad-1]

Comments are closed.