SipFeatures » History » Version 35
Adrian Georgescu, 03/15/2009 11:04 AM
| 1 | 24 | Adrian Georgescu | = Library features = |
|---|---|---|---|
| 2 | 1 | Adrian Georgescu | |
| 3 | 2 | Adrian Georgescu | [[TOC(WikiStart, Sip*, depth=2)]] |
| 4 | |||
| 5 | 8 | Adrian Georgescu | 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. |
| 6 | 2 | Adrian Georgescu | |
| 7 | 26 | Adrian Georgescu | == General == |
| 8 | 1 | Adrian Georgescu | |
| 9 | 26 | Adrian Georgescu | * Written in Python language |
| 10 | 34 | Adrian Georgescu | * Multiple SIP accounts support |
| 11 | * Media NAT traversal using ICE, STUN and server based relays |
||
| 12 | 35 | Adrian Georgescu | * Compatible with SIP SIMPLE functionality available in OpenSIPS and OpenXCAP servers |
| 13 | 34 | Adrian Georgescu | * High level event driven middleware and configuration framework |
| 14 | * Cross platform (Linux, OSX, Windows) |
||
| 15 | * Multiple media types within the same session |
||
| 16 | 26 | Adrian Georgescu | |
| 17 | == SIP transport == |
||
| 18 | |||
| 19 | 34 | Adrian Georgescu | * UDP/TCP/TLS transports |
| 20 | * RFC 3263 DNS lookups with fall-over |
||
| 21 | 22 | Adrian Georgescu | * SIP trace |
| 22 | 1 | Adrian Georgescu | |
| 23 | 22 | Adrian Georgescu | == SDP negotiation == |
| 24 | 20 | Adrian Georgescu | |
| 25 | Supported media types: |
||
| 26 | |||
| 27 | 21 | Adrian Georgescu | * Audio (with or without ICE and STUN) |
| 28 | 23 | Adrian Georgescu | * Instant messaging over MSRP (with or without MSRP relay support) |
| 29 | * File transfer over MSRP (with or without MSRP relay support) |
||
| 30 | * Desktop sharing (VNC over MSRP) |
||
| 31 | 20 | Adrian Georgescu | |
| 32 | 31 | Adrian Georgescu | Except for MSRP file transfer, all media types can be combined together in the same session. |
| 33 | 20 | Adrian Georgescu | |
| 34 | 22 | Adrian Georgescu | === SIP Methods === |
| 35 | 4 | Adrian Georgescu | |
| 36 | 30 | Adrian Georgescu | * REGISTER |
| 37 | 1 | Adrian Georgescu | * INVITE |
| 38 | * PRACK |
||
| 39 | * ACK |
||
| 40 | * BYE |
||
| 41 | 34 | Adrian Georgescu | * re-INVITE (hold/un-hold, adding and removing other media types) |
| 42 | 9 | Adrian Georgescu | * CANCEL |
| 43 | 29 | Adrian Georgescu | * MESSAGE |
| 44 | * PUBLISH |
||
| 45 | * SUBSCRIBE |
||
| 46 | 3 | Adrian Georgescu | * NOTIFY |
| 47 | 1 | Adrian Georgescu | * OPTIONS |
| 48 | 4 | Adrian Georgescu | |
| 49 | 3 | Adrian Georgescu | == Audio == |
| 50 | 6 | Adrian Georgescu | |
| 51 | 1 | Adrian Georgescu | * Echo cancelation control |
| 52 | 3 | Adrian Georgescu | * Hold/On-hold |
| 53 | 6 | Adrian Georgescu | * DTMF |
| 54 | 13 | Adrian Georgescu | * Codecs: speex (wideband), g711, ilbc, gsm, g722 |
| 55 | 3 | Adrian Georgescu | * sRTP |
| 56 | 18 | Adrian Georgescu | |
| 57 | 3 | Adrian Georgescu | == Presence == |
| 58 | 1 | Adrian Georgescu | |
| 59 | 3 | Adrian Georgescu | * 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] |
| 60 | 1 | Adrian Georgescu | * Presence watcher-info event package [http://tools.ietf.org/html/rfc3857 RFC3857], [http://tools.ietf.org/html/rfc3858 RFC3858] |
| 61 | * XCAP protocol [http://www.tools.ietf.org/html/rfc4825 RFC4825] |
||
| 62 | * XCAP presence rules [http://www.tools.ietf.org/html/rfc5025 RFC5025] |
||
| 63 | * XCAP resource-lists and RLS-services [http://www.tools.ietf.org/html/rfc4826 RFC4826] |
||
| 64 | * XCAP PIDF manipulation [http://www.tools.ietf.org/html/rfc4827 RFC4827] |
||
| 65 | * XCAP-diff event package [http://www.ietf.org/internet-drafts/draft-ietf-simple-xcap-diff-09.txt draft-ietf-simple-xcap-diff-09] |
||
| 66 | 16 | Adrian Georgescu | * TCP and TLS transports |
| 67 | 3 | Adrian Georgescu | * XCAP trace capability |
| 68 | |||
| 69 | == MSRP == |
||
| 70 | 1 | Adrian Georgescu | |
| 71 | * MSRP protocol [http://tools.ietf.org/html/rfc4975 RFC4975] |
||
| 72 | * MSRP protocol relay extension [http://tools.ietf.org/html/rfc4976 RFC4976] |
||
| 73 | * MSRP file transfer [http://tools.ietf.org/html/draft-ietf-mmusic-file-transfer-mech-11 draft-ietf-mmusic-file-transfer-mech-11] |
||
| 74 | * Message summary event package [http://tools.ietf.org/html/rfc3842 RFC3842] |
||
| 75 | 16 | Adrian Georgescu | * TCP and TLS transports |
| 76 | 3 | Adrian Georgescu | * MSRP trace capability |
| 77 | |||
| 78 | == Conferencing == |
||
| 79 | |||
| 80 | * Conference event package [http://tools.ietf.org/html/rfc4575 RFC4575] |
||
| 81 | * MSRP ad-hoc multi-party chat sessions [http://tools.ietf.org/html/draft-ietf-simple-chat-03 draft-ietf-simple-chat-03] |
||
| 82 | 7 | Adrian Georgescu | |
| 83 | 22 | Adrian Georgescu | == Other == |
| 84 | 11 | Adrian Georgescu | |
| 85 | 1 | Adrian Georgescu | * Desktop sharing, variation of [http://tools.ietf.org/html/draft-garcia-mmusic-sdp-collaboration-00 draft-garcia-mmusic-sdp-collaboration-00] |
| 86 | * Bonjour multicast DNS [http://www.ietf.org/internet-drafts/draft-lee-sip-dns-sd-uri-03.txt draft-lee-sip-dns-sd-uri-03] |