Call Us Today! 877.742.2583




Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: added a note about passwords

...

Code Block
languagebash
titleScript FreeSWITCH demo install
#!/bin/sh
# Simple script to setup a webrtc enabled lab with freeswitch, nginx, letsencrypt certificates and verto_communicator.
# Adapt the DOMAIN & IP variables below and launch itas root on on a freshly minimal installed debian 8 ( jessie ) server.
# DO NOT USE IN PRODUCTION, it's for PoC purposes.
# Freeswich config is the default vanilla demo config, you SHOULD CHANGE the DEFAULT PASSWORDS ( extensions, event_socket, etc ... )
# At the end of the script, you can navigate to https://$DOMAIN/vc and enjoy verto communicator up & running !
# Author: "Tristan Mahe" <gled@remote-shell.net>
# License: WTFPL

DOMAIN="webrtc.remote-shell.net"
IP="52.9.216.91"

apt-get update && apt-get install -y curl git
curl https://files.freeswitch.org/repo/deb/debian/freeswitch_archive_g0.pub | apt-key add -

git clone https://freeswitch.org/stash/scm/fs/freeswitch.git /usr/src/freeswitch.git

echo "deb http://files.freeswitch.org/repo/deb/freeswitch-1.6/ jessie main" > /etc/apt/sources.list.d/freeswitch.list
echo "deb http://ftp.debian.org/debian jessie-backports main" > /etc/apt/sources.list.d/debian-backports.list

apt-get update && apt-get install -y freeswitch-meta-all nginx-extras freeswitch-mod-verto freeswitch-mod-rtc

apt-get install letsencrypt -t jessie-backports
letsencrypt certonly -a webroot --webroot-path=/var/www/html $DOMAIN 

cat /etc/letsencrypt/live/$DOMAIN/fullchain.pem /etc/letsencrypt/live/$DOMAIN/privkey.pem > /etc/freeswitch/tls/wss.pem

cp -f /usr/src/freeswitch.git/html5/verto/video_demo/dp/dp.xml /etc/freeswitch/dialplan/default/0000_dp.xml

perl -i -pe 's/# listen/listen/g' /etc/nginx/sites-enabled/default
perl -i -pe 's/# include snippets\/snakeoil.conf/include snippets\/letsencrypt.conf/g' /etc/nginx/sites-enabled/default
perl -i -pe 's/<!--  <param name="ext-rtp-ip" value=""\/> -->/<param name="ext-rtp-ip" value="$IP"\/>/g' /etc/freeswitch/autoload_configs/verto.conf.xml

echo "ssl_certificate /etc/letsencrypt/live/$DOMAIN/fullchain.pem;" >> /etc/nginx/snippets/letsencrypt.conf
echo "ssl_certificate_key /etc/letsencrypt/live/$DOMAIN/privkey.pem;" >> /etc/nginx/snippets/letsencrypt.conf

cd /usr/src/freeswitch.git/html5/verto/verto_communicator/
./debian8-install.sh

ln -s /usr/src/freeswitch.git/html5/verto/verto_communicator/dist /var/www/html/vc

service nginx restart
service freeswitch restart