Asterisk PBX - Centralitas telefónicas de altas prestaciones
y bajo coste
Asterisk es un software de centralita telefónica (PBX)
que puede ejecutarse en un ordenador convencional (preferiblemente bajo Linux)
y ofrece como mínimo las mismas funcionalidades que otras centralitas
telefónicas comerciales.
Asterisk se distribuye con
licencia GPL y en código abierto, lo que permite que otros desarrolladores
puedan modificar o ampliar la funcionalidad a bajo nivel si fuera necesario.
Como cualquier PBX, se pueden conectar un número determinado
de teléfonos analógicos para hacer llamadas entre sí y
hacia el exterior a través de la red telefónica convencional o
a través de líneas RDSI.
Asterisk puede funcionar como proveedor de servicios
de VoIP, de forma que teléfonos y softphones VoIP pueden establecer
comunicaciones de voz entre sí, puede utilizar servicios
de proveedores de VoIP externos y puede servir de pasarela
con proveedores de telefonía (permitiendo la comunicación
hacia y desde teléfonos convencionales)... Realmente las combinaciones
son prácticamente infinitas.
El escenario representado en la figura puede corresponderse
con el de una oficina pequeña / mediana, y la implementación es
mucho más sencilla y barata de lo que pueda parecer a simple vista.
El servidor Asterisk está
conectado a una red de datos local (una LAN Ethernet por ejemplo). En esta red,
los equipos pueden transmitir datos y también voz a través de
protocolos VoIP. De hecho, la telefonía interna
de la oficina puede estar basada por completo en VoIP.
Los teléfonos analógicos convencionales pueden
conectarse a la red a través de adaptadores (ATA
- Analog Telephony Adapter) que se encargarán de transformar tanto
la señalización como la información de voz.
Ni siquiera son necesarios los teléfonos convencionales
en una red de este tipo. Los usuarios pueden utilizar softphones,
pequeños programas que se ejecutan en cualquier ordenador y ofrecen la
funcionalidad de un terminal telefónico avanzado. Sólo sería
necesario conectar un micrófono, handset, headset, etc.
Si la red local incorpora tecnología wifi, podremos utilizar
terminales
móviles wifi que funcionarán sin problemas dentro de la zona
de cobertura de la red wireless local.
Por otro lado, la centralita del ejemplo, es decir, el ordenador
en el que corre Asterisk, dispone de una o más tarjetas
que le permiten conectar directamente una serie de teléfonos analógicos
convencionales (extensiones) dentro de la oficina y también le permiten
conectar la línea o líneas contratadas
al proveedor de telefonía (líneas analógicas, RDSI...).
Además, la red local en la que se encuentra la centralita
está concetada a Internet a través de un router (ADSL por ejemplo).
Esto quiere decir que utilizando exclusivamente VoIP, cualquier usuario de la
oficina puede comunicarse telefónicamente con cualquier otro usuario
VoIP a nivel mundial. Esta comunicación podrá realizarse directamente
si ese otro usuario está registrado en la centralita (por ejemplo si
la compañía tiene varias oficinas repartidas por todo el mundo
puede tener registrados todas las extensiones de sus trabajadores).
También es posible que la empresa contrate los servicios
de un proveedor externo de VoIP. De tal forma
que cada usuario de la oficina podrá comunicarse con cualquier usuario
de la red VoIP de ese proveedor.
¿Qué sucede cuando un usuario de la oficina desea
hablar con un usuario de la red telefónica convencional?. En este escenario
de ejemplo habría dos opciones.
Por un lado, como la centralita disponde de una o más
líneas contratadas con el proveedor de telefonía, la llamada puede
ser cursada directamente a través de este proveedor, como una llamada
telefónica convencional... Sólo que en este caso puede
estar siendo realizada desde un ordenador de sobremesa de la oficina, un móvil
wifi, un portátil wifi, un teléfono analógico convencional
o un teléfono analógico con adaptador VoIP... de forma transparente
para el usuario.
Por otro lado, es muy posible que el proveedor de VoIP proporcione
acceso a la red telefónica conmutada a la que pertenece el abonado al
que se desea llamar. También es muy probable que las tarifas sean distintas
a las del proveedor de telefonía. Por ejemplo, podría ocurrir
que llamar a un determinado país sea más barato a través
de este operador, mientras que llamar a un móvil sea mucho más
caro.
El dialplan de Asterisk (es decir,
la forma en la que se enrutan las llamadas, se accede a las extensiones internas,
etc...) se puede programar mediante una serie de instrucciones y funciones preconfiguradas
que permiten hacer casi cualquier cosa. Y además se pueden extender utilizando
lenguajes de programación estándar como C o Perl.
Por lo tanto resulta relativamente 'sencillo' elaborar un dialplan
que tenga en cuenta cómo se va a enrutar cada llamada para aprovechar
por ejemplo la tarificación más eficiente o en casos concretos
para optimizar la calidad de la comunicación:
Lamada interna
Llamada VoIP directo extremo a extremo (por ejemplo entre
distintas sedes)
Llamada VoIP puro a través de un proveedor VoIP
externo
Llamada a un teléfono fijo o un móvil a
través del proveedor de telefonía
Llamada indirecta a un fijo / móvil a través
del proveedor VoIP
...
Y todo de forma transparente al usuario, que simplemente tiene
que marcar y hablar.