Asterisk vs Elastix vs Trixbox vs AsteriskNow vs FreePBX: Explicando la diferencia

31 Jul

Actualizado el 2016-01-15 para reflejar los cambios más recientes a las distribuciones.

Una de las actividades más importantes en mi vida profesional es la de capacitar sobre el uso de la plataforma Asterisk®, y durante los cursos que doy recibo frecuentemente preguntas como estas:

  • ¿Cuál es la diferencia entre Asterisk y Elastix?
  • Tengo sistemas basados en Trixbox. ¿Puedo migrarlos a Asterisk?
  • ¿Es lo mismo Asterisk que AsteriskNow?

Cuando escucho estas preguntas es fácil darme cuenta que hay mucha diferencia entre los productos que reciben una promoción comercial contra los que son el proyecto base sobre el que se construye el producto comercial, y por eso quiero establecer la diferencia.

 

Asterisk “puro”

Asterisk es software open source, hecho en lenguaje C y creado originalmente por Mark Spencer (actual CTO de Digium, empresa que patrocina la mayor parte del desarrollo de Asterisk). Este software, por si solo, no es una herramienta plug-and-play que posea la capacidad de hacer llamadas, sino que es necesario atravesar por numerosos pasos (descarga, compilación, instalación y configuración) para que pueda realizar labores útiles. Sin embargo, es un elemento base: una plataforma para crear cosas más grandes, para que de allí podamos construir un sin fin de aplicaciones basadas no solamente en voz, sino en la unión con datos y/o cualquier otro sistema de cómputo que necesitamos que interactúe con un teléfono.

Asterisk puede instalarse en cualquier distribución de Linux, por lo que podemos usar Debian, Ubuntu, Mint, CentOS, RedHat, OpenSuse, etc. También se puede instalar en FreeBSD, MacOS y hay algunos ports para Windows, pero solo es en Linux en donde se tiene el soporte completo para su ejecución. Esto quiere decir que puedes tomar prácticamente cualquier PC que tengas y usando Asterisk la puedes convertir en un servidor de comunicaciones totalmente gratuito y open source.

Si quisiéramos hacer una analogía, Asterisk es el motor de un automovil. El motor es la parte base: sin él no se puede andar, pero por si solo no puede hacer gran cosa. Necesita de varias otras partes: asientos, volante, frenos, etc. para poder entregarnos la experiencia completa de poder conducir un vehículo.

Aquellas personas que optamos por especializarnos en Asterisk puro tenemos la opción de tomar 2 certificaciones que están disponibles: el dCAA (Digium Certified Asterisk Administrator) o el dCAP (Digium Certified Asterisk Professional). Ambas certificaciones son avaladas por Digium, y buscan reconocer que la persona que las posea cuenta con los conocimientos necesarios para instalar y configurar un servidor de comunicaciones basado en Asterisk, pero usando solamente la línea de comandos, con la que tenemos el máximo control, pero también la máxima complejidad.

Ventajas: 

  • Tienes total control: puedes hacer lo que quieras y actualizar en cualquier momento.
  • Al compilar, tu conmutador se ajustará a la arquitectura de tu PC.
  • Puedes elegir que módulos quieres compilar y cuales no.
  • Sin limitantes impuestas por interfases gráficas.

Desventajas:

  • Tienes que hacer todo a mano.
  • Programar por línea de comandos puede no ser tan natural para algunas personas.
  • Toma un mayor tiempo de implementación.
  • Puedes caer en muchos escenarios diferentes y enfrentarte con muchos problemas por resolver.

 

 

Para muchas personas, configurar un sistema a partir de línea de comandos puede resultar complicado. Por tal motivo, existen varios grupos, comunidades y empresas que han optado por desarrollar su propio sabor de Asterisk, ofreciendo distribuciones todo-en-uno que simplifican notablemente el proceso de instalación y puesta en marcha de un conmutador IP. Estas son algunas de las más famosas:

 

FreePBX

FreePBX es la interfaz gráfica de facto para Asterisk. Por si sola, FreePBX solamente es una interfaz web, pero hoy en día existe una distribución de FreePBX con la que puedes descargar e instalar un ISO, y en un solo paso instalar Linux (una versión modificada de CentOS) + Asterisk + MySQL + Apache + FreePBX.

FreePBX nos permite simplificar el trabajo de configuración básica de Asterisk. Utiliza PHP y MySQL, y lo que hace es crear una representación más sencilla de comprender para facilitar la creación de usuarios, troncales, extensiones y otros puntos fundamentales de la configuración de Asterisk.

FreePBX es un apoyo importante para la administración de Asterisk por personal no técnico. Originalmente desarrollado y mantenido por Schmooze Com Inc, a principios de 2015 fue adquirido por Sangoma, quien es el actual desarrollador del software.

Ventajas: 

  • Prácticamente es considerada la interfaz web estandard de Asterisk.
  • Mucho tiempo en desarrollo.
  • Amplia comunidad que la soporta.
  • Te ayuda a configurar Asterisk más rápidamente.
  • Prácticamente todas las distribuciones open source disponibles hacen uso de esta interfaz.

Desventajas:

  • No todos los módulos están soportados.
  • Para mayor control tienes que recurrir a la linea de comandos a final de cuentas.
  • La distro de FreePBX utiliza una versión modificada de CentOS, con la que se ha dificultado más la creación de soluciones libres que compitan directamente con las soluciones comerciales de Sangoma.

 

Elastix

Elastix es una distribución creada por Palosanto Solutions, cuya base de operaciones está en Guayaquil, Ecuador. Elastix surgió en el 2006 como una interfaz de tarificación de llamadas para Asterisk (una herramienta para interpretar los registros de llamadas que Asterisk genera), pero rápidamente se convirtió en una suite de comunicaciones que integra varios productos en uno, ya que en un solo ISO es posible instalar en un solo paso no solamente Asterisk, sino una interfaz web de configuración como FreePBX, un sistema de base de datos (MySQL), un sistema de mensajería instantánea (OpenFire), soporte para fax (Hylafax) y un CRM (vtiger) entre otras aplicaciones más que incluye. Hoy en día Elastix es la distribución basada en Asterisk que más seguidores tiene. Al igual que Asterisk, Elastix es un proyecto open source, con lo que es libre y gratuito.

Según el roadmap de Elastix con su próxima versión 4.0, se abandonará el uso de FreePBX para usar su propia interfaz de configuración. En las versiones 2.x e inferiores, la interfaz gráfica está “amarrada” con el uso de FreePBX 2.9 e inferiores, ya que Elastix usa un wrapper (para personalizarlo con su interfaz) y no soporta versiones posteriores del GUI.

Elastix no es un reemplazo de Asterisk, sino que es un conjunto de herramientas que unidas, nos permiten hacer de manera más sencilla las labores más comunes que haríamos utilizando un sistema desde línea de comandos.

Ventajas: 

  • Sistema todo en uno.
  • Soporte incluido para señalizaciones de América Latina (R2 MFC).
  • Amplia comunidad de apoyo.
  • Existen algunos addons desarrollados por la comunidad que te permiten hacer crecer las funcionalidades de Elastix.

Desventajas:

  • Tiempos de desarrollo muy largos. Principalmente desde que decidieron utilizar su propia interfaz web.
  • Instala muchos componentes por default, los quieras usar o no.
  • Su interfaz gráfica es muy lenta y pesada (comparada con FreePBX puro)
  • Algunos componentes no han sido actualizados en mucho tiempo por romper la arquitectura propia de Elastix (ej. FreePBX 2.8, Vtiger 5.2.1)
  • Al tener muchos componentes “extras”, también ha sido víctima de errores de seguridad de los mismos.
  • Relativa poca penetración en el mercado angloparlante. Su principal desarrollo ha sido en América Latina.

 

Trixbox

En sus inicios fue conocida como Asterisk@Home, y fue la primera distribución todo en uno que hacía uso de FreePBX + MySQL + PHP + CentOS + Asterisk para levantar un conmutador IP de manera rápida. En el 2006 cambia su nombre a Trixbox y se separa en las versiones CE (Community Edition) y Pro, que es el servicio de paga proporcionado por Fonality (la empresa que compró su desarrollo). Trixbox es más usada en el mercado norteamericano al estar creada originalmente en inglés y tener su base de operaciones en EUA. Sin embargo, al utilizar la misma interfaz de FreePBX, las funcionalidades que ofrece esta plataforma son casi las mismas que el resto de las distribuciones que se basan en ella.

Trixbox hace uso de un fork muy viejo de FreePBX, por lo que muchas de sus funcionalidades están atrasadas, comparadas con el resto de las distribuciones.

Ventajas: 

  • Mucho tiempo en el mercado.
  • La versión Pro te permite administrar tu PBX desde la nube.

Desventajas:

  • Sus componentes son muy viejos.
  • Sin soporte para el mercado de América Latina.
  • Poco desarrollo a la plataforma.

 

AsteriskNow

Es la distribución oficial de Digium, y al igual que las anteriores permite instalar CentOS + Asterisk en un solo paso. La diferencia primordial con las 2 anteriores es que esta es la distribución más ligera de todas, con lo que no se instalan extras (como Hud en Trixbox u Openfire, vtiger e Hylafax en Elastix). El FreePBX viene puro, por lo que puedes utilizar la versión más reciente y no estar amarrado a limitantes del desarrollador de la distribución. También es la distribución que más rápidamente ofrece las nuevas actualizaciones para Asterisk.

Un inconveniente quizá es que al ser mantenida por Digium no se ofrece el soporte precargado para las tarjetas PSTN de sus competidores (como Sangoma), por lo que si necesitas estos drivers tendrás que instalarlos por aparte.

Ventajas: 

  • Ligero.
  • Apoyado por Digium.

Desventajas:

  • Todos los extras deben ser instalados a mano.

 

PBX in a Flash

Tal como las anteriores, es una distro basada en CentOS + Asterisk + FreePBX. La principal ventaja que tiene sobre las otras es que es mantenida por un grupo de entusiastas que además de las funcionalidades de productos terminados como FreePBX, ofrecen su propia colección de mini-herramientas incluidas y fáciles de instalar con Asterisk, además de que no instalan software extra para el cual no tendremos uso (durante la instalación, tu determinas exactamente que quieres poner).

Es usada en mucho menor proporción que las anteriores, y su sistema de versionamiento puede resultar un poco complejo de entender. Sin embargo, tiene la gran ventaja de ser la más personalizable de las anteriores, por la gran cantidad de pequeños addons que es posible ponerle.

Ventajas: 

  • Altamente personalizable.
  • Diferentes versiones te permiten experimentar con diferentes componentes.

Desventajas:

  • Su sistema de versionamiento puede resultar confuso.
  • Requieres conexión a internet durante la instalación.
  • Reducida base de usuarios

 

 

Conclusiones

No importa la distribución que elijamos, todas ellas tienen algo en común: utilizan el software de Asterisk como una base para montar el resto de la experiencia para el usuario. Algunas instalan software extra, algunas te preguntan si lo quieres instalar, otras ni siquiera lo traen. ¿Cuál es la mejor de ellas para utilizar? Todo depende de nuestros hábitos, nuestros gustos y nuestra experiencia previa. Lo mejor que pueden hacer es decargarlas todas y probar una por una, hasta que sepan con cual se sienten más cómodos.

Si al final ninguna de ellas les resulta suficientemente buena, solo recuerden: todas estas distribuciones empezaron desde cero alguna vez, por lo que ustedes mismos podrían armar la suya propia con las herramientas que más les sirvan y desde allí, crear la herramienta más poderosa de comunicaciones que se ajustará completamente a sus necesidades. La decisión la tienen ustedes.

¡Suerte!

Christian Cabrera

Soy un ingenieron en comunicaciones con especial interés en el área de voz sobre IP y tecnologías sobre información. He usado Asterisk de manera diaria desde hace más de 12 años.En el 2011 co-fundé Enlaza Comunicaciones, una empresa que se especializa en brindar servicios profesionales de consultoría sobre voz sobre IP basadas en Asterisk.

  • Mario Angeles

    Me gusta Elastix,
    Aunque a mis clientes les instalo asterisk + freepbx
    y para mi uso personal utilizo asterik puro
    saludos

  • Rafael Ugim

    Excelente aclaracion!

  • Oscar

    Entiendo que si instalo asterisk puro puedo instalar como complemento freepbx. Pero si instalo asterisknow ya no es necesario?

    • Si instalas AsteriskNow tendrás la opción: irte por la opción “pura” o instalar FreePBX. Tu tienes el control.

      • Oscar

        Gracias Christian, era una duda muy básica, pero ya instalé AsteriskNow como trabajo de laboratorio.

        Muy buena guía por cierto.

  • Ing Cano

    Mi favorito es Elastix.

  • Andres

    Si tengo un Asterisk con FreePBX … ¿ Puedo migrarlo a Elastix ? ¿ o lo tengo que reinstalar por completo ?

  • Adan

    Alguien me puede decir un caso de exito en su empresa , donde de verdad haya un gran ahorro?

    • Misa

      Amigo con decirte que la empresa donde trabajo operaba avaya con carriers E1 y la facturacion ascendia a los $400,000 pesos mexicanos mensuales en puros consumos y soporte. Les ofrecí una solución y me integraron al área de telecom a implementar asterisk con telefonía centralizada con carriers SIP y hoy en día la facturación no rebasa los $150,000 pesos mexicanos mensuales …. y wala incluyendo mi salario…. Esto me da tentativa a ofrecer soluciones propias…… Tengo ideas en mente solo necesito colaboración……

      • fyou

        saludos yo e pensado abri un pequeño call center y dar sooporte tambien e ech oisntalaciones. tengo site tengo 2 servidores xeon de 1U con 4 ram maxicmo 16 con dos procesadores y doble nucleo. para ese proyecto que tengo tambien. yo estoy en el norte si te gusta platicar vemos aver como podemos faboresernos los 2 te dejo mi correo max@hillonetwork.net

  • ¿Cuánto es gran ahorro?

    Hemos instalado callcenters de 200 posiciones por costo de asesoría equivalentes a $5,000 USD y les damos soporte al mes por aldedor de $700 USD. Estos sistemas han reemplazado sistemas licenciados con costos de $50 USD por agente al mes.

    La inversión se pagó sola en un mes. Cada mes por concepto de soporte cobramos el equivalente de 15 agentes de renta. Los otros 185 les salen gratis.

    Eso me suena a gran ahorro.

    • dargoros

      jajajajajja co-co-combo breaker

  • Gary Flores

    Una cosa que es importantisimo de decir sobre PIAF (PBX In A Flash), en cuanto a lo tecnico es que no es una distribucion de ISO. Es decir, no empaquetan la distro en la imagen del disco. La instalacion solo instala CentOS, algunos paquetes y los scripts. Todo lo demas, lo importante, Asterisk, Freepbx, LibPRI, Dahdi, etc. lo baja y lo instala del “source”. Cuales son las ventajas? Pues que cuando quieres integrar la version nueva de cualqueir otro software o cuando te encuentras con un bug mal rollo de cualquiera de los componentes que naturalmente son inestables por ser opensource, es facilisimo volver a correr el script y reinstalar (desde source) el software importante.
    Hay muchisimos ejemplos donde esto te ayuda cuando eres integrador.
    Compras una tarjeta PRI nueva y los drivers de elastix de hace 3 años no te funcionan, tienes que reinstalar completito porque no hay camino estable para actualizar.
    El cliente quiere instalar la version nueva del CRM o de Jabber o lo que sea, y esta no funciona con las librerias PHP… A reinstalar se ha dicho, porque un YUM upgrade te rompe el sistema.
    PIAF es la opcion cuando cuando se trata de darle soporte inteligente a sistemas a largo plazo y tener armas para actualizar.
    Ahora, si sabes ingles… El foro de PIAF es de los mas poderosos en cuanto a numero de usuarios y calidad de consejo. Estan bien pesados y los meros buenos realmente creen en la filosofia open source.

    • navaismo

      Hola, lamentablemente esa es la impresión que da PIAF, pero lo cierto es que del mismo modo que Elastix es una distro que se cuelga del desarrollo que activamente están haciendo los devs de FreePBX, hace poco cuando FreePBX decidió cambiar algunas cosas los primeros en dar el grito y en quejarse fueron los usuarios de PIAF encabezados por Ward Mundy, dado que ellos embeben los scripts para gobernar el mundo(TM) si en FreePBX cambian algo a ellos no les parece. Porque ellos solo embeben miles de cosas inútiles sobre FreePBX y Asterisk.

      Sobre de usar PIAF para dar soporte inteligente lo dudo, lo mejor sería usar un asterisk plano y si quieres de ahí poner la GUI de FreePBX pero no veo la necesidad de un JUKEBOX, un Torrent y miles de cosas que en el campo solo ponen en riesgo los PBX.

      • boynas

        Tienes razon. Asterisk y FreePBX encima es lo mejor que puedes tener si sabes como instalarlo y te sientes capaz de resolver tus propios problemas usando Linux.
        Sin embargo, creo que los scripts de instalacion de PIAF, sin ningun otro script es la mejor manera de instalar desde fuente, facil y en un solo paso. Su implementacion de Fail2Ban es tambien un paso al frente para seguridad. Todos los scripts son opcionales.
        Juzgando por el tipo de preguntas de los usuarios de este blog, mi recomendacion sigue siendo PIAF por encima de Asterisk plano, solo por la capacidad que involucra, que seguramente tu si tienes. Gracias por responder.

  • AGomez

    Buen día, actualmente uso elastix debido a la interfaz que tiene respecto a la aplicación de encuestas telefónicas, pero estoy buscando algo más elaborado respecto a los resultados que se van arrojando pues en elastix solo se genera un archivo csv, alguna de las plataformas mencionadas puede generar tablas o gráficos con los resultados de las encuestas aplicadas?

    • Los resultados se pueden interpretar como tu desees. Tu tendrías que programar como se despliegan. Ya tenemos soluciones comerciales si estas interesado. Escribe nos desde enlaza.mx/contacto si quieres mas informes.

  • Pedro

    Hola, tengo una duda cuantas, llamadas simultaneas, se pueden realizar de un servidor dedicado con la siguiente configuración, usando a2billing y elastix

    Intel E3-1230V2

    3.20 GHz Recuadro Núcleo w/HT

    16 GB RAM

    1000 GB HDD in RAID 1

    5 TB Ancho de Banda

    2 IPs Gratis

    Yo quiero desarrollar una empresa como viber.com y estoy buscando información por los foros.

  • Gran Artículo…….Considero que la mejor instalación que se pueda realizar en un entorno de Producción es Instalando Centos+Asterisk+FreePbx.
    De esta Forma, sólo instalamos los módulos que necesitamos sin necesidad de cargar aplicaciones que no vamos a utilizar.