Nos levantábamos hace unos días con la noticia de la publicación de la Release Candidate de Asterisk 15 (la nueva versión de Asterisk) y que llevábamos tiempo esperando por lo que ello significa.
Hace poco veíamos como el equipo de desarrollo de Asterisk anunciaba que Asterisk 15 es, posiblemente, la versión más grande de Asterisk de los últimos 10 años. Este comentario parecer un poco exagerado, pero si analizamos los cambios internos que se han producido en las últimas versiones, empezamos a ver la realidad de dicha afirmación. Lo importante de esta versión son los cambios a nivel interno, una apuesta de futuro que sirve para que Asterisk siga creciendo con energía y vitalidad, al contrario que muchos software que nacen y se basan en parches sobre parches, lo que termina ocasionando un «spaguetti code» que pocos desarrolladores son capaces de manejar.
El objetivo es que Asterisk 15 esté disponible en octubre de 2017 y que tenga actualizaciones durante al menos, dos años. *Corrección*: Tal y como nos apunta @jbmanwe, Asterisk 15, aunque por el número debería ser una LTS, es una versión de desarrollo como Asterisk 14 (no LTS)
¿Qué trae de nuevo Asterisk 15?
Como suele ocurrir, uno de los principales intereses cuando aparece una nueva versión es ver, qué trae de nuevo:
- Mejor soporte de WebRTC: Si bien Asterisk 14 ya presumía de soportar WebRTC, no va a ser hasta Asterisk 15 cuando el soporte de WebRTC sea completo. Un simple parámetro como «webrtc=yes» en la configuración ajustará todos los parámetros necesarios (NAT, SRTP, Opus, etc.) para poder utilizar WebRTC con Asterisk.
- Introducción al concepto de Stream para la gestión de flujos de RTP. Lo que permite una mejor gestión del media ahora que también incluye soporte de WebRTC. También mejora el tema de videoconferencias, multiconferencias, etc. para ser más descriptivo y poder gestionarlo mejor.
- Mejora en el soporte de PJSIP: Si bien Asterisk 12 y 13 ya incluía soporte de PJSIP, no será hasta Asterisk 15 cuando realmente el soporte sea completo. Las ventajas de PJSIP en Asterisk las hemos comentado hasta la saciedad, pero si bien el equipo de desarrollo de Asterisk había «bloqueado» una versión de PJProject (el proyecto detrás de PJSIP) para compilar con Asterisk y evitar problemas, en Asterisk 15 esta versión estará incluida por defecto y únicamente si queremos utilizar la última versión de PJSIP, tendremos que compilar con un flag especial.
- Cambios en el esqueleto de Asterisk: Como hemos dicho muchas veces en Sinologic, Asterisk ha pasado a ser un software muy maduro creado por muchos tipos de desarrolladores que trabajan en muchas empresas, por lo que se ha tenido que trabajar muy duro en conseguir un código fácil de entender, reutilizable, y evolucionable. Por esta razón, desde Asterisk 11 se ha estado modificando el núcleo para convertir el código en objetos, lo que permite una gestión de memoria mucho más intuitiva y práctica, a la vez que se crea una capa de abstracción que permite a otros desarrolladores despreocuparse de ciertos conceptos fuertemente relacionados con el código.
- Mejoras en características generales: Quizá lo más interesante para todos serían las novedades en las características generales, pero para eso habrá que examinar la versión más detenidamente. Lo único que de momento sabemos es que se han modificado muchas partes del código para mejorar su potencia, reducir el consumo y aumentar la compatibilidad con sistemas como Docker, contenedores y plataformas como systemd… No obstante, también se ha incluido muchas mejoras en aplicaciones, funciones y características incluidas en Asterisk y que seguro que todos los usuarios de Asterisk agradeceremos pero que tendremos que ver con tranquilidad.
Asterisk ya no es para todo el mundo.
Tristemente, y a medida que la VoIP se hace más y más común entre los mortales, las herramientas pasan a otro nivel. Si bien los que comenzamos hace algún tiempo seguimos con paciencia e ilusión las nuevas versiones de un software como Asterisk o Kamailio, la mayor parte de los usuarios apenas conocen este software y únicamente se centran en «el software que lo haga todo» ya sea 3CX, Issabel o FreePBX. Esto no es ningún caso malo, es simplemente la evolución natural de meter a más y más empresas en un mundo que desconocen y que, puestos a aprender, prefieren algo que les haga ganar dinero.
Asterisk (y también otras aplicaciones como freeSwitch, Kamailio, OpenSIPs, etc.) ha quedado relegado como software motor para aquellos profesionales que quieren profundizar en las posibilidades que les otorga para poder ofrecer cosas fuera del ámbito «comercial» y cotidiano y, como hemos dicho tantas veces, tratar a estas herramientas como herramientas que forman parte de un todo y no como sistemas «todo en uno».
Todo cambia, evoluciona y si bien la VoIP ha madurado y evolucionado, también los usuarios lo han hecho. El mercado se hace más grande y hay más personas que se han metido en el mundo de la VoIP, pese a que no sepan cómo funciona el protocolo SIP, qué es WebRTC o porqué interesa usar el códec Opus en lugar de Alaw. Hay espacio para todos y la VoIP es una rama propiamente dicha que sigue creciendo y generando sus propias ramas donde hacer crecer las hojas.