SipFeatures

Version 37 (Adrian Georgescu, 03/17/2009 03:01 pm) → Version 38/177 (Adrian Georgescu, 03/22/2009 10:03 am)

= Library features =

[[TOC(WikiStart, Sip*, depth=2)]]

Additional to a selected lists of SIP features implemented by the underlying PJSIP library and exposes through a Python API, this project implements session based instant messaging (IM), file transfer and multi-party chat sessions using MSRP protocol and its relay extension, publication and subscription for rich presence information such as availability, moods, activities and geo-location, management for presence rules, resource lists, RLS services documents using XCAP protocol.

== General ==

* Written in Python language
* High level event driven middleware API
* Low level components API
* Multiple SIP accounts support
* Multiple active session support
* Multiple media types per session
* NAT traversal support (both client side using STUN and ICE and server side using rport and relays)
* Compatible with functionality of OpenSIPS and OpenXCAP servers
* Cross platform (Linux, OSX, Windows)

== SIP transport ==

* UDP/TCP/TLS transports
* RFC 3263 DNS lookups with fall-over
* SIP trace

== SDP negotiation ==

Supported media types:

* Audio (with or without ICE and STUN)
* Instant messaging over MSRP (with or without MSRP relay support)
* File transfer over MSRP (with or without MSRP relay support)
* Desktop sharing (VNC over MSRP)

Except for MSRP file transfer, all media types can be combined together in the same session.

== SIP Methods ==

* REGISTER
* INVITE
* PRACK
* ACK
* BYE
* re-INVITE (hold/un-hold, adding and removing other media types)
* CANCEL
* MESSAGE
* PUBLISH
* SUBSCRIBE
* NOTIFY
* OPTIONS

== Audio ==

* Echo cancelation control
* Hold/On-hold
* DTMF
* Codecs: speex (wideband), g711, ilbc, gsm, g722
* sRTP

== Presence ==

* Rich presence data model [http://tools.ietf.org/html/rfc3856 RFC3856], [http://tools.ietf.org/html/rfc3863 RFC3863 ], [http://tools.ietf.org/html/rfc4479 RFC4479], [http://tools.ietf.org/html/rfc4481 RFC4481], [http://tools.ietf.org/html/rfc4482 RFC4482], [http://tools.ietf.org/html/rfc5196 RFC5196]
* Presence watcher-info event package [http://tools.ietf.org/html/rfc3857 RFC3857], [http://tools.ietf.org/html/rfc3858 RFC3858]
* XCAP protocol [http://www.tools.ietf.org/html/rfc4825 RFC4825]
* XCAP presence rules [http://www.tools.ietf.org/html/rfc5025 RFC5025]
* XCAP resource-lists and RLS-services [http://www.tools.ietf.org/html/rfc4826 RFC4826]
* XCAP PIDF manipulation [http://www.tools.ietf.org/html/rfc4827 RFC4827]
* XCAP-diff event package [http://www.ietf.org/internet-drafts/draft-ietf-simple-xcap-diff-09.txt draft-ietf-simple-xcap-diff-09]
* TCP and TLS transports
* XCAP trace capability

== MSRP ==

* MSRP protocol [http://tools.ietf.org/html/rfc4975 RFC4975]
* MSRP protocol relay extension [http://tools.ietf.org/html/rfc4976 RFC4976]
* MSRP file transfer [http://tools.ietf.org/html/draft-ietf-mmusic-file-transfer-mech-11 draft-ietf-mmusic-file-transfer-mech-11]
* Message summary event package [http://tools.ietf.org/html/rfc3842 RFC3842]
* TCP and TLS transports
* MSRP trace capability

== Conferencing ==

* Conference event package [http://tools.ietf.org/html/rfc4575 RFC4575]
* MSRP ad-hoc multi-party chat sessions [http://tools.ietf.org/html/draft-ietf-simple-chat-03 draft-ietf-simple-chat-03]

== Other ==

* Desktop sharing, variation of [http://tools.ietf.org/html/draft-garcia-mmusic-sdp-collaboration-00 draft-garcia-mmusic-sdp-collaboration-00]
* Bonjour multicast DNS [http://www.ietf.org/internet-drafts/draft-lee-sip-dns-sd-uri-03.txt draft-lee-sip-dns-sd-uri-03]