Etiqueta: ISSABEL

  • ISSABEL, premio producto del año ITExpo2023

    ISSABEL, premio producto del año ITExpo2023

    A finales de 2016, algunos miembros muy involucrados en Elastix que vieron como su principal herramienta de trabajo pasó a manos de la competencia, decidieron crear Issabel, una distribución de opensource basada en Asterisk con un interfaz web tan completo que puedes configurar una centralita VoIP sin necesidad de escribir nada y tan sencilla de manejar que cualquier usuario de Elastix entendió que era la evolución natural y, aunque ha tenido sus altibajos, Issabel se convirtió rápidamente en la mejor alternativa.

    Con el tiempo Issabel no sólo ha superado las espectativas, también ha sido capaz de crear una comunidad potente, con personas que apoyan el proyecto tanto como usuarios como desarrolladores y que colaboran aportando sus conocimientos para ayudar a otros usuarios como en cualquier proyecto opensource.

    En la ITExpo 2023 que acaba de terminar y en la que conjuntamente se celebró la Astricon, ISSABEL ha sido galardonada con el premio al mejor producto del año, lo cual es un gran mérito al ser un producto que utilizan miles de usuarios y que aporta un gran valor dentro de la comunidad opensource asociada a las comunicaciones unificadas.

    Más sobre Issabel: https://www.issabel.org/

    Noticia oficial: https://www.issabel.com/issabel-wins-poty/

  • Probamos Vosk: un ASR gratuito, libre y que no necesita Internet

    Probamos Vosk: un ASR gratuito, libre y que no necesita Internet

    Hace unos días recibo por parte de el canal de anuncios de Issabel, la compatibilidad con Vosk, un ASR gratuito, libre y offline (no necesita internet para funcionar). Issabel vuelve a adelantarse a todas las distribuciones de comunicaciones esta vez con algo que mucha gente quiere y lo han incluido ya en sus sistemas.

    Leo el comunicado y pienso… ¿Cómo??? debe tener truco…
    Conozco varios sistemas que, aprovechando el boom de la inteligencia artificial y las redes neuronales, se han lanzado a crear modelos de reconocimiento de audio muy interesantes. Hace un par de años estuvimos en el Stand de Mozilla leyendo unos textos para ayudar a enseñar al motor. No obstante, este proyecto nos había pasado desapercibido y eso que posteriormente parecía haber pasado por delante en varias ocasiones sin haberme percatado de la joya que era.

    Efectivamente, no tiene truco, la gente de Issabel no solo ha estado muy atenta si no que ha incorporado, además de muchas herramientas con las que ya cuenta, un reconocedor de audio (ASR) completamente libre y gratuito y que, a diferencia de muchos otros, no depende de terceros como Google, Amazon, Microsoft, etc.

    Vosk es el motor, una aplicación escrita en Python y basada en redes neuronales que reconoce palabras en varios idiomas (según el diccionario que le cargues) y que funciona de forma independiente (no requiere conexiones a otros sistemas) por lo que instalas el servidor, cargas el diccionario del idioma que deseas, lo ejecutas y ya está el puerto listo para enviarle audio y que el motor lo convierta a texto.

    Investigando, me di cuenta que lo presentaron en la ClueCon 2020 (el año pasado) donde explicaron cómo funciona y qué ventajas tiene. Podéis ver la presentación aquí:

    He probado varios sistemas similares y por lo general, los ASR libres, en comparación con los sistemas comerciales, no eran muy competitivos, entiendo que un ASR es un sistema super-complejo y crear uno que funcione bien requiere de un gran esfuerzo económico que muchas veces sólo es posible si hay una empresa detrás, pero en esta ocasión la sorpresa ha sido mayúscula.

    Echándole un vistazo a su web, el proyecto es completamente transparente… publican todas las presentaciones, todas las fórmulas, ecuaciones y sistemas que utilizan para el entrenamiento y análisis de la voz y posterior conversión en palabras.

    También publican ejemplos y demos para que cualquiera pueda probarlo con varios comandos. Esto también lo conocía en otros sistemas, funciona muy bien en sus ejemplos pero luego uno prueba una conversación normal y no da con una traducción medianamente aceptable.

    Así que sin más… me he puesto manos a la obra y por probar una grabación mía:

    ejemplo de audio para comprobar la calidad del reconocedor de audio

    Ejecuto el comando que se conecta al servidor y devuelve lo siguiente:

    {
       "result" : [{
           "conf" : 0.572926,
           "end" : 0.900000,
           "start" : 0.660000,
           "word" : "hola"
         }, {
           "conf" : 0.976447,
           "end" : 1.427432,
           "start" : 1.151597,
           "word" : "hola"
         }, {
           "conf" : 0.841578,
           "end" : 1.830000,
           "start" : 1.530000,
           "word" : "esto"
         }, {
           "conf" : 0.998902,
           "end" : 1.890000,
           "start" : 1.830000,
           "word" : "es"
         }, {
           "conf" : 1.000000,
           "end" : 2.070000,
           "start" : 1.890000,
           "word" : "una"
         }, {
           "conf" : 1.000000,
           "end" : 2.460000,
           "start" : 2.070000,
           "word" : "prueba"
         }],
       "text" : "hola hola esto es una prueba"
     }

    Como podéis ver, aunque falta el primer «hola» (en la grabación eran 3 ‘hola’) el reconocimiento es perfecto y tampoco es que sea una conversación muy difícil.

    Probando algo más complejo:

    El resultado ha sido este:

     "text" : "una aplicación escrita en país y basada en redes neuronales que reconoce palabras en varios idiomas",
    "text" : "y que funciona de forma independiente por lo que instala servidor cargas en diccionario idioma que deseas lo ejecutas y ya hasta el puerto listo para enviarle el audio"
    }

    Como podéis ver… el reconocimiento es prácticamente perfecto. (si, fallan algunas palabras… pero ¿qué esperabas?)

    Instalación

    La instalación del servidor no puede ser más sencilla:

    docker run -d -p 2700:2700 alphacep/kaldi-es:latest

    Ejecutamos este docker que corre en background y nos abre el puerto 2700 para que nos conectemos vía websocket y enviarle el audio.

    Conectándonos al servidor Vosk

    Luego tan solo hay que descargar un cliente websocket para enviarle el archivo wav (formateado a 8Khz y mono)

    git clone https://github.com/alphacep/vosk-server
    cd vosk-server/websocket
    ./test.py test.wav

    Y si le pasáis el archivo wav que tengáis… veréis cómo lo reconoce.

    Usando Asterisk para conectar el ASR de Vosk

    La gente de AlphaCep ha publicado un módulo para Asterisk, FreeSwitch y Jigasi (el módulo que utiliza Jitsi)

    https://github.com/alphacep/vosk-asterisk

    De esta manera, podéis utilizar el reconocedor de audio directamente desde el Dialplan de Asterisk:

    [internal]
    exten = 1,1,Answer 
    same = n,Wait(1) 
    same = n,SpeechCreate 
    same = n,SpeechBackground(hello) 
    same = n,Verbose(0,Result was ${SPEECH_TEXT(0)})

    Eso sí, nos avisan en varios sitios que el sistema de reconocimiento requiere de un sistema potente, ya que consume bastante memoria y procesador cada vez que tiene que hacer un reconocimiento, pero eso es algo común en cualquier ASR hospedado por nosotros, así que a tenerlo en cuenta si queremos instalarlo en nuestro sistema de comunicaciones.

    Toda la información en la página de Vosk: https://alphacephei.com/vosk/
    Su página para estar al día: https://alphacephei.com/en/news.html
    Y la guía para configurarlo en Issabel: https://t.me/Issabel_channel/4

  • ¿Dónde se fueron los interfaces libres de Asterisk?

    ¿Dónde se fueron los interfaces libres de Asterisk?

    Todo cambia, y aunque a menudo no nos haga gracia que hayan cambios y que nos puedan parecer algo negativo, lo cierto es que cualquier cambio es positivo. A veces, (cuando las cosas van mejor) pues es lo más evidente, pero cuando las cosas no van como esperaban, el cambio sirve para reafirmar que ese camino no es el correcto y que toca experimentar otros. Por esa razón, cualquier cambio que experimentemos, siempre es bueno.

    Hubo un tiempo en el que llegamos a contar hasta 7 interfaces webs opensource para gestionar Asterisk: Elastix, Asterisk-GUI, FreePBX, Askorzia, Vicidial, IncrediblePBX y algunos otros que no recuerdo. Hoy día solo existen dos interfaces libres que siguen manteniéndose (igual hay más, pero son los que conozco): FreePBX (en manos de Sangoma) e Issabel.

    Es importante notar la diferencia de que «open source» no significa «libre» (que puedas ver el código no significa que lo puedas cambiar a tu gusto y distribuirlo libremente con tus modificaciones).

    Ambos interfaces son muy completos, soportan prácticamente cualquier configuración que nos pueda interesar y si bien cualquiera de ellas nos podría interesar para configurar un Asterisk, no deja de ser irónico que, ahora que Asterisk tiene el mejor soporte para desarrollar interfaces webs (realtime, pjsip, ARI, AMI, etc), sea ahora mismo cuando la cantidad de interfaces web libres haya descendido a un mínimo histórico.

    Desarrollar un interfaz de gestión no es una tarea complicada, pero sí es bastante laboriosa. Crear un interfaz que gestione los usuarios SIP es meramente saber gestionar una tabla o crear un archivo de texto con un formato concreto, pero crear un interfaz que permita configurar las miles de características y posibilidades que ofrece Asterisk, puede ser un arduo trabajo de muchos meses o años dedicados que los usuarios no tienen por qué ver y a la hora de escoger uno u otro interfaz seguirán escogiendo al más completo.

    El paso de las empresas a «la nube», a los sistemas multi-tenant, y las nuevas soluciones comerciales han hecho que, donde antes una empresa que instalaba un servidor Asterisk en cada cliente y que necesitaba de un interfaz para cada cliente, hoy día solo necesita una solución multi-tenant (comercial) en un servidor remoto para ofrecer el mismo servicios a sus clientes, lo que hace que no sea necesaria ese interfaz «local» y, en caso de que sea necesario, siempre se puede optar por una solución comercial con un soporte directo de la empresa desarrolladora y así trasladar costes.

    En definitiva, los interfaces web libres de Asterisk siguen siendo importantes y necesarios, aunque las necesidades cambian y si bien siguen siendo necesarios los interfaces que permiten gestionar un Asterisk individual para una empresa, el «negocio» puede estar más en los nuevos sistemas, más orientados a la nube, a la integración con otros sistemas, eso si, con la mentalidad que muchas empresas tienen, no creo que alguien que desarrolle un sistema así, lo haga opensource.

  • Issabel se actualiza a Asterisk 13

    Issabel se actualiza a Asterisk 13

    Puede parecer un poco extraño que, ahora que está a punto de salir la versión de Asterisk 16, aún haya quien anuncie el salto a Asterisk 13, pero hay que recordar que tanto Asterisk 14 como Asterisk 15 son versiones orientadas a desarrollo y no son LTS, por lo que desde que Asterisk 13 salió (hace ya 4 años) aún hay muchas personas que siguen trabajando con Asterisk 11 como una de las versiones más estables que hemos tenido y por lo tanto ¿para qué cambiar?.

    Sobre las ventajas que ofrece Asterisk 13 ya hemos hablado largo y tendido, no hay más que ver una de tantas presentaciones que se hicieron en su día, pero hoy día nos seguimos preguntando. ¿hay alguien que siga en Asterisk 11?

    Issabel acaba de anunciar que su nueva ISO acaba de actualizarse a Asterisk 13, entre otros motivos por el soporte de ARI (Asterisk Restful Interface) pero sobre todo porque al actualizar el sistema operativo, es necesario también actualizar de Asterisk (Asterisk 11 no compila en versiones antiguas de ciertas distribuciones Linux) por lo que si, además de necesitar actualizar, el sistema nos lo pide, tenemos en bandeja una excusa de oro para actualizar la versión de Asterisk.

    También es noticia que acaban de publicar la RC2 de Asterisk 16, la siguiente versión LTS que está a punto de salir (y que imaginamos saldrá a la luz justo antes de la Astricon que tendrá lugar del 9 al 11 de Octubre), por lo que tendremos nueva versión estable dentro de muy, muy poco. 🙂

    Sea como fuere, tenemos muchas ganas de probar la nueva versión y ver qué cosas nuevas trae, después de dos versiones de desarrollo nos imaginamos que vendrá cargadita de novedades, pero habrá que analizarla muy seriamente. Pero de momento, si trabajas con Issabel, yo iría actualizando ya la versión a la última, que también tiene una pinta bastante buena y cargadita de novedades! 😀

    (más…)
  • Issabel se presenta al mundo

    Issabel se presenta al mundo

    Hace tiempo que quería escribir sobre Issabel por varios motivos, el primero porque cuando supimos de su existencia, una de las cosas que se pidió fue paciencia, tiempo para reorganizarse y tiempo para hacer las cosas bien. Hay muchos intereses en juego (propios y ajenos) y entre los que quieren que Issabel continúe la senda de lo que fue Elastix y los que quieren aprovechar la desaparición de Elastix, había muchas cosas que digerir y plantear con cautela.

     

    ¿Qué es Issabel?

    Issabel es la versión de la comunidad de lo que en su día fue Elastix, impulsada por usuarios de las comunicaciones unificadas basado en software libre, conducida por amantes del software libre y ampliamente respaldada por un gran número de personas y empresas que llevan muchos años apoyando Elastix y que, tras su venta, necesitaban una solución rápida y eficaz.

    Desde varios lugares ya venían avisando que habría una presentación de lujo, aprovechando la IT-Expo celebrada en Florida y estrenando la nueva imagen de Issabel que salió de entre los votos de la comunidad, todos se pusieron manos a la obra para poder dar respuesta presencial a aquellos que querían saber Qué es Issabel.

    Gracias a esas personas que apoyan al software libre, a las empresas que hay detrás y que apoyan activa, económica y moralmente al software libre, ISSABEL contó en la IT-Expo con su primer stand público donde amigos, conocidos y muchos curiosos se acercaron a preguntar sobre Issabel, sobre Elastix y donde descubrieron que los usuarios de Elastix pueden seguir trabajando sin problemas bajo otro nombre y con más personas involucradas.

    ¿Dónde está la información?

    Una de las novedades es la aparición de dos páginas:

    • Issabel.org es la web del proyecto como tal.
    • Issabel.com orientado más a servicios y productos relativos a Issabel.

    (más…)

  • OpenELX, el fork de Elastix para mantener la versión 2.5

    OpenELX, el fork de Elastix para mantener la versión 2.5

    Como si de la propia Hidra de Lerna se tratase, cuando le cortas una cabeza, surgen muchas otras igual o más feroces, tras la desaparición de Elastix como proyecto de software libre, apareció rápidamente Issabel, un fork que se centra en mantener y actualizar tanto la version Elastix 2.5 como Elastix 4.0. Pues también ha nacido OpenELX, otro nuevo fork orientado a mantener y actualizar la versión Elastix 2.5.

    OpenELX, otro proyecto que mantendrá Elastix 2.5

    OpenELX ha sido creado por varias empresas orientadas a mantener, actualizar y apoyar a todos los usuarios de Elastix 2.5. la distribución que aún tiene un gran número de usuarios.

    Lo mejor de todo es que tanto Issabel como OpenELX son dos grupos completamente independientes, cada uno orientado a mantener su propia distribución pero con objetivos idénticos: mantener, actualizar y ofrecer seguridad a todos aquellos usuarios que utilizan Elastix y quieren seguir utilizándolo actualmente.

    Por supuesto, tanto Issabel como OpenELX están formados por empresas interesadas en mantener a sus clientes y a muchos otros, así como dar continuidad al proyecto de software libre Elastix aunque sea con otro nombre.

    (más…)

  • La comunidad Elastix crea el proyecto ISSABEL

    La comunidad Elastix crea el proyecto ISSABEL

    Este mes de diciembre está siendo bastante frenético, quizá por la importancia del tema y es que, tal y como anunciamos la semana pasada, 3CX ha comprado la marca Elastix y todo el ecosistema (foros, listas, correos, etc.) de manera que la comunidad ha tomado cartas en el asunto y ha creado un fork de Elastix al que han bautizado como ISSABEL.

    A diferencia de Elastix, el nuevo proyecto ISSABEL no se basa en el sistema de «dictador benevolente» que consiste en una única empresa que controla y gestiona el proyecto de inicio a fin con la condición de ser «benevolente», si no que ISSABEL nace directamente de la mano de los propios miembros de la comunidad Elastix y mantiene la puerta abierta al resto de la comunidad para que entren en el proyecto y participen activamente.

    Dentro de la comunidad hay desarrolladores, administradores de sistemas, expertos en Linux y en Asterisk, y empresas que quieren un sistema de comunicaciones con el que trabajar, modificar, distribuir, … por lo que el proyecto ISSABEL no solo está mantenida por usuarios afines a la filosofía de software libre y comunicaciones unificadas libres, si no también por empresas que van a dar apoyo empresarial y servicios de calidad a todos aquellos que lo requieran. La diferencia con Elastix es que las decisiones sobre el «core» no serán tomadas de forma unilateral por una única entidad si no que serán por consenso de la comunidad general que utiliza los cauces sociales habituales (foros, twitter, listas, etc.) para ponerse de acuerdo en las decisiones y rumbo del proyecto.

    ISSABEL: el nuevo Elastix

    ISSABEL se basa en la versión GPL del proyecto Elastix 4, una distribución que, tal y como muchos recuerdan, los miembros de la comunidad se unió para hacer un crownfunding económico y poder dar un empujón al proyecto para, entre otras cosas, actualizar el sistema operativo a CentOS 7, actualizar las versiones de diversos proyectos libres, por lo que es 100% legal, ético y no tiene ningún tipo de problema legal tal y como insinúan algunas personas y webs. Cualquier usuario de Elastix 4 no tiene que hacer nada para continuar recibiendo actualizaciones, únicamente cambiar los repositorios para utilizar los de ISSABEL en lugar de los antiguos sistemas de Elastix y el sistema se actualizará con normalidad.

     

    Como se puede ver, lo único que cambia en la interfaz es el nombre, y por lo tanto, todas las funcionalidades continuarán trabajando como hasta ahora.

     

    A todos los efectos, Elastix 4 pasa a llamarse ISSABEL y cualquier usuario que ya trabajaba con Elastix 4, puede seguir trabajando con total normalidad con ISSABEL.

     

    Más información: http://www.issabel.org