PHP-vs-Node.jsSi hay algo que podemos decir con total rotundidad, es que Asterisk permite integrarse prácticamente cualquier aplicación gracias a los diversos interfaces que incluye desde sus primeras versiones: AGI, AMI y desde Asterisk 13, también con ARI. No obstante, no todos los avances se hacen desde el lado de Asterisk, también hay novedades en el lado de los lenguajes de programación: nuevos lenguajes, nuevas metodologías, nuevos paradigmas que permiten desarrollar soluciones mucho más eficientes, más rápidas y más fácilmente.

Quizá puede sonar extraño, pero el 90% de las aplicaciones creadas para Asterisk están desarrolladas en PHP, quizá por su sencillez, quizá por que es uno de los lenguajes más utilizados, o bien por su extensa documentación. No obstante, existen muchos otros lenguajes mucho más orientados a crear aplicaciones de comunicaciones, tiempo real, multi-hebra, etc… que PHP.

Una de estas novedades (que ya tiene casi 6 años) es Node.js, un sistema que nos permite desarrollar aplicaciones (generalmente orientadas a comunicaciones) de una forma rápida y fácil. Lo curioso es que utilizamos un lenguaje bastante conocido como Javascript, para crear aplicaciones que se ejecutan “en el lado del servidor” en lugar de “en el lado del cliente“, pero que las aplicaciones resultantes son bastante sencillas y resultonas.

Para demostrar la potencia de este sistema para poder desarrollar soluciones, vamos a crear un par de aplicaciones que se conecten al Manager de Asterisk y puedan procesar los eventos que Asterisk emita. Primero sin ningún tipo de librería especial, y luego utilizaremos alguna más específica.

Lo único que necesitamos es instalar Node.js y empezar a programar:

No obstante, existen otras formas interesantes y más sencillas de utilizar Asterisk, en esta ocasión utilizando la librería Asterisk-Manager instalable utilizando el comando: npm install asterisk-manager

Como podéis ver, hacer una aplicación con Node.js es bastante sencillo. No significa que sea la mejor forma, ni las más rápida, ni la más eficiente, pero es algo a tener en cuenta si queremos crear alguna aplicación que sirva para conectarse con Asterisk.

2 Comentarios

  • Interesante artículo, remarcando que como historia de node los 6 años desde que empezó dicho proyecto, aunque realmente, la magia de los ".js" es la gran variedad de librerías existentes, y la personalización de estas, desde aplicaciones móviles (ionic,telerik), frameworks de desarrollo como angular, o basadas en la interoperabilidad entre equipos, como socket.io.

    Nosotros estamos desarrollando un portafolio de aplicaciones basándonos en toda la "estructura" de los nuevos paradigmas del desarrollo (innovar no es sólo hacer cosas distintas, si no de un modo distinto también), desde aplicaciones de comunicaciones unificadas, de video vigilancia SIP, así como módulos para comunicaciones SIP basados en node para iOS, android y Windows phone.

    Si te apetece, dame el toque y te doy más detalles… para no spamear sin permiso xD

    Olga Prado.

  • Excelente lo que escribes sobre aplicaciones de comunicaciones unificadas, de video vigilancia SIP, así como módulos para comunicaciones SIP basados en node para iOS, android y Windows phone. Podrias dar mas detalles sobre estos proyectos tan innovadores. Gracias de antemano

Archivos

© 2014 Sinologic, inc. All rights reserved.

Menú

Redes sociales