返回列表 發帖

Installing freeswitch

A very simple and straight forward guide is seen at VOIPtoday.org

I have done an installation before. But this guide looks very easy to me. Besides, the GUI is attractive.

How to Install blue.box.

9-Bluebox---Devicemanager_Create [posted on voipkb.com] blue.box is an open-source configuration and management software enabling the use of the FreeSWITCH and Asterisk switching libraries. It supports multi-tenancy, skinning and is completely open-source. It can be used with database and file replication to scale up to thousands of registered devices and simultaneous phone calls. It can operate in the cloud or on the premise.

blue.box development is hosted and funded by the 2600hz project.

How to install blue.box:

We'll assume you have sudo set up for your user. Otherwise su to root to run the commands listed w/ 'sudo' below.

1. Allow HTTP server to access MySQL via SELinux, if SELinux is enabled

     setsebool -P httpd_can_network_connect=1

2. Setup EPEL Yum Repositories with newer packages.

     sudo rpm -Uvh http://download.fedora.redhat.co ... ease-5-4.noarch.rpm

3. Install the Remi Yum Repository.

     sudo rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-5.rpm

4. Install Pre-Req's

  sudo yum --enablerepo=remi install make php php-common php-mysql php-pdo php-soap php-xml php-xmlrpc \
     mysql-server.$(uname -m) mysql.$(uname -m) mysql-devel.$(uname -m) gcc.$(uname -m) \
     gcc-c++.$(uname -m) libtool.$(uname -m) subversion.$(uname -m) curl-devel.$(uname -m) \
     ncurses-devel.$(uname -m) mysql-connector-odbc.$(uname -m) unixODBC.$(uname -m) unixODBC-devel.$(uname -m) \
     libtiff-devel.$(uname -m) libjpeg-devel.$(uname -m) httpd
There is another issue with the git provided by epel and FS. There's two ways to handle this.

Option 1: Upgrade git to 1.7.x

  sudo rpm -ivh http://repo.webtatic.com/yum/centos/5/`uname -i`/webtatic-release-5-1.noarch.rpm  
  sudo yum --enablerepo=webtatic install git
Option 2: Install git 1.5.x and Manually edit a file There is a Makefile.am that should be in the /usr/src/freeswitch directory in Step 4. First you can install git from epel.

  sudo yum install git
Then you'll need to follow Step 4 and download FreeSWITCH via git. Then you can edit that file, and look for a line that looks like:

  version=`git log --format="%h %ci" -1 HEAD
change it to

  version=`git log --pretty="%h %ci" -1 HEAD

5. Installing FreeSWITCH

  cd /usr/src
  sudo git clone git://git.freeswitch.org/freeswitch.git
  cd /usr/src/freeswitch
  sudo ./bootstrap.sh
  sudo ./configure -C
  sudo make all install cd-sounds-install cd-moh-install

6. Create FreeSWITCH init script

  cd /etc/init.d
  sudo touch freeswitch
  sudo chmod a+x ./freeswitch

Make sure that there is a freeswitch user

  cat /etc/passwd
If not, go ahead and create one.

  sudo /usr/sbin/useradd -c "FreeSWITCH USER" -d /usr/local/freeswitch -s /sbin/nologin freeswitch
Then copy and paste the script below into your freeswitch file.

#!/bin/bash
#
#       /etc/rc.d/init.d/freeswitch
#
#       The FreeSwitch Open Source Voice Platform
#
#  chkconfig: 345 89 14
#  description: Starts and stops the freeswitch server daemon
#  processname: freeswitch
#  config: /opt/freeswitch/conf/freeswitch.conf
#  pidfile: /opt/freeswitch/run/freeswitch.pid
#

# Source function library.
. /etc/init.d/functions

PROG_NAME=freeswitch
PID_FILE=${PID_FILE-/usr/local/freeswitch/run/freeswitch.pid}
FS_USER=${FS_USER-freeswitch}
FS_FILE=${FS_FILE-/usr/local/freeswitch/bin/freeswitch}
FS_HOME=${FS_HOME-/usr/local/freeswitch}
LOCK_FILE=/var/lock/subsys/freeswitch
FREESWITCH_ARGS="-nc"
RETVAL=0

# Source options file
if [ -f /etc/sysconfig/freeswitch ]; then
    . /etc/sysconfig/freeswitch
fi

#

start() {
        echo -n "Starting $PROG_NAME: "
        if [ -e $LOCK_FILE ]; then
            if [ -e $PID_FILE ] && [ -e /proc/`cat $PID_FILE` ]; then
                echo
                echo -n $"$PROG_NAME is already running.";
                failure $"$PROG_NAME is already running.";
                echo
                return 1
            fi
        fi
    cd $FS_HOME
        daemon --user $FS_USER --pidfile $PID_FILE "$FS_FILE $FREESWITCH_ARGS $FREESWITCH_PARAMS >/dev/null 2>&1"
        echo
        RETVAL=$?
        [ $RETVAL -eq 0 ] && touch $LOCK_FILE;
    echo
        return $RETVAL
}

stop() {
        echo -n "Shutting down $PROG_NAME: "
        if [ ! -e $LOCK_FILE ]; then
            echo
            echo -n $"cannot stop $PROG_NAME: $PROG_NAME is not running."
            failure $"cannot stop $PROG_NAME: $PROG_NAME is not running."
            echo
            return 1;
        fi
    cd $FS_HOME
    $FS_FILE -stop > /dev/null 2>&1
        killproc $PROG_NAME
    RETVAL=$?
    echo
    [ $RETVAL -eq 0 ] &&  rm -f $LOCK_FILE;
        return $RETVAL
}

rhstatus() {
    status $PROG_NAME;
}

case "$1" in
    start)
        start
        ;;
    stop)
        stop
        ;;
    status)
        status $PROG_NAME
    RETVAL=$?
        ;;
    restart)
        stop
        start
        ;;
    reload)
#      
#        kill -HUP or by restarting the daemons, in a manner similar
#        to restart above>
        ;;
    condrestart)
        [ -f $PID_FILE ] && restart || :
    ;;
    *)
        echo "Usage: $PROG_NAME {start|stop|status|reload|restart}"
        exit 1
        ;;
esac
exit $RETVAL
Save the file, add the service and start it

  chown -R freeswitch:freeswitch /usr/local/freeswitch
  sudo /sbin/chkconfig --add freeswitch
  sudo /sbin/chkconfig --level 345 freeswitch on
  sudo /sbin/service freeswitch start

7. Installing BlueBox

  cd /var/www/html
  sudo git clone git://source.2600hz.org/bluebox.git
  cd bluebox
  sudo ./preinstall.sh
You can accept the defaults in the preinstall.sh script. This will change permissions and ownership so that the apache user can create/update the necessary files for bluebox to function.

8. Setup BlueBox MySQL access (most likely the default password is blank)

  sudo /sbin/chkconfig --add mysqld
  sudo /sbin/chkconfig --level 345 mysqld on
  sudo /sbin/service mysqld start
  /usr/bin/mysqladmin -u root password 'new-password'
  mysql -u root –p

9. At the mysql cli prompt

mysql> CREATE USER 'bluebox'@'127.0.0.1' IDENTIFIED BY 'bluebox';
mysql> GRANT ALL ON bluebox.* TO 'bluebox'@'127.0.0.1';
mysql> FLUSH PRIVILEGES;

10. Open web browser and go to http://server_ip/bluebox

11. Now you can go to the next guide that will walk you through a basic setup.

It is fair more to install freeswitch from the code above.

TOP

Another site to install freeswitch with skype support

http://www.voztovoice.org/?q=node/455

Spanish site

TOP

Thank CK. Do you have any information of installation of FreeSWITCH and Skype on Raspberry Pi platform?

TOP

回復 4# 角色


    Not at all at the moment as skype is still experimental at Raspberry Pi

TOP

返回列表