Mise en place de la visio Join The Room

Join The Room est une application simple de visio conférence exploitant la technologie WebRTC. Plusieurs composants sont nécessaires pour avoir un système autonome:

Un serveur web pour fournir les fichiers de Join the Room (c'est uniquement des fichiers statics)

Un serveur de signalement SignalMaster

Un serveur STUN/STURN

Le tout sera déployé sur une machine sous Fedora 20 (je préfère en général utiliser CentOS 6, mais nous auront besoin du module apache mod_proxywstunnel pour faire un ProxyPass de websocket et ce module n'est pas fournit dans la version 2.2 d'aache sur CentOS 6)

Installation minimale

La première chose à faire est d'installer une Fedora (l'installation minimale suffira)

Installer SignalMaster

SignalMaster est une appli écrite en nodejs, on va donc commencer par installer les dépendances:

yum install nodejs npm git

Puis installer l'appli elle même

cd /opt/ git clone https://github.com/andyet/signalmaster.git cd signalmaster npm install

Maintenant que l'application est installée, on va mettre en place le nécessaire pour la gérer via systemd

useradd signalmaster cat <<'EOF' > /etc/systemd/system/signalmaster.service [Service] ExecStart=/usr/bin/node /opt/signalmaster/server.js Restart=always StandardOutput=syslog SyslogIdentifier=SignalMaster User=signalmaster Group=signalmaster [Install] WantedBy=multi-user.target EOF systemctl daemon-reload systemctl enable signalmaster systemctl start signalmaster

Installer Join the Room

yum install httpd mod_ssl
cd /opt git clone https://github.com/yatendra/jointheroom.git
cat<<'EOF' > /etc/httpd/conf.d/jointheroom.conf Alias /jointheroom /opt/jointheroom <Directory /opt/jointheroom> Options None DirectoryIndex index.shtml index.htm index.html Require all granted </Directory> EOF systemctl enable httpd.service systemctl start httpd.service

Installer le serveur STUN/TURN

Allez sur http://turnserver.open-sys.org/downloads/ et récupérer la dernière version pré-compilé pour notre Fedoa, à ce jour, c'est la version 3.2.2.7

yum -y install wget tar wget wget http://turnserver.open-sys.org/downloads/v3.2.2.7/turnserver-3.2.2.7-Fedora20-x86_64.tar.gz tar xvzf turnserver-3.2.2.7-Fedora20-x86_64.tar.gz cd turnserver-3.2.2.7/ yum localinstall ./*.rpm

Configurez le démon:

cat <<'EOF' > /etc/sysconfig/turnserver EXTRA_OPTIONS="-v -a -f -r __DNSDOMAINNAME__" EOF sed -i -e "s/__DNSDOMAINNAME__/$(dnsdomainname)/g" /etc/sysconfig/turnserver cat 'user:password' >> /etc/turnserver/turnuserdb.conf systemctl enable turnserver.service systemctl start turnserver.service