Skip to content
Snippets Groups Projects
Commit 01497943 authored by Emmanuel Milou's avatar Emmanuel Milou
Browse files

Clean up in the working directory

parent 2419fc6e
Branches
Tags
No related merge requests found
// AsciiDoc file
About
=====
SFLphone is meant to be a robust enterprise-class desktop phone. It is designed with a hundred-calls-a-day receptionist in mind. It can work for you, too.
SFLphone is released under the *GNU General Public License*.
SFLphone is being developed by the global community, and maintained by
http://www.savoirfairelinux.com[Savoir-faire Linux], a Montreal,
Quebec, Canada-based Linux consulting company.
// AsciiDoc file
Build notes
===========
sflphoned
---------
Instructions to build `sflphoned`:
TIP: Check out to fullfill the sflfile:Dependencies.txt[dependencies] first.
dbus-c++-bindings
~~~~~~~~~~~~~~~~~
Go to `libs/dbus` and run:
-------------------------
./autogen.sh
./configure --prefix=/usr
make
sudo make install
-------------------------
You can replace `--prefix=/usr` by whatever prefix you like. Make sure to
also change this value in the next steps.
NOTE: If you have `colorgcc`, configure will *fail* on `libeXpat`. Issue an `unset CC` and `unset CXX` to build the dbus bindings.
libiax2
~~~~~~~
Go to `libs/libiax2` and run:
-------------------------
./gen.sh
./configure --prefix=/usr
make
sudo make install
-------------------------
the daemon
~~~~~~~~~~
Then, go to the root of the repository, and run:
---------------------------------------------------
autoreconf --install
./configure --prefix=/usr
make
sudo make install
---------------------------------------------------
Run:
--------------------------------------
./configure --prefix=/usr --with-debug
--------------------------------------
to enable debug mode.
sflphone-qt
-----------
`sflphone-qt` is *deprecated* and can't be built anymore.
sflphone-gtk
------------
Compile `sflphone-gtk` by running:
-------------------------
cd sflphone-gtk
gnome-autogen.sh
./configure --prefix=/usr
make
sudo make install
-------------------------
Here again, run `./configure` with `--with-debug` to enable debugging mode.
NOTE: You may need to run `autoreconf --install` before the `configure` script.
You'll find `gnome-autogen.sh` in some `gnome-common`-like package of
your distribution. You can also replace it by a call to:
`autoreconf --install`.
// AsciiDoc file
Debugging techniques for SFLphone
---------------------------------
Listening protocol using `tcpdump`:
----------------------
----------------------
// AsciiDoc file
Dependencies to compile SFLphone daemon
---------------------------------------
`--------------------`----------`-----------------------------------------------------
Program Version Notes
--------------------------------------------------------------------------------------
libiax2 0.2.3 http://svncommunity.digium.com/view/libiax2/trunk/[svn repos] Source code included in the git repository.
Common C++2 1.3.21 http://sourceforge.net/projects/cplusplus/[website]
ccRTP 1.3.5 http://sourceforge.net/projects/cplusplus/[website]
libeXosip2 ** 2.2.2 http://savannah.nongnu.org/projects/exosip/[website]
libosip2 2.2.2 http://www.gnu.org/software/osip/[website]
libsamplerate 0.1.2 http://www.mega-nerd.com/SRC/[website]
libdbus-glib 0.73 Packaged with your favorite distribution.
dbus-c++-1 0.5 Source code included in the git repository. See Build notes.
libexpat1 1.95.8 Packaged with your favorite distribution.
libboost-dev 1.34.1
--------------------------------------------------------------------------------------
Dependencies to compile SFLphone-GTK
------------------------------------
`--------------------`----------`-----------------------------------------------------
Program Version Notes
--------------------------------------------------------------------------------------
libgtk2.0 2.2
gtkglext 1.0 Video branch. Integration OpenGL and GTK
dbus-glib 0.35
gnome-common
--------------------------------------------------------------------------------------
Dependencies to use audio codecs
--------------------------------
`--------------------`----------`-----------------------------------------------------
Program Version Notes
--------------------------------------------------------------------------------------
libgsm1-dev 1.0.10 Standard package - Necessary to use GSM codec
libspeex1-dev 1.1.12 Standard package - Necessary to use SPEEX codec
--------------------------------------------------------------------------------------
// AsciiDoc
Downloads
=========
Latest release:
[grid="all"]
`--------------------`----------`---------------------------
Package Type Link
------------------------------------------------------------
*SFLphone 0.7.2* Sources http://www.sflphone.org/releases/sflphone-0.7.2.tar.gz[Download] sflfile:Build.txt[Build notes]
FC6-RPM http://www.sflphone.org/releases/packages/rpm-fc6/sflphone-0.7.2-1.i386.rpm[Download]
RC6-SRPM http://www.sflphone.org/releases/packages/rpm-fc6/devel/sflphone-0.7.2-1.src.rpm[Download]
*SFLphone 0.7.0* Source http://www.sflphone.org/releases/sflphone-0.7.0.tar.gz[Download]
FC4-RPM http://www.sflphone.org/releases/packages/rpm-fc4/sflphone-0.7.0-1.i386.rpm[Download]
FC4-SRPM http://www.sflphone.org/releases/packages/rpm-fc4/devel/sflphone-0.7.0-1.src.rpm[Download]
------------------------------------------------------------
Latest source code
------------------
See the sflfile:Git_Access.txt[repository access] page for the latest source
code.
// [done], [not done], [not tested], etc.. are defined in asciidoc.conf
Features
========
SFLphone feature map
--------------------
* SIP features
- transfer: [done] and tested
- reinvite: [done] and tested
- play DTMF sipinfo: [done] and tested
- receive text message: [done] and tested with sipsak
- SFLphone to snom (asterisk): [done] and tested
- SFLphone to SFLphone (IP and no proxy): [done] and tested
- conference: [not done] yet
- send text message: [not done] yet
* IAX support: almost [done]
- place call: [done]
- transfer call: [done]
* Audio devices:
- OSS: [done] and tested (portaudio)
- ALSA: [done] and tested (portaudio)
- ALSA with dmix: [not tested]
- JACK: [partial], portaudio has problems to open it
- ASIO on windows: in portaudio, [not tested]
- on MacOSX: we can't use portaudio in 8kHz. libsamplerate was added to convert from 44,1kHz to 8kHz.
* Codecs:
- G711a/PCM: [done] and tested
- G711u: [done] and tested
- GSM: [done] and tested
- Speex codec 8khz: [not tested] but integrated
- ILBc: [notdone]
* Video support:
- video integration in SIP: [not done]
- video integration in IAX: [not done]
- integration in QT: not done
* Zeroconf:
- sflphone-d: partially
- sflphone-qt: not done
* SFLphone Client:
- QT3: done and tested on linux
- QT4: not tested
- GTK: not done
- Command Line Interface (in C): partially done
- Command Line Interface (in python): not done
* MacOSX port:
- compilation: done
- 44,1khz to 8khz conversion (with libsamplerate): not tested
* Windows port:
- compilation of sflphoned: not done
- compilation of sflphone-qt (qt3): not done
- compilation of sflphone-qt (qt4): not done
* Desktop Integration:
- firefox sip: handling: open sflphone, not integrated in install process
- konqueror sip: handling: open sflphone, not integrated in install process
- addressbook: open sflphone and call, not integrated in install process
- inter-process communication: [not done]
- tray icon: [not done]
- menu icon (.desktop): only in fedora rpm
- LDAP enterprise directory support: [not done]
* Packaging:
- Remove libeXosip2 from package: [not done]
- Remove portaudio final from package: [not done]
- Fedora Core 4 packages: [done]
- Suse 9.3 packages: [done]
- .tar.gz publication: [done]
- Debian packages: [not done]
- Suse 10 packages: [not done]
SFLphone-qt (linux)
-------------------
* audiodevice input/output selector: [not done]
* drag'n'drop over lcd screen: [done]
* paste with ctrl+v: [done]
* keyboard mapping: [partial], not completed
* keyboard shortcut: [partial], not completed
// AsciiDoc file
Git anonymous access
--------------------
To grab source code form SFLphone's git repository, run:
---------------------------------------------
git clone git://sflphone.org/git/sflphone.git
---------------------------------------------
which requires pass-through of *tcp port 9418*, or
----------------------------------------------
git clone http://sflphone.org/git/sflphone.git
----------------------------------------------
then
----------------------------------------------
cd sflphone
----------------------------------------------
View sflsite:build[build notes] for more details.
Git developer access
--------------------
Run:
--------------------------------------------------------------
ssh-keygen -C sflphone_org@sflphone.org
cat ~/.ssh/id_rsa.pub
--------------------------------------------------------------
and transmit us the content of the `id_rsa.pub` file, for shared-key
authentication. Then, if you already have a cloned repository, run:
--------------------------------------------------------------
git-config remote.origin.url git+ssh://sflphone_org@sflphone.org/git/sflphone.git
--------------------------------------------------------------
Otherwise, grab a new copy:
--------------------------------------------------------------
git clone git+ssh://sflphone_org@sflphone.org/git/sflphone.git
cd sflphone
autoreconf --install
--------------------------------------------------------------
// AsciiDoc file
Git developer access
--------------------
Run:
--------------------------------------------------------------
ssh-keygen -C sflphone_org@sflphone.org
cat ~/.ssh/id_rsa.pub
--------------------------------------------------------------
and transmit us the content of the `id_rsa.pub` file, for shared-key
authentication. Then, if you already have a cloned repository, run:
--------------------------------------------------------------
git-config remote.origin.url git+ssh://sflphone_org@sflphone.org/git/sflphone.git
--------------------------------------------------------------
Otherwise, grab a new copy:
--------------------------------------------------------------
git clone git+ssh://sflphone_org@sflphone.org/git/sflphone.git
cd sflphone
autoreconf --install
--------------------------------------------------------------
View sflsite:build[build notes] for more details.
//AsciiDoc file
Vision
------
SFLphone aims to provide an easy to use, feature full, standard compliant, VoIP software phone.
Goals for next release (0.8)
----------------------------
- Server side:
* Functional IAX transport
* Near perfect audio
* Multiple-client (GUI or other) connectivity to server
- New Gtk+ GUI with following functionality (although the server can do more):
* User can place a call
* User can answer a call
* User can transfer a call
* User can have an unlimited number of calls
* User can put a call on hold and off hold
* User is informed of waiting voice mail
* User can set up new SIP/IAX accounts
* User can edit current accounts
* User can delete accounts
* User can adjust speaker and microphone volume
* All instances of the UI must stay in sync.
Goals for release 0.8.5
-----------------------
- Server side:
* Perfect audio
* Better error handling of failed account registrations
* Fully working multiple account functionality
- Gtk+ GUI updates
* User can set up audio parameters
* User can set up STUN and proxy settings for SIP accounts
* User can choose a ringtone theme
* User can set up locale settings
* Desktop notification of events
* User can choose an account to place a call with
- Basic Python command-line client
* User can place a call
* User can answer calls
* User can send DTMF
* User can transfer a call
Goals for release 0.9
---------------------
- Server side:
* Contacts management (LDAP)
* Call history
* SMS sending
* Status (DND, Available, ...)
- Gtk+ GUI updates
* User can receive and send SMS messages
* User is informed of call duration
* User can set up speed call buttons
* User can consult/clear call history
* User can set a status
- Python CLI client
* Stable and mature code
* Extensible and configurable client
* User can put a call on hold and off hold
* User can adjust speaker and microphone volume
* User can script the client and integrate into other components
* CLI stays in sync with any other number of GUI/CLI/clients
// AsciiDoc file
IRC
===
Server:: `irc.freenode.org`
Channel:: `#sflphone`
// AsciiDoc file
Mailing lists
=============
sflphone-user
-------------
http://pouetpouet.list.com[subscribe] http://pouetpouet2.list.com[unsubscribe]
http://pouetpouet6.list.com[archives]
sflphone-devel
--------------
http://pouetpouet3.list.com[subscribe] http://pouetpouet4.list.com[unsubscribe]
http://pouetpouet5.list.com[archives]
// AsciiDoc file
News
====
January 2008:: Partnership with *Polytechnic School* of Montreal to implement video calls and video conference. Read sflsite:sflvideo[here].
December 2007:: Upcoming release 0.8.0. See the last sflsite:screenshots[].
September 2007:: A new Gtk+ client is being written, to play with the new D-BUS client/server interface.
//AsciiDoc file
Partnership
-----------
A partnership between Savoir-Faire Linux and the *Polytechnic school* of Montreal will begin in January 2008.
Five students from Polytechnic school will be working part-time on the project for a period of four months.
Goals
-----
- The technical goal of this partnership is to implement a video layer in SFLphone to allow *video calls* and *video conferencing*. It is an interesting challenge because videoconference is not much implemented in softphones yet. The first step consists in implementing peer-to-peer video calls.
- This is how the application should behave on a client side:
* The user opens a multimedia session with an other client (SIP protocol)
* Local video capture (video4linux2 driver) is compressed and shipped through RTP packets.
* In the same time, the incoming video stream (in RTP packets also) is decompressed and displayed.
* The visualization framework should be flexible and should allow user parametrization. 3D API OpenGL should be used.
// AsciiDoc file
Screenshots of upcoming releases
--------------------------------
This is an upcoming client, to be released with version 0.8.
.New SFLphone-GTK client (ver. 0.8)
sflimage::images/screenshots/sflphone_gtk_0.8.png[New SFLphone GTK client]
.New SFLphone-GTK client with the dialpad (ver. 0.8)
sflimage::images/screenshots/sflphoneDialpad_gtk_0.8.png[New SFLphone GTK client]
Historical screenshots
----------------------
.SFLphone 0.6.2 - Brushed metal skin
sflimage::images/screenshots/sflphone_qt3_0.6.2.png[SFLphone 0.6.2]
.SFLphone 0.6 - Alternate skin
sflimage::images/screenshots/sflphone_metal.png[SFLphone 0.6]
#
# Used in Features.txt
#
[replacements]
\[done\]\s*(.*)$=<span style="color: green">done \1<span>
\[not\s?done\]\s*(.*)$=<span style="color: red">not done \1<span>
\[partial\]\s*(.*)$=<span style="color: orange">partially done \1<span>
\[not\s?tested\]\s*(.*)$=<span style="color: orange">not tested \1<span>
#
# Used everywhere to link pages together. Refers to another
#
ifdef::backend-xhtml11[]
[sflfile-inlinemacro]
<a href="index.php?file={target}">{0?{0}}{0!{target}}</a>
[sflsite-inlinemacro]
<a href="index.php?mod={target}">{0?{0}}{0!{target}}</a>
endif::backend-xhtml11[]
#
# Image links (with "image:")
#
[sflimage-blockmacro]
<div class="image">
<a id="{id}"></a>
<div class="content">
<a class="image" href="{link#}">
<img src="index.php?img={target}" alt="{1={target}}"{1? title="{1}"}{width? width="{width}"}{height? height="{height}"}/>
{link#}</a>
</div>
<div class="image-title">{title}</div>
</div>
\ No newline at end of file
doc/images/devel.png

6 KiB

doc/images/fetch.png

3.16 KiB

doc/images/home.png

1.51 KiB

doc/images/info.png

5.56 KiB

doc/images/polytechnique.jpg

54.6 KiB

0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment