Install Janus WebRTC Gateway in Debian
Desde hace varios meses vengo trabajando algunas cosas con mi amigo de aventuras tecnológicas Alfredo Pastor @AlfredoPastorL sobre la plataforma «Janus» pero qué es?
Por que no solo de Asterisk vive el hombre, se puede decir que Janus es auto denominado por la empresa Meetecho como un «WebRTC Gateway» de múltiple propósito, proporciona funcionalidades de comunicación para el uso de WebRTC con un navegador, a través del intercambio mensajes JSON y retransmitir comunicación RTP / RTCP . es posible desarrollar implementaciones de aplicaciones como pruebas de eco, web conference, grabadoras de medios, pasarelas SIP y similares.
En este caso vamos a ver como instalarlo correctamente en una plataforma DEBIAN
1.- Instalación de dependencias
#apt-get install aptitude
#aptitude install libmicrohttpd-dev libjansson-dev libnice-dev libssl-dev libsrtp-dev libsofia-sip-ua-dev libglib2.0-dev libopus-dev libogg-dev libcurl4-openssl-dev pkg-config gengetopt libtool automake make git cmake
Luego removemos los paquetes de correspondientes a rtp srtp ya que vamos a instalar nuevas versiones desde fuentes.
#apt-get remove libsrtp0 libsrtp0-dev
#apt-get autoremove libsrtp0 libsrtp0-dev
2.- Instalación de SRTP
#cd /opt/
#wget https://github.com/cisco/libsrtp/archive/v1.5.4.tar.gz
tar xfv v1.5.4.tar.gz
#cd libsrtp-1.5.4
#./configure –prefix=/usr –enable-openssl
#make shared_library && make install
3.- Instalación de USRSCTP
#cd /opt/
#git clone https://github.com/sctplab/usrsctp
#cd usrsctp
#./bootstrap
#./configure –prefix=/usr/lib64 && make && make install
4.- Instalación de LIBWEBSOCKETS
#cd /opt/
#git clone https://github.com/warmcat/libwebsockets.git
#libwebsockets
#mkdir build && cd build/
#cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS=»-fpic» ..
#make && make install
5.- Instalación de DXYGEN y GRAPHVIZ
#aptitude install doxygen graphviz
6.- Instalación de RABBITMQ
#cd /opt
#git clone https://github.com/alanxz/rabbitmq-c
#cd rabbitmq-c
#git submodule init
#git submodule update
#autoreconf -i
#./configure –prefix=/usr && make && make install
7.- Instalación de PAHO
#cd /opt
#git clone https://github.com/eclipse/paho.mqtt.c.git
#cd paho.mqtt.c
#make && make install
8.- Instalación de JANUS
#cd /opt
#git clone https://github.com/meetecho/janus-gateway.git
#cd janus-gateway
#sh autogen.sh
#./configure –prefix=/opt/janus
#make
#make install
#make configs
#./configure –disable-rabbitmq
#./configure –enable-docs
9.- Instalación del servidor Web
#apt-get install apache2
Ahora copiamos las paginas de ejemplo
#cp -R /opt/janus-gateway/html/ /var/www/
#cd /var/www/html/
10.- Pruebas
Si todo salio bien deberíamos poder levantar Janus de la siguiente forma :
#/opt/janus/bin/janus
Eso quiere decir que Janus está en funcionamiento, luego ingresaremos al servidor Web de la siguiente forma : http://debian/ y veremos los siguiente
Si desean ver el manual en video Alfredo realizó todo el proceso incluido como funcionan los demos de Janus
En el siguiente post haremos una guia de como enlazar Janus con Asterisk
Gracias por el tutorial, ha sido realmente muy útil!
He encontrado un par de erratas en la parte de código, nada grave pero os dejo los pasos que he seguido yo.
# Intal·lem llibreries
apt-get install aptitude
aptitude install libmicrohttpd-dev libjansson-dev libnice-dev libssl-dev libsrtp-dev libsofia-sip-ua-dev libglib2.0-dev libopus-dev libogg-dev libcurl4-openssl-dev pkg-config gengetopt libtool automake make git cmake libsrtp-dev
# Eliminem alguns paquets que ara reinstalarem
apt-get remove libsrtp0 libsrtp0-dev
apt-get autoremove libsrtp0 libsrtp0-dev
# Descarreguem el codi
wget https://github.com/cisco/libsrtp/archive/v2.0.0.tar.gz
tar xfv v2.0.0.tar.gz
cd libsrtp-2.0.0
./configure –prefix=/usr –enable-openssl
make shared_library && make install
cd /opt/
git clone https://github.com/sctplab/usrsctp
cd usrsctp
./bootstrap
./configure –prefix=/usr/lib64 && make && make install
cd /opt/
git clone git://git.libwebsockets.org/libwebsockets
cd libwebsockets
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX:PATH=/usr -DCMAKE_C_FLAGS=»-fpic» ..
make && make install
aptitude install doxygen graphviz
cd /opt
git clone https://github.com/alanxz/rabbitmq-c
cd rabbitmq-c
git submodule init
git submodule update
autoreconf -i
./configure –prefix=/usr && make && make install
cd /opt
git clone https://github.com/eclipse/paho.mqtt.c.git
cd paho.mqtt.c/
make && make install
cd /opt
git clone https://github.com/meetecho/janus-gateway.git
cd janus-gateway
sh autogen.sh
./configure –prefix=/opt/janus
make
make install
make configs
./configure –disable-rabbitmq
./configure –enable-docs
Por último inicio Janus en segundo plano con:
/opt/janus/bin/janus &
Hola buenas tardes, felicitaciones por tu blog.
Puedes por favor indicarme como hacerlo con ubuntu?
A la espera de tu valiosa respuesta,
Nelson
hola! he realizado todos los pasos varias veces y al hacer el configure me dice:
WebSockets: no
¿qué puede faltarme?
But, essentially it enables cumulative information storage space
as well as information which is spread throughout countless computers worldwide.
Based upon this theory, cloud based data storage
space systems have come. Your job opportunity will certainly frequently come from concrete skills and samples of your job
as opposed to a level from a college. You need to acknowledge what you want
in end, what capabilities you need in an app, when you obtained responses you will get the rate of an app.
Especially when I desire to produce a form, I have to create all the controls.
The entire point of using a web structure is not to duplicate what others have currently accomplished much better, as well as concentrating on the output instead.
Author’s Bio: Author is an associate editor for Web Development
Firm. To this end, HokuApps offers a Fast Web Application Development and RAD software that
can adapt to your needs very smartly as well as efficiently, based
on your individualized requirements. 2. JSF: JSF of JavaServer Faces is
a Java web application development structure that is most generally used to create interface of
J2EE Applications. http://buildyournichesite.com/
hola buenas tardes, me gustaria saber si trabajaron en la integracion de janus con asterisk y si se pudo realizar esta integracion?