Project

General

Profile

SipFeatures » History » Revision 41

Revision 40 (Adrian Georgescu, 03/22/2009 10:05 AM) → Revision 41/177 (Adrian Georgescu, 03/22/2009 10:05 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 inclusive server-less Bonjour mode 
  * Multiple active session support 
  * Multiple media types per session (e.g. audio + Instant Messaging + desktop sharing) 
  * 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) 
  * Trace capability for all underlying protocols 

 == SIP transport == 

  * UDP/TCP/TLS transports 
  * RFC 3263 DNS lookups with fail-over 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]