diff --git a/AUTHORS b/AUTHORS index 5712f244b732124d3dd2d6673744cde794e4993c..301f9be8ac3da559e8d96f1ab86f774b942c7878 100644 --- a/AUTHORS +++ b/AUTHORS @@ -15,6 +15,8 @@ Imran Akbar (imr at stanford dot edu) Yan Morin (yan dot morin at savoifairelinux dot com) - zeroconf integration + - sflphoned deamon + - tests and debugging Contributors: diff --git a/CHANGES b/CHANGES index d88f10f9fcafc088b847589428bd931f57b7fad5..e1644f78548cda6fadc5b8f152621403db69e137 100644 --- a/CHANGES +++ b/CHANGES @@ -1,5 +1,10 @@ +SFLphoned/SFLphone (0.5) / 2005-10-17 + * sflphoned + * bug fixes + * sflphone-qt + * client/server protocol -SFLphone (0.4.1-pre2) / now +SFLphone (0.4.1-pre2) / 2005-09-30 * rearranged utilspp use * Bug fix when trying to use more than 6 lines. * Now, we send a final response to reINVITEs diff --git a/DEPS b/DEPS index 9a47469a392d363a3a2b682df4ed019d3c0bb892..3308b72d8e16f54673da7be13732a286e415927e 100644 --- a/DEPS +++ b/DEPS @@ -1,6 +1,6 @@ PortAudio: http://portaudio.com/archives/pa_snapshot_v19.tar.gz -Common C++ 2 1.3.6: http://sourceforge.net/projects/cplusplus/ -ccRTP 1.3.0: http://sourceforge.net/projects/cplusplus/ +Common C++ 2 1.3.20: http://sourceforge.net/projects/cplusplus/ +ccRTP 1.3.5: http://sourceforge.net/projects/cplusplus/ libosip 2.2.1: http://savannah.gnu.org/projects/osip/ -libeXosip2-1.9.1-pre15: http://www.antisip.com/download/ +libeXosip2-1.9.1-pre17: http://www.antisip.com/download/ mDNSResponder87: http://developer.apple.com/darwin/projects/bonjour/ diff --git a/README b/README index 69819e003dfdd811027a0be8151804f6e9be7301..927460d38d020266d301a3451afe084e50930f3b 100644 --- a/README +++ b/README @@ -1,30 +1,29 @@ -This is SFLPhone-0.4.1-rc1 release. +This is SFLPhoned-0.5 release. - -You need ccrtp-1.3.0 which needs commoncpp2>=1.3.0 -libeXosip2-1.9.1-pre15 needs libosip2-2.2.0 +You need ccrtp-1.3.5 which needs commoncpp2>=1.3.20 +libeXosip2-1.9.1-pre17 needs libosip2-2.2.0 You also need PortAudio_v19 See http://www.sflphone.org/#downloads to download required libraries. Dependencies build instructions: -------------------------------- -1/ For commoncpp2-1.3.6 +1/ For commoncpp2-1.3.20 ./configure [option] make make install -2/ For ccrtp-1.3.0 +2/ For ccrtp-1.3.5 ./configure [option] make make install -3/ For libosip2-2.2.0 +3/ For libosip2-2.2.1 ./configure [option] make make install -4/ For libeXosip2-1.9.1-pre15 +4/ For libeXosip2-1.9.1-pre17 ./configure --disable-josua [option] make make install @@ -34,17 +33,8 @@ Dependencies build instructions: make make install -6/ If you want the new gui -use: ./configure --enable-newgui -and do -cd src/gui/official -QTDIR=/usr/lib/qt4 qmake4 sflphone.pro -ln -s ../../../utilspp -QTDIR=/usr/lib/qt4 make - - -How to compile SFLphone ? +How to compile SFLphoned ? ------------------------- ./configure [option] @@ -56,9 +46,11 @@ make install (as root) How to use it ? --------------- -If you have old version, remove your sflphonerc file located in $HOME/.sflphone +If you have the sflphone 0.3 or 0.4 release, copy the file sflphonerc to sflphonedrc +cp ~/.sflphone/sflphonerc ~/.sflphone/sflphonedrc +If you have an oldre version, remove your sflphonerc file located in $HOME/.sflphone -1. Lauch it, a setup window appears. +1. Lauch sflphone-qt interface, a setup window appears. 2. If you do have a SIP account, fill the SIP stuff where related. You can use STUN too. @@ -77,8 +69,8 @@ Why does it not compile ? See http://www.sflphone.org in section Downloads. - You don't have the same compiler (some libraries dislike - some compilers). We are using gcc 3.3.3 on - Fedora Core 2 Linux. Someone reported it works on gcc 3.4. + some compilers). We are using gcc 4.0.1 on + Fedora Core 4 Linux. - If error occured while loading shared libraries, you have to export LD_LIBRARY_PATH with your lib directory. @@ -92,54 +84,58 @@ Why does it not compile ? Short description of content of source tree: ------------------------------------------- -- skins/ contains the different available skins in separated directories. -- pixmaps/ contains all the pixmaps used in the configuration window. - rings/ 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. +- 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 groups these protocols. The ManagerImpl class is the intermediaire between all the layer in the tree. -- src/audio/ is the audio layer. It contains all about tones, dtmf, audiodriver, rtp layer, audio codec ulaw, alaw and gsm. +- src/audio/ is the audio layer. It contains all about tones, dtmf, audiodriver, + rtp layer, audio codec ulaw, alaw and gsm. - src/audio/gsm/ contains the implementation of gsm audiocodec library. - src/audio/pacpp/ implements PortAudioCpp, a native C++ binding of PortAudio V19. -- src/gui/ is the directory that contains all about different user interface. - The GuiFramework class is the base class of all user interface objects. It - receives mouse, keyboard events from GUI child class and calls ManagerImpl - functions which correspond. GuiFramework receives also events from ManagerImpl - and handle them according to the GUI chosen by the user, with virtual - functions. -- src/gui/qt is the implementation of QT user interface. +- src/gui/ is the old directory that contains all about different user interface. +- src/gui/server is the directory that talk (tcp socket on port 3999) + to sflphone client. The slfphone client can be a console program or a graphical interface How is structured SFLphone (>=0.4) ---------------------------------- - +------+ +--------+ - |GUI Qt| |GUI text| ... - +------+ +--------+ - | | + +------------+ + |TCPSessionIO| + +------------+ + | + +------------+ + | SessionIO | + +------------+ + | + +------------+ + | GUI Server | + +------------+ + | +---------------------------+ - | GUI Framework | + | GUI Framework | +---------------------------+ - | + | +---------------------------+ - | ManagerImpl | + | ManagerImpl | +---------------------------+ - | + | +---------------------------+ - | VoIPLink | + | VoIPLink | +---------------------------+ - | | - +-----------+ +-------+ - | SIP | | IAX | - | RTP | +-------+ - | STUN | + | | + +-----------+ +-------+ + | SIP | | IAX | + | RTP | +-------+ + | STUN | +-----------+ It's in ManagerImpl where we declared Call vector and VoIPLink vector. @@ -162,4 +158,4 @@ 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) diff --git a/TODO b/TODO index 8265db15fa0093915e6e5e27757cb7b1dc1c7a70..de33d642876516ac1ba5efa8d47d10533798d0ba 100644 --- a/TODO +++ b/TODO @@ -6,12 +6,10 @@ For project core: ---------------- Management Config like about:config in Mozilla Improvement of STUN -Add ZeroConf support Add IAX support Management of account (add, remove, ...) Management of exceptions Remove all warnings in compilation -Add unregister method when application is closed Better handling for an reINVITE request. For project dependencies: diff --git a/configure.ac b/configure.ac index 31339b8ffb33bc2dcae331e89c4083f1b5c951fc..10c28226e0d2dbd7cda4938be8f8ab2f5ef26760 100644 --- a/configure.ac +++ b/configure.ac @@ -3,7 +3,7 @@ AC_INIT(acinclude.m4) AM_CONFIG_HEADER(config.h) dnl figure out the sflphone version -VERSION=`sed -ne 's/^#define VERSION "\(.*\)"/\1/p' ${srcdir}/src/global.h` +VERSION=`sed -ne 's/^#define SFLPHONED_VERSION "\(.*\)"/\1/p' ${srcdir}/src/global.h` AC_SUBST(VERSION) dnl get rid of release number @@ -14,8 +14,8 @@ LIBS="$LIBS -lstdc++" dnl dnl Solaris pkgadd support definitions -PKGADD_PKG="SFLPhone" -PKGADD_NAME="SFLPhone - a SIP client" +PKGADD_PKG="SFLPhoned" +PKGADD_NAME="SFLPhone - a SIP client and deamon" PKGADD_VENDOR="http://www.sflphone.org/" AC_SUBST(PKGADD_PKG) AC_SUBST(PKGADD_NAME) diff --git a/src/global.h b/src/global.h index 9eb5a8482b55712b1d8b9583b7b2456ea8dc1514..021f6cd1a6d100adf49031efa3718005d8e11f20 100644 --- a/src/global.h +++ b/src/global.h @@ -35,8 +35,8 @@ typedef short int16; #define _debug(...) #endif -#define VERSION "0.5" -#define VERSIONNUM 0x000500 +#define SFLPHONED_VERSION "0.5" +#define SFLPHONED_VERSIONNUM 0x000500 #define PROGNAME "sflphoned" #define PROGDIR "sflphone" diff --git a/src/gui/server/Makefile.am b/src/gui/server/Makefile.am index 0cd86e1fe56e7d3b33197ef3a94da7736481c992..bc9b063667e409d806b595b2266c94ec491c9ef1 100644 --- a/src/gui/server/Makefile.am +++ b/src/gui/server/Makefile.am @@ -1,14 +1,13 @@ noinst_LTLIBRARIES = libsflphoneguiserver.la -libsflphoneguiserver_la_SOURCES = $(BUILT_SOURCES) guiserverimpl.cpp \ - responsemessage.cpp request.cpp requestfactory.cpp argtokenizer.cpp tcpsessionio.cpp \ - requestmanager.cpp sessionio.cpp tcpstreampool.cpp requestconfig.cpp +libsflphoneguiserver_la_SOURCES = guiserverimpl.cpp \ + responsemessage.cpp request.cpp requestfactory.cpp argtokenizer.cpp tcpsessionio.cpp \ + requestmanager.cpp sessionio.cpp tcpstreampool.cpp requestconfig.cpp libsflphoneguiserver_la_CXXFLAGS = -DPREFIX=\"$(prefix)\" -DPROGSHAREDIR=\"${datadir}/sflphone\" +libsflphoneguiserver_la_CPPFLAGS = -I$(top_srcdir) $(libccext2_CFLAGS) libsflphoneguiserver_la_LIBADD = -AM_CPPFLAGS = -I$(top_srcdir) $(libccext2_CFLAGS) - noinst_HEADERS = responsemessage.h request.h requestfactory.h subcall.h \ - argtokenizer.h tcpsessionio.h requestmanager.h guiserver.h guiserverimpl.h sessionio.h \ + argtokenizer.h tcpsessionio.h requestmanager.h guiserver.h guiserverimpl.h sessionio.h \ tcpsessionio.h tcpstreampool.h requestconfig.h diff --git a/src/gui/server/guiserverimpl.cpp b/src/gui/server/guiserverimpl.cpp index edb94b6c9ea4563e3b1df4c5e1d0bf351a7e7b06..bc721079f43c37b0aa04b01a41ad8dad5cd9a4ad 100644 --- a/src/gui/server/guiserverimpl.cpp +++ b/src/gui/server/guiserverimpl.cpp @@ -287,7 +287,7 @@ std::string GUIServerImpl::version() { std::ostringstream version; - version << PROGNAME << " " << VERSION; + version << PROGNAME << " " << SFLPHONED_VERSION; return version.str(); } diff --git a/src/main.cpp b/src/main.cpp index bf1f260fc2a1023434f3a0548b1d679fa9cdf806..f06121cdabb596e0cf4cb4254cf2f72dda7cd596 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -31,7 +31,7 @@ main (int argc, char **argv) { if (argc == 2 && strcmp(argv[1], "--help") == 0) { - std::cout << PROGNAME << " Deamon " << VERSION << ", by Savoir-Faire Linux 2004-2005" << std::endl << std::endl; + std::cout << PROGNAME << " Deamon " << SFLPHONED_VERSION << ", by Savoir-Faire Linux 2004-2005" << std::endl << std::endl; std::cout << "USAGE: sflphoned [--help]" << std::endl; std::cout << "Parameters: " << std::endl; std::cout << " --help for this message" << std::endl << std::endl; diff --git a/src/sipvoiplink.cpp b/src/sipvoiplink.cpp index 4ac6d46e91718e172bff62a429c301942acdf9fe..f0873dd4b9b37d7aa1858dfc4e9009b0c2af215d 100644 --- a/src/sipvoiplink.cpp +++ b/src/sipvoiplink.cpp @@ -76,7 +76,7 @@ SipVoIPLink::init (void) std::string tmp; int i; - tmp = std::string(PROGNAME) + "/" + std::string(VERSION); + tmp = std::string(PROGNAME) + "/" + std::string(SFLPHONED_VERSION); i = eXosip_init (); if (i != 0) {