Montando un IP PBX remoto

Por: Paul Estrella

Una prueba de concepto funcional al 100%

Hace tiempo vengo pensando en la necesidad de tener un servidor de comunicaciones unificadas que sea portable y que sea desplegable en situaciones de emergencia.

Muchos pueden pensar que esta funcionalidad no tiene una utilidad fija, ya que es muy fácil conseguir un celular y todos podemos tener uno. Sin embargo un celular es un dispositivo individual, no se puede compartir la telefonía de manera instantánea a un grupo de personas o a una organización.

Cuando Elastix sacó su servidor mini UCS, pensé que por tamaño y capacidad era el dispositivo ideal para llevarlo a lugares remotos y dotar de telefonía a un pequeño campamento. Obviamente es necesario establecer un cierto grado de infraestructura y además tener una línea telefónica de un operador.

¿Pero que tal si no teníamos una línea disponible?

La primera versión del mini UCS de Elastix no tiene capacidad GSM disponible, por lo cual mi objetivo de tener una IP PBX totalmente remota se volvía un poco más complicado.

La ventaja de trabajar en tecnología es la posibilidad de encontrar socios tecnológicos que te ayuden a subir algunos peldaños y con eso alcanzar otros objetivos.

Khomp, una empresa de Brasil, es uno de esos socios.

Mi contacto con Khomp data de principios del 2010, cuando iniciamos correspondencia con Joao Mesquita para certificar su Hardware con Elastix. Poco después nos conocimos en el elastixWorld de Quito y desde ahí coincidimos cada año en el 4K Conference, ITExpo y en el propio elastixWorld.

Khomp, es una empresa de Ingeniería en telecomunicaciones, donde se desarrollan soluciones con un alto grado de sofisticación. Detrás de su línea de Hardware hay siempre soluciones impresionantes que agregan funcionalidad a estos dispositivos.

Le expresé a Joao la idea que tenía de escenarios remotos con acceso restringido a líneas telefónicas y me dio una solución inmediata. Un banco de canales de telefonía GSM disponible a través de USB.

El KGSM-USB SPX, como lo denominan en Khomp, es un dispositivo que permite agregar funcionalidad de telefonía GSM a un servidor, con una ventaja, lo hace por medio del puerto USB, en lugar de un puerto PCI. Esto es especialmente importante en dispositivos con un número limitado de puertos PCI y más aun con dispositivos basados en ARM como los Raspberry Pi por ejemplo.

Hace un par de semanas en el marco del ITEXPO, Khomp, por medio de Joao, me obsequió uno para que OpenDireito pueda hacer pruebas y desarrollar un par de escenarios basados en implementación remota.

En cuanto volví a Ecuador, tomé prestado un mini UCS de PaloSanto y lo traje a casa para trabajar en silencio en la primera prueba: montar un servidor de comunicaciones unificadas en mi hogar.

Los puristas me dirán que podía haber hecho dos cosas, utilizar una línea fija o comprarme un SIP trunk con un operador. Ambas opciones son correctas, pero quería simular el estado en el que el único acceso es a través de un operador móvil.

Lo primero fue configurar mi Elastix para soportar el dispositivo. Las instrucciones se encuentran en la sección de hardware certificado de Elastix en elastix.org, seleccionando Khomp en la lista.

 

En la izquierda colocando el chip GSM al KGSM-USB SPX – En la derecha los dispositivos operando (la foster solo está de incentivo)

El link hacia la guía de instalación del drive “channel khomp” es el siguiente:

Guía de instalación del driver Channel Khomp

La versión de Elastix sobre la que trabajé en casa fue 2.3. Para el caso particular del KGSM-USB SPX se debe seguir las instrucciones especificadas para la versión 2.2 (en versiones 2.2 hacia arriba). Las instrucciones son las siguientes:

1. Conectamos el KGSM-USB SPX a nuestro servidor Elastix

2. Desde consola ejecutamos: yum install kernel-module-khomp

3. Una vez completado el paso anterior detenemos asterisk: service asterisk stop

4. luego ejecutamos /etc/rc.d/init.d/khompdrv

5. Iniciamos el servicio: service kserver start

6. Y finalmente iniciamos asterisk nuevamente: service asterisk start

Una vez que hemos llevado a cabo estos puntos, podemos verificar el estatus del KGSM-USB SPX desde la consola de asterisk (ejecutamos “asterisk –r” desde la consola de Linux)

Una vez en la consola de asterisk ejecutamos “khomp channels show” y debemos observar lo siguiente:

Salimos de la consola de asterisk y editamos el siguiente archivo con vim:

/etc/asterisk/khomp.conf

Una vez ahí des-comentamos la línea context-gsm-call, y reemplazamos el valor actual por from-pstn, dejando la línea de la siguiente manera:

context-gsm-call = from-pstn

Guardamos y salimos del archivo, luego reiniciamos asterisk (asterisk –rx “reload”).

Ahora crearemos una troncal en Elastix para el KGSM-USB SPX.

Vamos a la interfaz web de Elastix a:

PBX -> PBX Configuration -> Troncales

Seleccionamos la opción “Add Custom Trunk”

Colocamos un nombre cualquiera a la troncal y khomp/b0c0/$OUTNUM$ en el campo “Custom Dial String”.

Luego hacemos clic en Submit Changes y aplicamos los cambios.

Ahora si recibiremos llamadas.

Obviamente es importante realizar 3 configuraciones adicionales: Crear y configurar una extensión en un teléfono IP o un Softphone, crear o modificar una ruta entrante y crear una ruta saliente. Estos pasos los dejo para que los investiguen en ElastixBook Vol1.

Una vez que tuve todo listo empecé a realizar llamadas de prueba y todo resultó estupendo. Como tenía varios dispositivos en casa y una red wifi, configuré varias extensiones y dirigí llamadas a un Ipad a un Iphone y a una tablet Samgung, estos tres tenían instalado un cliente SIP, para el caso.

Al escribir este artículo cumplí tres objetivos, el primero hablar del KGSM-USB SPX, dejar las instrucciones básicas de configuración y dejar sentada parte de la información para un siguiente artículo que hablará sobre el establecimiento de una solución de comunicaciones unificadas remota.

Mi siguiente paso con el KGSM-USB SPX será comprarme un Raspberry Pi, instalarle uElastix y tener mi IP PBX propia a un valor muy bajo (el Raspberry Pi cuesta USD$35).

Quiero agradecer a Joao Mesquita y a Khomp por el KGSM-USB SPX, le voy a dar un buen uso.

A mis amigos de PaloSanto que leyeron este artículo solo tengo que decirles algo: “No teman, devolveré el mini UCS” 🙂

Hasta la próxima.

Comparte este artículo con tus amigos