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] |