Después de algún tiempo de tenerlo guardado en un cajón, finalmente me decidí a intentar (una vez mas) configurar el Grandstream HT-503 con mi central telefónica FreePBX.

Anteriormente hice algunos intentos, pero no había conseguido dejarlo funcionando como quería, es decir, como Trunk (en lugar de como una Extensión). Y por eso volvía al cajón.

Finalmente conseguí hacerlo funcionar como Trunk, y la idea de este post es dejar una guía con lo que creo que son los puntos principales para tener en cuenta al momento de armar esta configuración. Ojalá sea de utilidad para quienes le estén invirtiendo tiempo a este equipo para dejarlo funcionando de esta manera.

Los componentes del proyecto fueron los siguientes:

Y las versiones de software utilizadas fueron las siguientes:

  • FreePBX 15.0.16.63
  • Grandstream : Program 1.0.16.3; Bootloader 1.0.0.18; Core 1.0.16.1

Encontré guías muy completas en la web para configurar estos dos dispositivos, pero en la mayoría de los casos dejan al Grandstream como Extensión de FreePBX, algo que me parece inconveniente para el uso que yo pretendo darle, que es básicamente conectar la central a una línea telefónica analógica, enviar y recibir llamadas de la misma manera que lo hago con un Trunk SIP (manipular las reglas de discado y la secuencia de los Trunks en las rutas salientes). Nada de tener que “tomar línea” para sacar una llamada.
Y en todos los casos, los internos son teléfonos/softphones SIP.

Manos a la obra! Lo primero que debemos hacer es crear un Trunk SIP en FreePBX. Para eso seleccionamos “Connectivity/Trunks” y luego “Add Trunk”. La primera pantalla debería verse así:

En la solapa “Dialed Number Manipulation Rules” debemos definir la manera en la que el Trunk manipulará los números discados. Como regla, lo que hago es formatear las “Outbound Routes” en formato Internacional (en el caso de Argentina, +54XXXXXXXXXX) y luego, en cada Trunk pasar de formato Internacional, al formato que el proveedor de telefonía esté esperando. Esta metodología permite que cuando se trabaja con más de un Trunk y se define una secuencia de éstos en las rutas de salida, todos esperan el mismo formato de numeración.

Finalmente, en la sección “SIP Settings” del Trunk, completamos con la siguiente información:

NOTA: La solapa “Incoming” queda vacía.

Terminada la configuración de FreePBX, vamos a la del Grandstream HT-503. En la Solapa “BASIC SETTINGS” el punto importante está debajo de todo, en “Unconditional Call Forward to VOIP”. Ahí debemos colocar los datos del Trunk que creamos en FreePBX, como puede verse en la siguiente imagen.

La solapa “ADVANCED SETTINGS” no tiene ningún parámetro crítico para el funcionamiento del Trunk, y dejé todos los parámetros en su configuración por defecto.

En la solapa “FXS PORT” directamente seleccionamos “Account Active: No” al inicio de la ventana, ya que no vamos a usar el puerto FXS del dispositivo. También dejé el resto de los parámetros de configuración por defecto.

Finalmente, la solapa “FXO PORT” tiene los datos de registro del Puerto FXO en FreePBX, como puede verse en la siguiente imagen:

Grandstream FXO PORT

Una vez configurados todos estos datos, en la pantalla de “STATUS” del Grandstream deberíamos ver el estado “Registered” como se muestra en la siguiente imagen.

De la misma manera, en el “Dashboard” de FreePBX deberíamos ver que el “Trunk” que creamos aparece online.

A partir de este momento, el Grandstream está configurado como Trunk de FreePBX y deberíamos poder recibir y enviar llamadas por la línea telefónica analógica que le hayamos conectado.