diff --git a/.gitignore b/.gitignore index 45623f37..7fafaed7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,5 @@ +*.iml +.idea .project .classpath target/ diff --git a/README.txt b/README.md similarity index 73% rename from README.txt rename to README.md index 94ba387f..da6f4f8a 100644 --- a/README.txt +++ b/README.md @@ -1,89 +1,96 @@ -============================================================ - Peers: java sip softphone - http://peers.sourceforge.net/ -============================================================ +# Peers: java sip softphone +http://peers.sourceforge.net/ -LICENSE +## LICENSE This software is released under GPL License version 3 or any later version. Please read this license in gpl.txt if not already done. -SPECIFICATION - +## SPECIFICATION Peers is a software phone (softphone) compatible with the following specifications: - - RFC 3261 (SIP), - - RFC 4566 (SDP), - - RFC 3550 (RTP), - - RFC 3551 (RTP Audio/Video profile), - - RFC 2617 (Digest Authentication), - - RFC 4733 (DTMF), - - ITU-T G.711 (PCMU, PCMA) -You should easilly retrieve those specifications on internet with -your favorite search engine. +- RFC 3261 (SIP), +- RFC 4566 (SDP), +- RFC 3550 (RTP), +- RFC 3551 (RTP Audio/Video profile), +- RFC 2617 (Digest Authentication), +- RFC 4733 (DTMF), +- ITU-T G.711 (PCMU, PCMA) + +You should easily retrieve those specifications on internet with +your favorite search engine. -PREREQUISITES +## PREREQUISITES This software has been developed using Oracle Java Development Kit version 7. You should install the latest Java Runtime Environment on your computer if you just want to run the application. If you want to compile the sources yourself, you should use the JDK. In both cases, you can download the installation files here: - http://www.oracle.com/technetwork/java/javase/downloads/index.html - +[Java SE Downloads](http://www.oracle.com/technetwork/java/javase/downloads/index.html) -CONFIGURATION +## CONFIGURATION -Your SIP account credentials can be configured in conf/peers.xml. +Your SIP account credentials can be configured in `conf/peers.xml`. Please read comments in this file for configuration details. -This configuration file is ruled by a grammar file: peers.xsd. +This configuration file is ruled by a grammar file: `peers.xsd`. Thus to modify this file, you can use jEdit with XML and Error list plugins. You can download jEdit here: - http://www.jedit.org/index.php?page=download +[jEdit download page](http://www.jedit.org/index.php?page=download) This provides xml completion and grammar checking which can be very useful to avoid simple configuration errors. You can also configure your SIP account using graphical user interface. -RUNNING - +## RUNNING If you are a Windows user you can use the .bat batch script in root -directory, if you use any Unix compatible sytem, you can use the -.sh script. You can also double click .jar file. You can then call +directory, if you use any Unix compatible system, you can use the +`.sh` script. You can also double click `.jar` file. You can then call any IP address using SIP protocol, if the remote host does not listen on the default SIP port (5060), you can use the following example URI: - sip:192.168.1.2:6060 -For some softphones, it is necessary to add a userpart to the called + +``` +sip:192.168.1.2:6060 +``` + +For some softphones, it is necessary to add a user part to the called sip uri, for example: - sip:alice@192.168.1.2:6060 + +``` +sip:alice@192.168.1.2:6060 +``` If you configured a sip account in configuration file or using gui, you can also place calls with usual sip uris: - sip:bob@biloxi.com + +``` +sip:bob@biloxi.com +``` Advanced users can run several peers instances on the same computer. In this case a folder should be created in peers root directory for each peers instance. This folder should contain three directories: -conf, logs and media. conf should contain peers.xml and peers.xsd for this -instance. peers.xml will need to be updated with this instance -parameters, peers.xsd can be copied from root conf directory. You will -need to do this for each instance. parameter in configuration file -should be activated for at most one peers instance, this avoids comfusion +conf, logs and media. conf should contain `peers.xml` and `peers.xsd` for this +instance. `peers.xml` will need to be updated with this instance +parameters, `peers.xsd` can be copied from root conf directory. You will +need to do this for each instance. `` parameter in configuration file +should be activated for at most one peers instance, this avoids confusion in microphone capture and sound playback. You should also check that SIP and RTP ports are not the same in each configuration file. Here is an example configuration: +``` peers/ user1/ conf/ @@ -97,34 +104,38 @@ Here is an example configuration: peers.xsd logs/ media/ +``` Once all those files have been created and updated, each instance can be run providing a java system property giving peers home directory: - java -classpath build/classes -Dpeers.home=user1 net.sourceforge.peers.gui.MainFrame +``` +java -classpath build/classes -Dpeers.home=user1 net.sourceforge.peers.gui.MainFrame +``` As a Main-Class has been defined in jar manifest, you can also use the following command line: - java -jar build/peers.jar -Dpeers.home=user1 net.sourceforge.peers.gui.MainFrame - +``` +java -jar build/peers.jar -Dpeers.home=user1 net.sourceforge.peers.gui.MainFrame +``` -HISTORY +## HISTORY -2007-11-25 0.1 First release +### 2007-11-25 0.1 First release minimalist UAC and UAS. -2007-12-09 0.1.1 First release update +### 2007-12-09 0.1.1 First release update moved startup scripts in root directory -2008-03-29 0.2 Second release +### 2008-03-29 0.2 Second release New features: @@ -136,7 +147,7 @@ Bugs fixed: - 1900810 MTU too small management -2008-06-08 0.3 Third release +### 2008-06-08 0.3 Third release New features: @@ -153,7 +164,7 @@ Bugs fixed: - 1994625 provisional responses with to-tag -2009-09-23 0.3.1 Peers resurrection +### 2009-09-23 0.3.1 Peers resurrection New features: @@ -176,7 +187,7 @@ Improved features: g711 encoder) -2010-12-13 0.4 Peers GUI +### 2010-12-13 0.4 Peers GUI New features: @@ -197,7 +208,7 @@ Bugs fixed: - 3098214 start CSeq at 1 instead of 0 -2011-05-19 0.4.1 Bug fixes +### 2011-05-19 0.4.1 Bug fixes Bugs fixed: @@ -208,7 +219,7 @@ Bugs fixed: - 3285107 added authentication on bye request -2011-07-04 0.4.2 Bug fixes +### 2011-07-04 0.4.2 Bug fixes Bugs fixed: @@ -217,7 +228,7 @@ Bugs fixed: - 3324115 ACK does not contain Authorization header -2011-09-06 0.4.3 Various improvements +### 2011-09-06 0.4.3 Various improvements New features: @@ -232,7 +243,7 @@ Bugs fixed: - 3392342 bad CANCEL sip request when other party doesn't picking up -2014-05-01 0.5 Maven release +### 2014-05-01 0.5 Maven release - moved source code from sourceforge subversion repository to git hosted @@ -242,6 +253,6 @@ Bugs fixed: - simplified SIP API -AUTHOR +## AUTHOR Yohann Martineau yohann.martineau@gmail.com diff --git a/maven-help.txt b/maven-help.txt index 03836300..80dca770 100644 --- a/maven-help.txt +++ b/maven-help.txt @@ -21,7 +21,7 @@ calling one phase automatically calls all previous phases. 1 phase: n goals -goals are independant tasks that can be bound to a phase or not +goals are independent tasks that can be bound to a phase or not packaging defines the way goals and phases associated: diff --git a/peers-demo/pom.xml b/peers-demo/pom.xml index 2bcb4bcd..e253c3d8 100644 --- a/peers-demo/pom.xml +++ b/peers-demo/pom.xml @@ -28,4 +28,17 @@ ${project.version} + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + 1.6 + 1.6 + + + + diff --git a/peers-gui/pom.xml b/peers-gui/pom.xml index db2bda40..1792de22 100644 --- a/peers-gui/pom.xml +++ b/peers-gui/pom.xml @@ -6,6 +6,7 @@ peers-gui 0.5.1-SNAPSHOT jar + Peers Graphic User Interface (GUI) UTF-8 @@ -27,6 +28,15 @@ + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + 1.6 + 1.6 + + + maven-assembly-plugin 2.2.1 diff --git a/peers-javaxsound/pom.xml b/peers-javaxsound/pom.xml index 250cf711..e6d21d48 100644 --- a/peers-javaxsound/pom.xml +++ b/peers-javaxsound/pom.xml @@ -18,5 +18,17 @@ ${project.version} - + + + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + 1.6 + 1.6 + + + + diff --git a/peers-js/pom.xml b/peers-js/pom.xml index 09fe9aea..d03a3579 100644 --- a/peers-js/pom.xml +++ b/peers-js/pom.xml @@ -6,6 +6,7 @@ peers-js 0.5.1-SNAPSHOT jar + Peers JavaScript demo page UTF-8 @@ -132,6 +133,8 @@ ${project.build.directory}/endorsed + 1.6 + 1.6 diff --git a/peers-jws/pom.xml b/peers-jws/pom.xml index 2e58f9ca..6ddfba1e 100644 --- a/peers-jws/pom.xml +++ b/peers-jws/pom.xml @@ -6,6 +6,7 @@ peers-jws 0.5.1-SNAPSHOT jar + Java WebStart UTF-8 @@ -32,7 +33,15 @@ ${project.name} - + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + 1.6 + 1.6 + + maven-jar-plugin 2.3.1 diff --git a/peers-lib/pom.xml b/peers-lib/pom.xml index dfb5e52f..3a6d0b98 100644 --- a/peers-lib/pom.xml +++ b/peers-lib/pom.xml @@ -6,6 +6,7 @@ peers-lib 0.5.1-SNAPSHOT jar + Peers core library UTF-8 @@ -22,6 +23,15 @@ + + org.apache.maven.plugins + maven-compiler-plugin + 2.3.2 + + 1.6 + 1.6 + + org.apache.maven.plugins maven-surefire-plugin