Part of the patch from Julien

This commit is contained in:
yanmorin
2006-06-18 18:43:57 +00:00
parent 9717f646e7
commit 345fba3040
10 changed files with 608 additions and 318 deletions

193
README
View File

@ -1,59 +1,130 @@
This is SFLPhoned-0.7 release.
This is SFLPhoned, release 0.7pre0cvs.
You need
- commoncpp2 >= 1.3.20
- libxml2, libxml2-devel and pkgconfig
- ccrtp >= 1.3.4
- libosip2 >= 2.2.1
Copyright (c) Savoir-faire Linux, Inc 2004-2006
<sflphoneteam@savoirfairelinux.com>
See http://www.sflphone.org/#downloads to download required libraries.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
Introduction
------------
SFLPhone is a Voice-over-IP software phone. We want it to be:
- portable (it runs under GNU/Linux, Mac OS X, Win32)
- user friendly (fast, sleek, easy to learn interface)
- corporate grade (transfers, holds, perfect audio quality)
- fully compatible with Asterisk (SIP and IAX protocols)
- customizable (support for custom skins in the QT interface)
As the SIP/audio daemon and the user interface are separate processes,
it is easy to provide different user interfaces. SFLPhone comes with
a QT graphical user interface, an interactive command line interface,
and even scripts to control the daemon from the shell.
SFLPhone is actually used by the support team of Savoir-Faire Linux Inc.
More information is available on the project homepage:
http://www.sflphone.org/
Getting the dependencies
------------------------
Required libraries and tools:
- ccRTP >= 1.3.4 (tested with ccrtp 1.4.1)
and Common C++ 2 >= 1.3.20 (tested with commoncpp2 1.4.1)
http://sourceforge.net/projects/gnutelephony/
- libeXosip2 >= 2.2.2 (tested with eXosip2 2.2.3)
and libosip2 >= 2.2.1 (tested with libosip2-2.2.2)
http://savannah.gnu.org/projects/exosip/
http://savannah.gnu.org/projects/osip/
- libxml2, libxml2-devel, pkgconfig
usually available in distribution repositories
Optional libraries:
- zeroconf: (tested with mDNSResponder87)
http://developer.apple.com/darwin/projects/bonjour/
- QT: required for the graphical user interface
usually available in distribution repositories
- speex : codec for sound
Some of the required libraries may be downloaded from
http://www.sflphone.org/#downloads
or
http://www.sflphone.org/dev/
See tools/config.sh for details
Dependencies build instructions:
--------------------------------
You can use the builds script in tools directory.
1. Change the default configuration in config.sh (~/sflphone) is the prefix
2. ./download.sh
3. ./install.sh
If you don't use development files of your distribution and you don't want
to go on dependencies web site, you can use a custom dependencies building
script in tools/ directory.
1. Go to tools/ (cd tools)
2. Change the default configuration in config.sh (~/sflphone) is the prefix
3. ./download.sh
4. ./install.sh
You can also compile each dependencies, one by one:
1/ For commoncpp2-1.3.21
1/ For commoncpp2
./configure [option]
make
make install
2/ For ccrtp-1.3.5
2/ For ccrtp
./configure [option]
make
make install
3/ For libosip2-2.2.1
3/ For libosip2
./configure [option]
make
make install
How to compile SFLphoned ?
-------------------------
Preparing a CVS checkout of SFLPhone to be built
------------------------------------------------
Before building from a CVS checkout, the GNU autotools suite must be used
to generate the configure script and Makefiles. The current version
of SFLPhone has been tested with Automake 1.9 and Autoconf 2.59.
To do so, you may run the following script from the top directory:
./tools/autotoolize.sh
Building SFLPhone
-----------------
./configure [option]
make
make install (as root)
( Be sure you have the correct permissions).
How to use it ?
---------------
Using SFLPhone
--------------
If you have the sflphone 0.3 or 0.4 release, copy the file sflphonerc to sflphonedrc
cp ~/.sflphone/sflphonerc ~/.sflphone/sflphonedrc
cp ~/.sflphone/sflphonerc ~/.sflphone/sflphonedrc
If you have an older version, remove your sflphonerc file located in $HOME/.sflphone
1. Install a GUI like sflphone-qt
2. Lauch sflphone interface, a setup window appears.
3. If you do have a SIP account, fill the SIP stuff where related. You can use
STUN too.
3. If you do have a SIP account, fill the SIP stuff where related. You can
use STUN too.
4. Save your settings, restart it. You're done.
@ -61,44 +132,52 @@ A user's guide will be available on:
http://www.sflphone.org/doc/
Why does it not compile ?
What if it does not build?
-------------------------
- You don't have the same library versions as we do.
- Try using the same versions of the libraries as we do.
See http://www.sflphone.org in section Downloads.
- You don't have the same compiler (some libraries dislike
some compilers). We are using gcc 4.0.1 on
Fedora Core 4 Linux.
- Try using the same compilers as ours: gcc 4.1.0 on Fedora Linux Core 5
is known to work.
- If error occured while loading shared libraries,
you have to export LD_LIBRARY_PATH with your lib directory.
( example: export LD_LIBRARY_PATH=/opt/lib:${LD_LIBRARY_PATH} )
- If you have dependencies installed in unusual directories, try setting
the environment variable CXXFLAGS before building, for example:
export CXXFLAGS="-I/opt/include"
- If you don't install dependencies in classic install directories,
you have to export CXXFLAGS.
( example: export CXXFLAGS="-I/opt/include" )
How to enable iax support?
How to enable IAX support?
--------------------------
Go inside libs directory and execute ./libiax2.sh script.
Run ./configure with --enable-iax2 option.
Why does it not work ?
----------------------
Run-time troubleshooting
------------------------
- If errors occured when trying to load shared libraries, check that the
value of the environment variable LD_LIBRARY_PATH include the
directories containing the required libraries, eg:
export LD_LIBRARY_PATH=/path/to/my/lib:${LD_LIBRARY_PATH}
- Portaudio don't detect your sound card because :
* artsd is running
* jackd is running
On 2005/11/22, jack wasn't working with these settings: jackd -d alsa -r 8000
* you use alsa with sflphone and another application, but dmixer isn't configurated
correctly inside ~/.asoundrc or /etc/alsa/alsa.conf
On 2005/11/22, jack wasn't working with these settings:
jackd -d alsa -r 8000
* you use alsa with sflphone and another application, but dmixer isn't
configurated correctly inside ~/.asoundrc or /etc/alsa/alsa.conf
- sflphone refuse to start because it's running
You could have something like: "Exception: could not bind socket"
Try to close sflphone before
- echo "stop sflphone" | nc localhost 3999
echo "stop sflphone" | nc localhost 3999
or
- killall sflphone
killall sflphone
Short description of content of source tree:
-------------------------------------------
@ -106,7 +185,6 @@ Short description of content of source tree:
- ringtones/ contains the different ringtones.
- stund/ is an implementation of the protocol STUN used when there is a NAT.
- utilspp/ allows to implement a singleton.
- src/ is the core of SFLphone. It contains the main.cpp, managerimpl.cpp files,
audio and gui directories, and files about signalisation SIP.
Later, it should be better, when IAX will be implemented, that a directory
@ -124,6 +202,7 @@ Short description of content of source tree:
to sflphone client. The slfphone client can be a console program or a graphical interface
How is structured SFLphone (>=0.5)
----------------------------------
@ -166,19 +245,23 @@ VoIPLink vector contains all different VoIP link like SIP, IAX, ...
Call vector contains all the calls according to the kind of VoIP link.
Misc.
-----
Of course we love patches. And contribution. See http://www.sflphone.org/ .
The project infrastructure (CVS, bugtraqer, MLs) is maintained on :
About Savoir-Faire Linux
------------------------
Savoir-Faire Linux is a consulting company based in Montreal, Quebec.
Contributing to SFLPhone
------------------------
Of course we love patches. And contributions. And spring rolls.
The project infrastructure (CVS, bugtracker, MLs) is maintained on:
http://forge.novell.com/modules/xfmod/project/?sflphone
Don't hesitate to post your comments/suggestions/questions on the
forge.novell mailing-list.
Do not hesitate to join us and post comments, suggestions, questions
and general feedback on the forge.novell mailing-list.
Jean-Philippe Barette-LaPierre
(jean-philippe.barrette-lapierre@savoirfairelinux.com)
Laurielle Lea (laurielle.lea@savoirfairelinux.com)
Jerome Oufella (jerome.oufella@savoirfairelinux.com)
Yan Morin (yan.morin@savoirfairelinux.com)
-- The SFLPhone Team