Etiqueta: tutorial

  • Cómo instalar y registrar el códec G.729 de Digium

    keyPuede parecer una tontería y seguro que aquellos que ya han trabajado con este códec, el hecho de registrarlo puede parecer una tontería, no obstante hace poco conocí a una persona que quería registrar varias decenas de licencias en una máquina y al ser la primera vez, tenía un poco de miedo, así que vamos a explicarlo para que no quede la más mínima duda.

    Lo primero es comprender por qué hace falta la licencia y la diferencia entre el códec G.729 de Digium y la «free«. Una vez entendido esto y viendo que lo vamos a usar en producción, debemos adquirir tantas licencias como canales queramos convertir. Esto es, si Asterisk necesita convertir de Alaw a G.729 o viceversa, por ejemplo si tenemos teléfonos con G.729 y queremos hacer llamadas por una tarjeta de primario, o bien si queremos que nuestros usuarios consulten el buzón de voz, etc.

    (más…)

  • Cómo solucionar problemas de audio en VoIP

    frustracion

    Vamos a intentar resolver uno de los problemas más típicos y que siempre suelen tener los usuarios de VoIP más nuevos. Es la falta de audio cuando consigue hacer una llamada. Esto es un problema recurrente, que no importa cuantas veces se conteste, siempre ocurren modificaciones que invalidan «en teoría» las posibles soluciones que se le ofrecen.

    Hemos intentado retomar este tipo de preguntas y poder responderlas convenientemente para que queden definitivamente resueltas, aunque para ello haya que leer un poco y conocer, no solo el problema, si no los motivos por lo que ocurren y cómo solucionarlo.

    Vamos a afrontar el problema de falta de audio desde dos puntos de vista muy diferentes:

    – Dentro de la misma red (algo que puede ocurrir en algunos casos puntuales cuando la configuración es desastrosa)

    – Dentro y fuera de la red (algo más común y más difícil de solucionar en algunos casos en los que todo se nos vuelve en nuestra contra)

    Sea como fuere, la configuración es importante tenerla correcta, clara y lo más resumida posible, de poco nos sirve descomentar algunas opciones del sip.conf si no sabemos qué parámetros existen o no, por lo que recomiendo utilizar el siguienet comando para obtener un archivo sip.conf limpio, que nos sirva para descubrir qué parámetros tenemos activos y cual no:

    cat /etc/asterisk/sip.conf |egrep -v «^;|^ |^\s+» |sed «/^$/d» |sed «s/\[/\n[/»

    Aún así, vamos a analizar las distintas posibilidades de problemas de falta de audio viendo por qué se producen y cómo solucionarlo…

    (más…)

  • Cómo iniciarse en VoIP ¿qué hacer antes de empezar?

    constructionUna de las preguntas más frecuentes entre las personas que quieren iniciarse en el mundo de la VoIP es ¿qué utilizar? ¿Asterisk? ¿Freeswitch? ¿Kamailio? ¿OpenSIPs? ¿3CX? ¿qué hay que comprar? ¿cuánto cuesta? cientos de preguntas que si bien podrían ser respondidas por cualquier usuario con un mínimo de conocimientos, las mejores respuestas no son quizás lo que el usuario busca, ya que este suele querer respuestas rápidas, sencillas y cortas, aunque cada pregunta debería responderse de una forma mucho más extensa.

    Cuando eres niño, tienes fuerza, tienes tiempo, pero no tienes dinero.
    Cuando eres adulto, tienes dinero, tienes fuerza, pero no tienes tiempo.
    Cuando eres mayor, tienes dinero, tienes tiempo, pero ya no tienes fuerza.

    La VoIP, como cualquier otro campo técnico es tan sencillo o tan complejo como queramos. Podemos simplificar todo hasta el punto de descolgar el teléfono, contratar a una empresa para que nos haga lo que necesitamos y pagar la tarifa. Esto sin duda no será lo más económico pero sí será lo más rápido. Es lo ideal si necesitamos montar un sistema VoIP en un tiempo record y con ciertas garantías. La profesionalidad nunca es barata por mucho que nos guste que así sea.

    Por otro lado también puede ser tan económico como queramos, una máquina virtual, un Asterisk, todo softphones, varios operadores IP entre los que se encuentren algunos que ofrezcan tarifas gratuitas a ciertos destinos o a precios muy económicos, y todo dependerá de nuestra destreza y arte en la configuración de sistemas y softphones así como nuestros conocimientos técnicos sobre VoIP para evitar los problemas que nos ocurrirá durante el despliegue. No será rápido, tampoco será la mejor solución, pero eso sí, será muy económico.

    Finalmente la mejor opción suele estar entre los dos extremos, contar con la ayuda de profesionales para acelerar el aprendizaje y disponer de soporte pero ahorramos al aprender a hacerlo nosotros mismos. El problema entonces será el tiempo. Por mucha documentación que haya disponible en internet, aprender lleva su tiempo, y si queremos reducir este tiempo, no será gratis, pero tampoco nos costará tanto como contratar a una empresa para que lo haga todo. De esta forma, la próxima vez podremos hacerlo nosotros. Habremos aprendido a hacerlo.

    (más…)

  • Cómo utilizar el ASR de Google en Asterisk

    En un anterior artículo, enseñamos cómo utilizar el servicio TextToSpeech de Google (que esta empresa utiliza en su servicio de traducción), y se nos quedó en el tintero escribir cómo configurar otro servicio «interno» de Google para nuestro propio beneficio y, si podemos conectarlo a nuestro Asterisk, mejor que mejor.

    En este caso, el servicio «interno» a utilizar llamará mucho la atención, ya que es un servicio muy útil y no precisamente económico: Reconocimiento de Voz (ASR)

    El reconocedor de voz de Google es, en mi opinión, uno de los mejores que existen (no únicamente por ser gratuito) si no porque es capaz de reconocer una gramática abierta (no limitada a ciertas palabras), varios idiomas y prácticamente con cualquier acento. Sin duda, lo que lo hace un firme candidato a ser uno de los mejores, es que «es gratis» (mientras no se abuse y Google lo permita).

    Vamos a ver cómo podemos hacer uso de este ASR gratuito en Google para un Asterisk «personal» o «no profesional«, ya que al depender de un servicio no oficial de Google, no podemos asegurar que vaya a funcionar dentro de unas horas, unos días o unas semanas… por lo que no sirve para ofrecerlo como un servicio de cara a una empresa, ya que para eso, yo recomendaría otros servicios más profesionales como el ASR de Verbio que ya ha demostrado su valía en cientos de instalaciones.

    (más…)

  • Cómo instalar el Asterisk 10 más completo

    Una de las cosas recomendadas para ver el potencial de Asterisk, comprobar si todo funciona correctamente y hacer pruebas, es instalar la última versión disponible, aplicarle una configuración que tengamos ya, adaptarla a la nueva versión y ver los cambios que trae dicha versión, para ver cómo poder exprimir estos cambios, con objeto de aplicarlo a los distintos proyectos que surgen.

    En muchas ocasiones, la última versión no es seguramente la más idónea para utilizar en un proyecto, pero es imprescindible conocer el comportamiento, las características y las novedades que trae la última versión. Si un cliente nos pidiera una característica que únicamente trae la última versión, ¿le vas a decir que no se puede porque no viene implementada en la versión antigua que utilizas habitualmente?  muy al contrario, lo importante es conocer las novedades, ir siempre un paso por delante y hacer el mayor número de pruebas posibles para cuando la versión se convierta en «estable», poder utilizarla con conocimiento.

    Vamos a explicar los pasos que hay que seguir para tener un sistema completo con la mayor cantidad de características posibles habilitadas. Esto seguramente no sea práctico ¿para qué queremos un sistema Asterisk con absolutamente todas las características habilitadas?, pero bueno, seguramente para hacer alguna prueba o una demostración, nos puede servir. 🙂

    (más…)

  • Entendiendo un PRI INTENSIVE DEBUG SPAN X

    Una línea de primario no es un tipo de línea que podamos tener cómodamente en casa ya que está pensado principalmente para empresas con un gran número de llamadas entrantes y/o salientes, por lo que muchos de los usuarios que no trabajan con este tipo de líneas se encuentran con un gran vacío de documentación útil que pueda ayudarles a detectar dónde están los errores. Desde Sinologic vamos a dar algunas claves importantes para detectar errores, y evitar el «choque» que puede presentarse con el operador cuando una línea de este tipo no funciona como debiera.

    No deberíamos decir siquiera que, un primario es una comunicación entre dos sistemas (nuestro Asterisk y el operador) y, como tal, debemos tener en común los distintos parámetros que conforman la configuración de este tipo de líneas. De poco nos sirve que el operador nos provea de un primario y no nos indique la señalización, quién actúa como fuente de reloj o si disponemos de CRC4 o no. También hay que tener en cuenta que, mientras en Europa, Ásia y África se sigue un estándar bastante estricto sobre los parámetros, en América, Australia o Japón no existe esta «ventaja» y hay que conocer bastante bien todos los parámetros de la línea de primarios que nos ofrece el operador para conseguir configurarla correctamente.

    Pero aún así nos encontramos con que, aun habiendo configurado «aparentemente» bien el primario, aparecen errores, caídas de llamadas, bloqueos de canales, imposibilidad de realizar llamadas, etc. Lo primero que hemos hecho es aumentar el debug del sistema buscando errores que puedan darse (en el archivo /etc/asterisk/logger.conf, habilitando el parámetro ‘debug‘ en ‘console’ o en ‘full’) de esta forma podremos ver si aparece algún mensaje de error que no debería ser, identificándola, entendiendo qué dice y buscando información sobre qué significa y cómo solucionarla.

    (más…)

  • Cómo programar un AGI en PHP sin librerías raras

    Cómo programar un AGI en PHP sin librerías raras

    Muchas personas que están aprendiendo Asterisk y que ya conocen las posibilidades de esta aplicación, quieren empezar a desarrollar sus propias soluciones para que Asterisk pueda interactuar con bases de datos, archivos del sistema de ficheros y en función de algún valor, conseguir que Asterisk haga una llamada, reproduzca una locución, o mil cosas más.

    Esto se realiza gracias a un concepto en Asterisk llamado AGI (Asterisk Gateway Interface) y que viene a ser un programa desarrollado por nosotros (o por otro usuario) que Asterisk ejecuta (importante esto último) y que sirve para que interactúe Asterisk con el sistema Linux, pudiendo acceder a archivos locales, puertos físicos (usb, puertos series, paralelos, etc.), bases de datos, páginas webs, y prácticamente cualquier otra cosa que pueda manejar nuestro sistema Linux.

    No voy a entrar en la «profundidad» en la que se entra en el curso Asterisk Advanced, pero sí ofrecer un esqueleto básico de un AGI programado en PHP sin necesidad de librerías externas y utilizando una programación muy sencilla (ideal para empezar a familiarizarse con este tipo de sistemas de integración Asterisk-*) (más…)

  • Cómo configurar IPv6 en Linux

    Mucho se habla de las bondades del IPV6, de que cuando este sistema se aplique globalmente, el proveedor nos ofrecerá no una dirección IP si no un rango de 16 millones de IP externas:

    IPv6 permite actualmente que cada persona en la tierra tenga asignada varios millones de IPs, ya que puede implementarse con 2128 (3.4×1038 hosts direccionables). La ventaja con respecto a la dirección IPv4 es obvia en cuanto a su capacidad de direccionamiento. Vía Wikipedia.

    No obstante es complicado encontrar un paso a paso básico para que una persona, en su ajetreo diario, encuentre el tiempo necesario para aprender cómo funciona esto del IPv6 y más importante aún, cómo configurarlo de una forma fácil y rápida.

    Para ello, para estas personas que tienen curiosidad y quieren empezar a trabajar con IPv6 o simplemente probarlo, vamos a explicarlo a continuación:

    Mucho se habla de las bondades del IPV6, de que cuando este sistema se aplique globalmente, el proveedor nos ofrecerá no una dirección IP si no un rango de 16 millones de IP externas:

    IPv6 permite actualmente que cada persona en la tierra tenga asignada varios millones de IPs, ya que puede implementarse con 2128 (3.4×1038 hosts direccionables). La ventaja con respecto a la dirección IPv4 es obvia en cuanto a su capacidad de direccionamiento. Vía Wikipedia.

    No obstante es complicado encontrar un paso a paso básico para que una persona, en su ajetreo diario, encuentre el tiempo necesario para aprender cómo funciona esto del IPv6 y más importante aún, cómo configurarlo de una forma fácil y rápida.

    Para ello, para estas personas que tienen curiosidad y quieren empezar a trabajar con IPv6 o simplemente probarlo, vamos a explicarlo a continuación:

    (más…)

  • Cómo interconectar Asterisk con Kamailio 3.1

    Asipto, la empresa detrás del proyecto Kamailio acaba de presentar un fantástico tutorial donde explican paso a paso cómo interconectar Asterisk 1.6.2 con la última versión estable de Kamailio.

    Cualquiera que trabaje o que conozca un poco qué es y cómo funciona Kamailio, ya sabrá perfectamente los pasos para realizar esta interconexión, pero es un «lujo» poder disponer de todos los pasos explicados de una forma sencilla y clara, para poder instalar nuestro propio sistema Kamailio + Asterisk sin complicaciones.

    No quiero adelantar nada, pero muy pronto veremos muchas cosas de estas más a menudo. 😛

    Que ustedes lo disfruten:

    http://kb.asipto.com/asterisk:realtime:kamailio-3.1.x-asterisk-1.6.2-astdb

  • Cómo compilar e instalar Asterisk-SCF

    Aquellos que leyeron la presentación de Asterisk-SCF, sabrán que es un nuevo proyecto creado desde cero y que poco tiene de parecido con el conocido Asterisk del que estamos acostumbrados a utilizar.

    Cuando se publicó la primera versión, muchas personas intentaron instalarla sin éxito, pero con el tiempo se ha mejorado la documentación y los requisitos necesarios para poder instalarlo y compilarlo sin tener muchos problemas.

    Hay que decir que, a día de hoy Asterisk-SCF sigue siendo inestable y no para un sistema en producción pero aún así, queremos mostraros los pasos para instalar esta versión y que nos vayamos familiarizando con este sistema.

    La instalación es diferente según se trate de un sistema Linux, MacosX o Windows (si, también es compatible con Windows) y de hecho, muchas de las partes de Asterisk-SCF son compatibles con .NET (o en este caso, la versión libre llamada Mono) al igual que también es compatible con Java y muchos otros lenguajes (PHP, Python, Perl, etc…)

    No obstante, vamos a ver cómo se instala Asterisk-SCF en las distintas distribuciones de Linux:

    (más…)