Version 366 (Adrian Georgescu, 01/10/2009 01:20 pm) → Version 367/574 (Adrian Georgescu, 01/10/2009 01:47 pm)

= Description =

[[Image(htdocs:SIPSIMPLE-client.png, align=right, nolink)]]
SIP SIMPLE client is Python software library built on top of PJSIP that
together with middleware allows for easy development of Client/Server and
Peer-to-Peer Internet communications end-points based on SIP SIMPLE family
of protocols for voice, video, presence, instant messaging (IM) and file
transfer capabilities.

The software is provided under the [source:LICENSE GPL LICENSE]

The goal of this project is to deliver the best open source Python library
for rich featured SIP end-points, while hiding the complex underlying
functionality behind an easy to use high-level application-programming
interface. This package supports to the SDP negotiation, audio codecs and
NAT traversal functionality provided by PJSIP and will thus deliver rich
communications combining instant messaging (IM), voice and video streams. It
also supports file transfer and multi-party chat sessions using MSRP
protocol, publication and subscription for rich presence information such as
availability, moods, activities and geo-location, management for presence
rules, resource lists, RLS services using XCAP protocol.

== Background ==

SIP stands for 'Sessions Initiation Protocol', an IETF standard described by
[ RFC 3261]. SIP is an application-layer control protocol that can establish,
modify and terminate multimedia sessions such as Internet telephony calls
(VoIP). Media can be added to (and removed from) an existing session.

SIP transparently supports name mapping and redirection services, which
supports personal mobility, users can maintain a single externally visible
address identifier, which can be in the form of a standard email address or
E.164 telephone number regardless of their physical network location.

SIP allows the endpoints to negotiate and combine any type of session they
mutually understand like video, instant messaging (IM), file transfer,
desktop sharing and provides a generic event notification system with
real-time publications and subscriptions about state changes that can be
used for asynchronous services like presence, message waiting indicator and
busy line appearance.

== Features ==

The software allows you to create elegant real-time communications applications without having to read [ the +1200 RFC documents] behind it. As a library with a high-level [wiki:PyPJUADesign API], the toolkit can be used to add voice, IM and Presence functionality to any network devices as long as Python/C environment is supported by such platform.

Additional to the SIP standards implemented by the underlying PJSIP library, this project implements:

* XCAP protocol [ RFC4825]
* MSRP protocol [ RFC4975]
* MSRP protocol relay extension [ RFC4976]
* Rich Presence Information Data model and Format (RPIDF) [ RFC3856], [ RFC3863 ], [ RFC4479]
* XCAP-diff event package [ draft-ietf-simple-xcap-diff-09]
* Watcher-info [ RFC3857], [ RFC3858]
* Conference [ RFC4575]
* Message summary [ RFC3842]
* Presence rules [ RFC5025]
* Resource-lists and RLS-services [ RFC4826]
* PIDF manipulation [ RFC4827]
* Bonjour multicast DNS [ draft-lee-sip-dns-sd-uri-03]
* Locating SIP services [ RFC3263]
* MSRP ad-hoc multi-party chat sessions [ draft-ietf-simple-chat-03]

== Documentation ==

For download and installation instructions, API description and other
documentation see the files under docs/ directory.

* [wiki:SipInstallation Installation guide]
* [wiki:SipApiDocumentation API documentation]
* [wiki:SipMiddleware Middleware design]
* [wiki:SipTesting Testing the client]

== Support ==

The project is developed and supported by [ AG Projects] via the wiki collaboration system available at To request support you must open a ticket. To open ticket please [/register Register] first. The source browser and ticketing system are available only for registered users.

If you wish to contribute and become an active developer of this project, send your request by email to