Sangoma acaba de anunciar que próximamente pondrá a la venta una nueva tarjeta de trascoding llamada Sangoma D100 que junto con un software especial será capaz de realizar el trascoding de hasta 480 llamadas simultaneas por cada tarjeta.
La Sangoma D100 estará disponible tanto para PCI como PCI Express utilizando un procesador incorporado en la tarjeta para realizar la conversión entre distintos códecs (como de G.711 a G.729) sin llegar a retrasar la comunicación ni cargar el propio procesador del sistema.
La tarjeta tendrá distintos niveles en función del número de canales simultaneos que se quiera convertir: 30, 90, 120, 240 ó 480 canales.
Además, el trascoding podrá realizarse desde cualquiera de los siguientes códecs sin que el códec original afecte al rendimiento ni al límite de canales:
G.711
G.722
G.722.1
G.726
G.729AB
GSM-FR, GSM-EFR
AMR, AMR-WB (G.722.2)
iLBC
L8 (Linear 8K), L16 (Linear 16K)
Por último, añadir que estará soportado tanto Asterisk como FreeSWITCH e incluirá una API para que cualquier usuario pueda realizar desarrollos propios con ella.
La fecha de lanzamiento aún no ha sido anunciada, aunque se espera que esté disponible en pocas semanas y sobre el coste, el modelo básico de 30 canales costará unos $750, un poco cara en comparación con la tarjeta TC400B de Digium que por el mismo precio realiza el trascoding de 120 canales, aunque aún así, la D100 tampoco es la más cara del mercado.
Poco más de un año han tardado los desarrolladores en hacer realidad una petición bastante interesante que hicieran nuestros compañeros Jon Bonilla y Saúl Ibarra cuando, cansados de que cada nueva versión de Asterisk 1.4 que añadía una nueva característica, volvían a aparecer antiguos bugs que ya habían sido solucionado, las conocidas «regresiones» que aparecían en 1.4 y más intensamente en 1.6.
El objetivo principal del debate era una crítica constructiva sobre el futuro del desarrollo de Asterisk y más concretamente la forma de publicación de versiones que defendía Russell Bryant de forma que varias ramas estuviesen en producción de forma simultaneamente como lo está haciendo la versión de Asterisk 1.6, así podemos ver Asterisk 1.6.0.26, 1.6.1.18 y 1.6.2.6 como versiones supuestamente estables.
Finalmente se optó para la rama 1.8 como versión LTS (Long Term Support) quedando como única rama lo que hará que «en teoría» pasará a ser mucho más estable, pero mientras tanto, se siguió pensando en nuevos mecanismos que permitieran obtener versiones de Asterisk mucho más estables para entornos en producción.
Tras esta discusión en la que participaron muchos desarrolladores explicando el porqué de la política de versiones que sigue Asterisk 1.6, y que era necesario algún cambio para evitar esas «regresiones» en futuras versiones, decidieron crear una API especial para que el sistema se testeara de forma automática para verificar que todas las características que funcionan en una versión, sigan funcionando en la siguiente.
Poco más de un año ocurrió desde el primer mensaje, y se ve que han estado trabajando en ello porque ayer Leif Madsen ha publicado en el blog de Asterisk un ejemplo práctico sobre cómo ejecutar esos auto-tests para verificar que las características / servicios de las nuevas versiones sigan funcionando, así que ni cortos ni perezosos nos hemos puesto a probarlo nosotros mismos y verificar que realmente funciona como dice…
Estos días en los que la publicación de Asterisk 1.8 está tan cerca, hemos empezado a comentar algunas novedades con respecto a qué es Asterisk 1.8, y algunas de las características que se han hecho públicas en distintos medios de Internet.
Esta versión es quizá más esperada de lo que la mayoría de usuarios creen y aunque las distribuciones enlatadas están empezando a plantearse Asterisk 1.6, es un movimiento complicado ya que en cuanto aparezca Asterisk 1.8 va a traer tantas modificaciones que para el usuario final que no haya trabajado antes con Asterisk 1.6, le va a resultar especialmente complicado adaptarse a esta nueva versión.
No obstante, hemos hecho una recopilación de las principales novedades y las hemos reunido en este artículo para que cualquiera que esté interesado en adentrarse en esta nueva versión y que conozca bien las anteriores versiones, pueda darse cuenta de lo que va a tener que aprender si va a querer aprovechar al máximo las características de esta nueva versión.
Por supuesto, los cambios son principalmente internos a nivel de desarrollo, aunque me ha llamado la atención algunas de las novedades que Kevin P. Flemming anunció que está planteado incluir en Asterisk 1.8 que como mínimo son impresionantes…
Leif Madsen hizo hace poco un pequeño resumen de las características más destacadas de la versión de Asterisk 1.6.2 que salió a la luz a finales de Enero (y que no aconsejo utilizar en producción salvo si nos interesa alguna de las características interesantes como soporte de CEL o algunas de las que vamos a comentar ahora) aunque he de reconocer que si los usuarios no «avanzan» en el uso de nuevas versiones, el proyecto quedaría totalmente paralizado.
Entre las novedades que destaca Leif, las más interesantes son:
Utilización de una variable de canal ATTENDED_TRANSFER_COMPLETE_SOUND que, ajustando el valor a una locución, esta será reproducida al destino de la transferencia atendida (quien recibe la llamada). -Función muy parecida a la del ParkAndAnnounce- 🙂
Soporte de monitorización MWI en servidores remotos y estado disponible como buzón de voz (ya no haría falta que nuestro terminal esté registrado en el Asterisk que almacena el mensaje del buzón de voz, podremos ver la indicación aunque se almacene en otro sistema conectado por SIP)
Chan_DAHDI soporta nativamente Open MFC/R2 del que ya hablamos hace algún tiempo.
Adiós a la dependencia de DAHDI para la obtención de una señal de timming, Asterisk genera la suya propia gracias al módulo res_timing_pthread.
Añadida nueva aplicación del Dialplan CURLOPT que permite añadir valores para mejorar la funcionalidad de la aplicación CURL como soporte para cookies, proxies, contraseñas, etc.
Mejora en la depuración de las aplicaciones de ODBC.
func_odbc soporta transacciones mediante varias querys.
Añadido nuevo motor llamado ConfBridge que permite realizar conferencias sin depender de DAHDI.
Simplificación del dialplan mediante el uso de la palabra «same» para referenciar «la misma extensión»:
exten => 123,1,NoOp(something)
same => n,SomethingElse()
Con la nueva versión de Asterisk, muchos comandos del CLI han sido modificados, aunque existe un nuevo archivo de configuración llamado cli_aliases.conf que nos permitirá configurar la «compatibilidad» del CLI con la versión que queramos, y poder hacer el paso de una versión a otra de una forma menos traumática.
Unos cuantos cambios que seguro que se agradecen… aunque no tanto como los que se esperan para la futura (y confiemos que más estable) versión de Asterisk 1.8. 😀
Hace unos años, en la época de Asterisk 1.2 en un sistema de un compañero empecé a ver unos mensajes de error bastante curiosos que se repetían continuamente en la consola CLI:
Lo curioso es que este ensaje de error se repetía cada muy poco tiempo, así que un poco mosqueado, pese a que todo el sistema funcionaba correctamente, decidí investigar el porqué de este mensaje.
Tras hace un ‘pri intense debug span 1‘ durante varios minutos y revisar toda esa cantidad ingente de datos llegué al mensaje que provocaba el error:
Por lo que me dí cuenta que ese error era simplemente la interpretación de un tipo de mensaje AOC (Advise of Charge) dentro del conjunto de mensajes ‘cs5‘ definidos como «Mensajes personalizados del Proveedor», por lo que estaba claro, un tipo de mensaje que envía el proveedor para informar los «pasos» o los «momentos en los que aumenta el coste de esa llamada» a fin de que el sistema pueda reconocerlo y sea capaz de mostrar el coste de la llamada en tiempo real (por ejemplo para una cabina de teléfono, un locutorio o cualquier otro caso).
Asterisk no lo reconocía como tal, así que rellené el ticket en issues.asterisk.org para comentar este mensaje y que, por lo menos dejase de aparecer como «mensaje de error«.
Pues me entero gracias a la lista Asterisk-DEV y a la web VentureVoIP que David Vossel está desarrollando el soporte de AOC para Asterisk de forma que sea capaz de entender y actuar en función de los mensajes que reciba del proveedor, por lo que David está interesado en encontrar a gente que necesite de este soporte para que pueda probar lo que lleva hecho y así que el soporte de esta característica sea lo más real, efectivo y útil posible.
Aunque la esperada versión de Asterisk 1.8 no verá la luz hasta dentro de muy pocos meses, nos empiezan a llegar algunas novedades sobre las mejoras que se están preparando entre ellas la incorporación de una mejora considerable en el soporte de Fax (principalmente el soporte de T.38) que en Asterisk 1.4 era bastante rudimentario (únicamente permitía pasar paquetes T.38 mediante SIP e incluso tenía ciertas incompatibilidades en función del tipo de gateway que se utilizara), y en Asterisk 1.6 se mejoró un poco aunque seguía sin ser todo lo que realmente se esperaba de él (la implantación de Steve Underwood con la creación del spandsp y de algunos módulos extras permitieron mejorar este soporte, aunque no era todo lo que en un principio se esperó que fuera) y se espera que en Asterisk 1.8 se pueda contar con un soporte completo de faxes (tanto de T.30 -la forma habitual a través de audio- como de T.38 -digitalizando el fax y permitiendo una confirmación de recepción lo que aseguraría el envío y la recepción de faxes entre dispositivos que utilizan este protocolo-).
Kevin P. Flemming anunciaba el otro día que varios desarrolladores de Digium se habían puesto manos a la obra para plantear y empezar a desarrollar un soporte en condiciones para los faxes (pese a que utilizar faxes, es y seguirá siendo, una tecnología totalmente obsoleta y que debería desaparecer).
Gracias a la experiencia obtenida por el desarrollo del módulo comercial Fax for Asterisk de Digium que mejora considerablemente la velocidad y la calidad de envío y recepción de faxes (que por cierto, parece ser que ya es compatible con sistemas de 64bits), Asterisk 1.8 contará con una implementación similar utilizando un stack propio de forma que este soporte sí se pueda licenciar como un producto GPL y pueda integrarse en la próxima versión de Asterisk.
De forma que, aunque en Asterisk 1.6 el soporte de Faxes es ya bastante bueno, Asterisk 1.8 contará con un soporte mucho mejor y que hará las delicias de aquellos usuarios que utilicen faxes.
Hace un par de semanas leí que Digium había empezado a organizar un evento que considero bastante instructivo para aquellas empresas que tienen curiosidad sobre Asterisk y aún no conocen las ventajas que les supone frente a otros sistemas.
Este evento se realiza semanalmente y básicamente responde a estas preguntas:
– ¿Qué es Asterisk? – ¿Qué puedo hacer con Asterisk? – ¿Qué beneficios tiene el software libre para mí? – ¿Qué versión de Asterisk es la más adecuada? – ¿Dónde puedo conseguir ayuda y soporte profesional? – ¿Cómo puedo empezar?
Si conoces a alguien que aún no conozca las respuestas a estas y otras preguntas puede interesarle este webminar completamente gratuito y que únicamente hace falta registrarse para recibir la dirección web para acceder.
El próximo webminar será el próximo 22 de Abril (mañana) de 19:00 a 20:00 GMT+1 y podeis inscribiros en esta web:
Tras una larga y árdua semana llena de preguntas con sus respuestas, uno hace una ligera reflexión sobre lo que realmente significa asistir a un curso de Asterisk donde cualquiera puede acercarse en cualquier momento para preguntar cualquier duda que tenga sobre algo relacionado con la VoIP o sobre Asterisk, es una semana realmente dura, no únicamente por la cantidad de contenido y la «dulzura» con la que se intenta enseñar, si no por el buen ambiente que reina cada uno de los momentos y que sigue demostrando que tras Asterisk hay realmente gente con ganas de aprender, pero ante todo, divertirse.
Asterisk Bilbao 2010 durante un laboratorio
Esta semana se ha celebrado el curso oficial de Digium Asterisk Advanced en Bilbao con la inestimable ayuda de la gente de Irontec, y que gracias al buen ambiente de los asistentes, ha sido una semana realmente divertida y muy productiva.
El temario es similar al de otras ocasiones, donde se cubren los principales aspectos básicos de Asterisk como programación de dialplan, telefonía, VoIP, callcenters, redes orientadas a VoIP, desarrollo con Asterisk y algunas curiosidades y ejemplos interesantes sobre las posibilidades de Asterisk en diferentes infraestructuras y con un gran número de casos particulares.
Cualquier momento es bueno para hacer una pregunta, exponer un problema y sobre todo conseguir una respuesta, algo que realmente se consigue gracias a momentos especiales como la hora de la comida, la cena o el «descanso» de 15 minutos para un café. Uno en esos momentos se da cuenta lo importante que es el trato amigable que tanto valor da a estos cursos y por el que es uno de los preferidos por los usuarios.
De poco sirve un temario ultra-completo, unos conceptos teóricos excepcionales, si no se consigue ilusionar a una persona que asiste al curso de forma que llegue a entender, comprender y captar, aunque sea durante unos instantes, la filosofía que hay detrás de todo un sistema software libre como es Asterisk. De poco sirve un profesor que sepa muchísimo si no sabe ponerse a la altura de la gente, mirar arriba y ser capaz de enseñar a alguien a levantarse. De poco sirve un curso si cuando termina, no se ha aprendido nada.
Al final de la semana, como viene siendo tradición en estos cursos, se celebra el examen de certificación dCap para todo aquel que, estando o no, en el curso, quiera realizar el examen para obtener la certificación de profesional de Asterisk de la mano de Digium, así que suerte a todos!
Esto y mucho más es el curso de Asterisk Advanced, un curso que, además de completo y centrado en Asterisk, y donde se aprende tanto los conceptos básicos como los más minúsculos detalles que pueden salvarnos en un momento crítico y donde el estado de ánimo es esencial para enmarcar un curso de caracter avanzado y donde al final la gente no son «alumnos» si no grandes colegas con un interés común como es Asterisk.
He pasado una semana realmente agotadora, pero sin duda, con una excelente compañía.
Gracias a todos los que habeis venido y espero que nos veamos pronto!
Desde hace algún tiempo venía comentando por aquí, que hay ciertas personas (por llamarlas de alguna forma) que aprovechan alguna configuración incorrecta, algo que se dejó de la mano de algún interfaz web y no se ha comprobado que es correcto, o simplemente el descuido de alguna modificación al ir a hacer alguna prueba, para hacer llamadas a costa de nuestros sistemas. Ya hablamos de esto en el artículo «La VoIP mal configurada llama a Cuba«.
Tras conocer un par de casos críticos y dolorosos, se me ocurrió hacer una pequeña utilidad, una herramienta básica, sencilla algo rápido pero útil que permitiese a cualquiera saber si su sistema SIP conectado a Internet, tiene una configuración que permita realizar este tipo de ataques, de forma que indicando los parámetros mínimos, podremos saber qué respondería el servidor en caso de ataque.
Esta herramienta lo único que hace es enviar al servidor indicado, un paquete INVITE un poco «tuneado» de forma que la herramienta «simulará» a un atacante intentando utilizar nuestro servidor para hacer una llamada, pero en lugar de a algún país extraño, será a nuestro móvil. Si conseguimos hacer una llamada (y recibirla), entonces es que algo no va bien y tendremos que revisar la configuración.
Para aquellos interesados en verificar que su configuración es segura, os recomiendo apuntar esta web en los favoritos y hacer las pruebas correctas para aseguraros que estais a salvo de los ataques de estos «personajes».
Antes de nada, agradecer a mi colega Iñaki Baz por sus consejos a la hora de generar el INVITE ;D
Hay que tener en cuenta que si el resultado del test es Trying, significa que la llamada se está procesando y por lo tanto debemos revisar la configuración para evitar este resultado.
Leo en VentureVoIP que Matthew Fredrickson acaba de anunciar el resultado de muchos días de desarrollo en distintos proyectos y entre ellos, muchas mejoras en el soporte del canal SS7 del que ya hemos hablado en alguna otra ocasión en Sinologic.
Entre estas mejoras se encuentra:
Soporte libss7 en modo «cluster».
Básicamente, puedes tener varios sistemas Asterisk compartiendo enlaces de señalización utilizando este código. Aunque la señalización sea físicamente terminada en otras máquinas, puedes conectar varios E1/T1 en otros Asterisk y virtualmente utilizar los enlaces de señalización de estas otras.
Un nuevo canal llamado chan_ccs, que permite entre otras cosas, controlar mediagateways MGCP para enlaces de voz, en lugar de tener que ser utilizado por un Asterisk. Para hacer el chan_ccs, ha tenido que modificarse el chan_mgcp para que Asterisk pueda actuar como un media gateway. Esto significa que puedes tener escalabilidad real TDM a través de un Asterisk de la misma forma que puedes utilizar Asterisk para reenviar señalización SIP sin tocar el audio RTP.
En esencia, esto convierte a Asterisk en un verdadero ‘softswitch’ permitiendo conectar nativamente varios media gateways y reenviar la señalización a otros sistemas que manejarán el RTP (incluso otros media gateways).
Esto es una gran noticia, aunque todavía está en fase de pruebas, por lo que Matthew pide que si alguien puede hacerle pruebas, podría llegar a tener un soporte bastante interesante y sobre todo, estable.