Archivo de la etiqueta: Softphone

free(YASS);

YASS ya es libre. Ha pasado casi un año desde que presenté Yet Another SIP Softphone (YASS) como Proyecto Fin de Carrera, pero hoy es el día en el que (por fin) es hace libre.

yass_screenshot_1

La idea de crear un softphone surgió como excusa para aprender más sobre Python, Qt y las librerías PJSIP, pero finalmente el objetivo varió ligeramente, de manera que además de un softphone YASS es un pequeño framework de desarrollo para aplicaciones de VoIP. Para ello YASS tiene completamente separado su nucleo funcional de la interfaz gráfica. Podéis ver un ejemplo aquí.

Esta es la primera versión que hago pública y todavía hay muchas ideas que probar e implementar, pero de momento tenemos un softphone básico con las típicas funcionalidades:

  • Llamada en espera
  • Historial
  • Transferencias
  • Tonos DTMF (RFC2833 y SIP INFO)
  • Presencia SIP SIMPLE

Podéis probar YASS en vuestro Debian/Ubuntu añadiendo el siguiente repositorio al fichero /etc/apt/sources.list

deb http://deb.sipdoc.net debian main

Sólo tenéis que instalar el paquete yass (disponible para 32 y 64 bits):

apt-get install yass

Tenéis más información el la web del proyecto y en el Wiki.

Espero que os sirva de ayuda para posibles implementaciones similares, para probarlo o para lo que sea, y que disfrutéis usándolo tanto como yo he disfrutado programándolo. Espero pasar muchas más noches añadiendo nuevas nice and cool sexy features 😉

Hope you njoy it!

ACTUALIZACIÓN: Esta mañana Manwe ha cazado un importante bug: si en Asterisk tenemos habilitada la opción qualify, al modificar la configuración de YASS podía provocarse un crash. 🙁 Lo he corregido en la versión 0.5.1.1, así que actualizad, pliz 🙂

PJSIP llega a la versión 1.0

Tras más de 3 años de desarrollo y más de 250.000 líneas de código PJSIP ha llegado a la versión 1.0. Es más, la 1.0 ya fue lanzada pero no anunciada hace algún tiempo y acaban de hacer este anuncio junto con el lanzamiento de la versión 1.0.1.

PJSIP es un conjunto de librerías que incluye un SIP stack, un librería para el manejo de los flujos multimedia, NAT helpers y mucho más. Aquí tenéis una lista detallada de sus características así como todos los RFCs que soporta y los sistemas sobre los que se puede compilar.

He de decir que cuando programé YASS me sorprendieron muy gratamente estas librerías, ya que incluyen todo lo necesario para programar un softphone en C/C++ o Python de una manera “sencilla”. Además y dado que una de las principales características de PJSIP es su portabilidad, dispone de código de ejemplo para Symbian, algo bastante interesante ¿no?

Dado que tiene licenciamiento doble hay muchas aplicaciones por ahí con PJSIP, pero hay unas cuantas que ya conocemos: SvSIP (softphone SIP para la NintendoDS), Siphon y SIAX (ambos para el iPhone) y muchos otros más.

En un proyecto MUY documentado así que… ¿a qué estas esperando para hacerte tu propio softphone? 😉

YASS

YASS o Yet Another SIP Softphone fue el titulo que finalmente elegí para mi Proyecto Fin de Carrera. El título es bastante descriptivo: YASS es un softphone SIP, pero como ya hay varios y muy buenos circulando por ahí, decidí hacer algo un poco diferente 🙂

Además de ser un softphone y ser Libre (GPLv2), YASS es un framework para el desarrollo de aplicaciones que incluyan funcionalidades relacionadas con la telefonía. Al examinar el software actual disponible me dí cuenta de que no había un framework o herramienta que proporcionara una manera sencilla y de alto nivel de integrar la telefonía en nuestras aplicaciones.

El PFC fue la excusa para llevar a cabo este desarrollo, en el que opté por utilizar Python y Qt, además de las librerías PJSIP, de las que hablaré más en detalle en otro post más extenso.

No tenía pensado escribir esto hoy, ya que el código no esta todavía disponible (faltan unos detalles xD), pero me han dado la oportunidad de presentar YASS en las jornadas SLUN08 y al llegar me han comentado que hay live streaming de las ponencias, por lo que podéis seguir la presentación aquí: http://www.sc.ehu.es/scwebci/VC/streaming/

Es la primera vez que contribuyo de esta manera al Software Libre, por lo que tengo miedo y ánimo a partes iguales 😉 En breve publicaré el código fuente y espero que la encontréis de utilidad 🙂

Nueva versión de Zoiper: la hemos probado!

Mientras estabamos en Huntsville, hemos tenido la ocasión de conocer a Zoa, jefe de desarrollo de Zoiper, con el que hemos podido intercambiar impresiones, además de probar la nueva versión del software.

La nueva versión, que saldrá a la luz en forma de beta a finales de este mes, ha sido reescrita en gran parte cambiando ese apestoso Delphi por C del bueno! 🙂

Los principales objetivos de esta nueva versión son mejorar la usabilidad y la interfaz de usuario. Esta ha sido realizada con wxWidgets, y con un ojo puesto en el iPhone, que es lo que esta molando últimamente.

Como hasta ahora, se podrá disponer de una versión gratuita, o adquirir una de pago, todas ellas disponibles para las 3 plataformas. Zoa todavía no tiene claras las diferencias entre las dos versiones, pero todo apunta a que además del codec g729 incluirá soporte multicuenta, vídeo sin banners y auto-provisionamiento.

Sobre el aspecto más low-level, Zoiper utiliza reSIProcate como SIP stack, e implementa presencia SIMPLE, pero en breve soportará Jabber y OpenXcap para los contactos. Además, se dará la opción de registrarse en la web de Zoiper, de manera que todos los usuarios del programa estén conectados.

La nueva interfaz gráfica ha sido cuidada al milímetro, eliminando todo tipo de iconos inncesarios, y mostrando solo los necesarios en el momento necesario. Las ventanas de la interfaz se pueden acoplar y desacoplar, haciendo posible que el usuario pueda distribuir la aplicación como más le guste, además de poder personalizarla mediante skins.

Tras las breves pruebas realizadas, la interfaz gráfica nos ha parecido realmente buena, y creemos que el programa en su totalidad ha mejorado sustanciosamente desde la versión anterior. Keep it up Zoa! 🙂