Asterisk embebido con Askozia y AsteriskNOW

29 02 2008

asterisknow

Vía voip-info me entero de que el proyecto Askozia tiene un nuevo sponsor principal que se llama Deciso. Por lo visto esta empresa se dedica, entre otras cosas, a fabricar sistemas embebidos (de pequeña potencia y reducido consumo) con linux y asterisk 🙂

Entre sus productos, ofrecen varias versiones con AsteriskNow y AskoziaPBX, con la posibilidad de incluir tarjetas digitales para RDSI. Lástima que no tengan aún posibilidad de poner salidas analógicas (lo de lástima más que nada por la dura realidad de la calle, que por mí se podían ir a freir…)

La versión que viene con AsteriskNOW, de serie, va montado sobre un fork de Debian ETCH llamado Linux Voyage.

La verdad es que tienen muy buena pinta, y además se pueden convertir en un serio competidor de la applicance que tiene Digium, aunque a día de hoy sólo puedan compararse a nivel de entornos IP puros.

Las características del hardware son:

  • 1U 19″ Caja rackeable
  • 500MHz AMD Geode LX como procesador
  • 256MB de RAM interna
  • 2GB de Compact Flash tipo industrial
  • 2 puertos LAN (10/100Mb/s)
  • 4 puertos ISDN (8 canales digitales)
  • 1 puerto para consola RS232
  • 2 puertos USB

A ver si hay forma de conseguir alguno para jugar un poquito. No es que estén mal de precio, sobre todo el modelo IP puro sin tarjetitas…





Alta Disponibilidad con Elastix y foneBridge2

26 02 2008

Según veo en la web de Elastix, acaban de llegar a acuerdos con la empresa RedFone, famosa por sus equipos digitales para alta disponibilidad de E1/T1. Esto se traduce en una mejor integración con Elastix a través de su interfaz web, y de su novedoso sistema de módulos.

Ahora con Elastix, es mucho más fácil configurar un entorno de redundancia cuando se disponen de varias máquinas Asterisk y varios circuitos digitales E1/T1. El tema está en ver si será tan sencillo como subir algún módulo e instalarlo y punto….

Recorte de prensa





Dilandau, o cómo la musica online ya no volverá a ser lo mismo…

23 02 2008

me acaban de poner con las ruedas p’arriba!!!!

Según veo en bandaancha.st, se acaba de lanzar un nuevo servicio web, denominado Dilandau, donde podemos buscar canciones de manera sencilla, podemos escucharlas online y además, bajarlas si nos interesan.

Yo he probado buscar cosas que me gustan y me he quedado alucinado con la ingente cantidad de música que manejan…

Por lo visto, hacen búsquedas de archivos mp3 hasta debajo de las piedras y te lo enlazan, al objeto de no ser ellos los que alojen nada, y por tanto no puedan ser acusados de violar derechos y rollos de estos.

Como dijo Jezulín: IM-PREZIONANTE.

Hombre, ya teníamos las radios on-line en winamp y otros reproductores, pero es que esto va un poquito más allá: la música que tú quieres, donde quieres y cuando quieres.

Visto en bandaancha

Dilandau





Operadorvirtual = timo de la estampita

15 02 2008

Vaya!!!! Si es que no aprendemos… Sale cualquier cosa por ahí con precios atractivos y se nos van los ojillos con la esperanza que sea algo rompedor y nuevo, que pueda demostrar la sangría que sufrimos por parte de las operadoras tradicionales. Pero qué va, otro timo más.

Si me hice eco hace unos días de que podíamos tener algo positivo en el panorama de OMV’s nacionales, siento haberos dado falsas esperanzas y haberos hecho perder el tiempo buscando información acerca de la patraña que tiene montada el tal Raúl Mate.

Al final, resulta ser un gancho patatero para captar publicidad y links a punta pala, de forma que acabe bien posicionado en el ranking de webs más visitadas. Según parece, lo único que ofrece es un “asesoramiento” de qué tarifas debes elegir y cómo debes actuar para conseguir ahorrarte, en teoría, el pago de las tarifas actuales. Todo ello apoyado en un clon de betamax, justvoip, de forma que se tiene una especie de callback por voip…

Lo dicho, bien metida.. hasta el fondo…

PD.: Tiene un vídeo en su web, donde parece más un colgao que otra cosa.

*Update* — Gracias a mi filóloga particular por las correcciones de última hora 🙂





Nuevas versiones de Asterisk y FreePBX

10 02 2008

Hace unos días salió la nueva actualización de Asterisk según el nuevo método basado en Release Candidates, al objeto de evitar meteduras de pata y chapucillas, que según la filosofía anterior de actualizaciones, requería parches urgentes y a la carrera. De esta forma, se han ido cubriendo las espaldas mediante rc1, rc2, rc3 y al final, la versión estable Asterisk 1.4.18.

Además, y de forma casi paralela, ha salido de la fase beta la nueva versión de FreePBX 2.4. Esta nueva versión trae algunas novedades como una mejor integración con Dundi, así como soporte para el bebé Asterisk 1.6 🙂

Podéis consultar los cambios al completo aquí





Integración de FreePBX y A2Billing

6 02 2008

Los interfaces web sobre Asterisk tienen una gran ventaja, y es que automatizan muchas tareas tediosas y permiten una interacción más amigable con el “demonio” de Asterisk. Para los no iniciados pueden suponer una gran ayuda, pero a veces, pueden provocar que el proceso de aprendizaje natural de Asterisk, se vea distorsionado y mal enfocado.

En la lista de Asterisk-Es, ya hemos tenido unas cuantas conversaciones sobre las bondades de las interfaces web para Asterisk, aunque sigue habiendo firmes detractores de las mismas.

Pues bien, para aquellos que ven en estas herramientas elementos que facilitan la gestión diaria (sin entrar en complejas personalizaciones), va dedicado este pequeño post sobre cómo configurar FreePBX para que pueda usar A2Billing para la tarificación de ciertos destinos, pero sin perder el potencial y la flexibilidad de que disponemos sobre los usuarios SIP o IAX, al intentar usar A2Billing exclusivamente.

La idea principal es usar una ruta saliente que apunte a A2Billing al objeto de tarificar dicha salida, y sólo esa salida. El resto de rutas, incluidas las internas, siguen su funcionamiento normal a través de FreePBX. Emplear esta filosofía permite seguir disponiendo de manera sencilla de buzón de voz, desvío, transferencia, etc, etc…, cosa que A2Billing no integra o lo hace con dificultad.

Seguimos los siguientes pasos:

  1. Vamos a FreePBX y creamos un nuevo trunk –> Custom Trunk
  2. Se introducen las reglas de marcado sobre ese trunk según las necesidades específicas.
  3. En la zona donde pone “Custom Trunk String” ponemos A2B/$OUTNUM$
  4. Pulsamos en Submit y ya tenemos creado el trunk que enviará las llamadas a A2Billing.
  5. Nos vamos a las rutas de salida, Outbound Routes, y creamos la ruta que pretendemos tarificar. Por ejemplo, si queremos cobrar las llamadas internacionales, pues colocamos un 00. o algo equivalente.
  6. Es importante que tengamos seleccionado el parámetro Intra Company Route, al objeto de que se preserve nuestro número de extensión.
  7. El paso siguiente consiste en modificar el fichero extensions.conf y buscar el contexto [macro-dialout-trunk]. Si tenemos la versión 2.3.x no habrá problemas, pero si estamos usando la 2.4, resulta que han movido [macro-dialout-trunk] al fichero extensions_additional.conf (lo cual es una putada). Habrá que toquetear en este último caso, el contexto [macro-dialout-trunk-predial-hook], el cual no he tenido la ocasión de probar, aunque no debe presentar la mayor dificultad. Suponemos que tenemos la versión 2.3.x, y buscamos la siguiente línea

    exten => s,n(skipoutnum),Dial(${pre_num:4}${the_num}${post_num},300,${DIAL_TRUNK_OPTIONS})

    La anterior línea será borrada y sustituida por el texto siguiente

    ; Modificado para realizar llamadas hacia A2Billing a la vez que se mantiene la posibilidad de utilizar las reglas
    ; de marcado de FreePBX
    ; linea original: exten => s,n(skipoutnum),Dial(${pre_num:4}${the_num}${post_num},300,${DIAL_TRUNK_OPTIONS})
    ; funcion añadida:
    
    exten => s,n(skipoutnum),GotoIf($["${pre_num}" = AMP:A2B/"]?a2bdial:skipoutnumnormal) ; Verifica que el trunk empiece por
    										      ; A2B y hace el Dial.
    
    exten => s,n(a2bdial),DeadAGI(a2billing.php|1|${OUTNUM}) ; Hace el Dial usando A2Billing. Notese el parametro ${OUTNUM}.  
    
    exten => s,n,Goto(s-${DIALSTATUS},1)
    
    exten => s,n(skipoutnumnormal),Dial(${pre_num:4}${the_num}${post_num},300,${DIAL_TRUNK_OPTIONS})
    
    ; fin de las modificaciones
  8. Salvar los cambios y hacer un reload de asterisk
  9. Editamos /var/lib/asterisk/agi-bin/a2billing.php y buscamos lo siguiente
    if ($argc > 1 && is_numeric($argv[1]) && $argv[1] >= 0){
    
       $idconfig = $argv[1];
    
    }else{
    
       $idconfig = 1;
    
    }

    Debermos añadir el siguiente código, justo inmediatamente después

    if ($argc > 2 && is_numeric($argv[2]) && $argv[2] >= 0){   //Nuevo
    
       $the_num = $argv[2];         //Nuevo
    
    }                              //Nuevo

    También modificaremos lo siguiente

    $A2B->dnid = $agi->request['agi_dnid'];

    sustituyéndolo por esto otro

    // La linea original era: $A2B->dnid = $agi->request['agi_dnid'];
    
    // Comprobamos si la llamada viene del contexto macro-dialout-trunk en freePBX
    
    // y ponemos la variable dnid al valor deseado, el cual será pasado a A2Billing
    
    if($agi->request['agi_context'] == "macro-dialout-trunk")   //Nuevo
    
       $A2B->dnid = $the_num;            	//Nuevo
    
    else                        		//Nuevo
    
    $A2B->dnid = $agi->request['agi_dnid']; //Nuevo
    
    // Fin de las modificaciones            //Nuevo
  10. Salvamos el archivo a2billing.php
  11. Por último, nos cercioramos que tenemos en /etc/asterisk/a2billing.conf lo siguiente
    use_dnid = YES
    
    number_try = 1
    
    cid_enable = YES

Si hemos realizado bien los pasos descritos, estaremos en disposición de autentificar a la extensión de FreePBX en A2Billing mediante su CID. Obviamente, habremos creado previamente, un Customer en A2Billing con crédito suficiente para llamar, con un CID coincidente con la extensión de FreePBX, un Call Plan, una RateCard, unas Rates y un trunk de salida…

Hay que recordar que si hacemos alguna actualización de FreePBX (módulo core o framework) es posible que se nos machaquen los cambios en el fichero extensions.conf. Por tal motivo, deberemos tener alguna copia de seguridad o bien, ingeniarselas para hacer las modificaciones en el archivo extensions_custom.conf.

Actualización:

Gracias al amigo RazaMetal, aquí os pongo un código muchíiiiiisimo más optimizado para obtener el mismo resultado de integración y sin tener que tocar nada de a2billing.
Básicamente, se debe hacer uso de “macro-dialout-trunk-predial-hook” que permite inyectar código antes de que freepbx use sus macros internas. En este caso, decimos que si se está usando un trunk de freepbx personalizado (por ejemplo, A2B/1), se vaya a un contexto “custom-freepbx-a2billing” donde pasar la llamada a tarificar a a2billing. En este caso, el 1 despues de la barra, es una indicación para a2billing, de forma que utilice [agiconf1] (se pueden crear otros patrones, en funcion de nuestro a2billing.conf)

El código a utilizar en extensions_custom.conf es:

[macro-dialout-trunk-predial-hook]
exten => s,1,GotoIf($["${OUT_${DIAL_TRUNK}:4:4}" = "A2B/"]?custom-freepbx-a2billing,${OUTNUM},1:2)
exten => s,2,MacroExit
[custom-freepbx-a2billing]
exten => _X.,1,DeadAGI(a2billing.php|${OUT_${DIAL_TRUNK}:8})
exten => _X.,n,Hangup()

De esta forma, toda llamada que use el trunk “A2B/1” como ruta saliente, será enviado a a2billing para ser tarificada.





OperadorVirtual, OMV revientamercados

5 02 2008

ovirtual.jpg

¡Éramos pocos y parió la abuela! … Al rico OMV oigaaaaaa!!!

Si hace unos días os informaba acerca de la salida de simyo (por cierto, cada vez que intento teclearlo, me sale “simyio” 🙂 ) , ahora me entero de otro OMV de bajo coste: OperadorVirtual. El tema está en que este tiene pinta de hacer añicos el mercado de la telefonía móvil.

Según ponen en su web, piensan ofrecer las llamadas a móviles de otras compañías a 6 ct/min, cosa que me parece genial, pero me hace pensar muy mucho… ¿acaso será alguna broma? ¿durará menos que un chupa-chups en la puerta de un colegio? ¿estamos ante la llegada de la COMPETENCIA real en la telefonía móvil?

Ojalá sea cierto toda la parrafada que nos cuentan en su web, y que por cierto explican de forma muy detallada y certera…

Actualización: Es una farsa!!!