SipFeatures
Version 177 (Adrian Georgescu, 01/06/2017 07:44 pm)
1 | 158 | Adrian Georgescu | h1. Features |
---|---|---|---|
2 | 1 | Adrian Georgescu | |
3 | 158 | Adrian Georgescu | |
4 | 174 | Adrian Georgescu | _SIP SIMPLE client SDK_ is a Software Development Kit for development of Real Time Applications based on SIP and related protocols for Audio/Video, Instant Messaging, File Transfers, Desktop Sharing and Presence. Other media types can be easily added by using an extensible high-level API. |
5 | 158 | Adrian Georgescu | |
6 | 174 | Adrian Georgescu | The library has cross platform capabilities for Linux, Mac OSX and Microsoft Windows operating systems. The library should work with minimal changes on any platform that supports C and Python development environments. The SIP and media stacks are based on PJSIP/PJMEDIA 2.0 with patches required for the SDK advanced functionality applied. |
7 | 1 | Adrian Georgescu | |
8 | 158 | Adrian Georgescu | To see _SIP SIMPLE client SDK_ features in action you can try "Blink":http://icanblink.com or "SylkServer":http://sylkserver.com |
9 | 1 | Adrian Georgescu | |
10 | 1 | Adrian Georgescu | |
11 | 158 | Adrian Georgescu | h2. General |
12 | 1 | Adrian Georgescu | |
13 | 158 | Adrian Georgescu | |
14 | 165 | Adrian Georgescu | * Multiple SIP accounts support |
15 | 165 | Adrian Georgescu | * Full DNS support (NAPTR, SRV, A record lookup for all protocols) |
16 | 162 | Adrian Georgescu | * Non-blocking, asynchronous, notifications based engine |
17 | 166 | Adrian Georgescu | * Configuration framework |
18 | 166 | Adrian Georgescu | * TLS Security for SIP signalling (SIP) and media (MSRP, XCAP) |
19 | 169 | Adrian Georgescu | * Multiple media types per session (e.g. Audio, Video, IM) |
20 | 162 | Adrian Georgescu | * Trace capability for all underlying protocols |
21 | 1 | Adrian Georgescu | * Supports re-INVITE for adding and removing media |
22 | 1 | Adrian Georgescu | |
23 | 173 | Adrian Georgescu | h2. Privacy and Privacy |
24 | 171 | Adrian Georgescu | |
25 | 1 | Adrian Georgescu | * TLS for SIP signaling and MSRP media |
26 | 173 | Adrian Georgescu | * SRTP for RTP media (audio and video) |
27 | 173 | Adrian Georgescu | * SDES and ZRTP key exchange for SRTP |
28 | 176 | Adrian Georgescu | * OTR support for MSRP streams |
29 | 172 | Adrian Georgescu | |
30 | 1 | Adrian Georgescu | h2. Supported media |
31 | 1 | Adrian Georgescu | |
32 | 171 | Adrian Georgescu | * Audio and Video (RTP) |
33 | 1 | Adrian Georgescu | * Instant Messaging (MSRP) |
34 | 1 | Adrian Georgescu | * File Transfer (MSRP) |
35 | 1 | Adrian Georgescu | * Screen Sharing (VNC over MSRP) |
36 | 1 | Adrian Georgescu | |
37 | 1 | Adrian Georgescu | All media types can be combined together in the same SIP session. |
38 | 1 | Adrian Georgescu | |
39 | 1 | Adrian Georgescu | The library uses a separated from the core lookup mechanism for the next hop routing. This important feature allows the library to be used for building SIP clients that operate in combination with any SIP provider (by employing RFC 3263 DNS lookups), in a server-less LAN operation (using Bonjour protocol) or integrated into a network overlay developed by a third party (e.g. P2PSIP overlay). |
40 | 166 | Adrian Georgescu | |
41 | 166 | Adrian Georgescu | h2. Audio features |
42 | 166 | Adrian Georgescu | |
43 | 166 | Adrian Georgescu | * Conference Mixer |
44 | 166 | Adrian Georgescu | * Wav Player and Recorder |
45 | 166 | Adrian Georgescu | * Acoustic Echo Cancelation |
46 | 166 | Adrian Georgescu | * Noise Suppression |
47 | 166 | Adrian Georgescu | * Answering Machine |
48 | 166 | Adrian Georgescu | |
49 | 166 | Adrian Georgescu | h3. Codecs |
50 | 166 | Adrian Georgescu | |
51 | 166 | Adrian Georgescu | * Ultra-wideband: OPUS 48kHz, Speex 32kHz |
52 | 166 | Adrian Georgescu | * Wideband: Speex and G722 |
53 | 166 | Adrian Georgescu | * Narrowband: G711, iLBC, GSM |
54 | 1 | Adrian Georgescu | |
55 | 167 | Adrian Georgescu | h2. Video features |
56 | 167 | Adrian Georgescu | |
57 | 167 | Adrian Georgescu | h3. Codecs |
58 | 167 | Adrian Georgescu | |
59 | 177 | Adrian Georgescu | * H.264 |
60 | 177 | Adrian Georgescu | * V8 |
61 | 1 | Adrian Georgescu | |
62 | 158 | Adrian Georgescu | |
63 | 1 | Adrian Georgescu | h2. Implemented Standards |
64 | 1 | Adrian Georgescu | |
65 | 1 | Adrian Georgescu | |
66 | 158 | Adrian Georgescu | h3. SIP Signaling |
67 | 1 | Adrian Georgescu | |
68 | 1 | Adrian Georgescu | |
69 | 158 | Adrian Georgescu | * SIP, Session Initiation Protocol "RFC3261":http://tools.ietf.org/html/rfc3261 |
70 | 158 | Adrian Georgescu | * SDP, Session Description Protocol "RFC4566":http://tools.ietf.org/html/rfc4566 |
71 | 158 | Adrian Georgescu | * An Offer/Answer Model with Session Description Protocol (SDP) "RFC3264":http://tools.ietf.org/html/rfc3264 |
72 | 158 | Adrian Georgescu | * Reliability of Provisional Responses in Session Initiation Protocol "RFC3262":http://tools.ietf.org/html/rfc3262 |
73 | 158 | Adrian Georgescu | * HTTP Authentication: Basic and Digest Access Authentication "RFC2617":http://tools.ietf.org/html/rfc2617 |
74 | 158 | Adrian Georgescu | * The Reason Header Field for the Session Initiation Protocol "RFC3326":http://tools.ietf.org/html/rfc3326 |
75 | 158 | Adrian Georgescu | * The Session Initiation Protocol (SIP) Refer Method "RFC3515":http://tools.ietf.org/html/rfc3515 |
76 | 158 | Adrian Georgescu | * The Session Initiation Protocol (SIP) "Replaces" Header "RFC 3891":http://tools.ietf.org/html/rfc3891 |
77 | 158 | Adrian Georgescu | * Session Initiation Protocol (SIP) Call Control - Transfer "RFC 5589":http://tools.ietf.org/html/rfc5589 |
78 | 158 | Adrian Georgescu | * Obtaining and Using Globally Routable User Agent URIs (GRUUs) "RFC 5627":http://tools.ietf.org/html/rfc5627 |
79 | 158 | Adrian Georgescu | |
80 | 158 | Adrian Georgescu | |
81 | 158 | Adrian Georgescu | h3. Address Resolution |
82 | 158 | Adrian Georgescu | |
83 | 158 | Adrian Georgescu | |
84 | 158 | Adrian Georgescu | * Locating SIP services: "RFC3263":http://tools.ietf.org/html/rfc3263 |
85 | 158 | Adrian Georgescu | * Bonjour multicast DNS: http://tools.ietf.org/html/draft-lee-sip-dns-sd-uri-03 |
86 | 158 | Adrian Georgescu | |
87 | 158 | Adrian Georgescu | |
88 | 158 | Adrian Georgescu | h3. NAT Traversal |
89 | 158 | Adrian Georgescu | |
90 | 158 | Adrian Georgescu | |
91 | 158 | Adrian Georgescu | * SIP Signaling: Symmetric Response Routing Symmetric media "RFC3581":http://tools.ietf.org/html/rfc3581 |
92 | 158 | Adrian Georgescu | * STUN: Session Traversal Utilities for NAT "RFC3489":http://tools.ietf.org/html/rfc3489 |
93 | 158 | Adrian Georgescu | * RTP media (Audio and Video): ICE, Interactive Connectivity Establishment "RFC5245":http://tools.ietf.org/html/rfc5245 |
94 | 158 | Adrian Georgescu | * MSRP media (Instant Messaging and File Transfer): MSRP protocol relay extension "RFC4976":http://tools.ietf.org/html/rfc4976 |
95 | 158 | Adrian Georgescu | * MSRP Alternative Connection Model (ACM) "RFC6135":http://tools.ietf.org/html/rfc6135 |
96 | 109 | Adrian Georgescu | |
97 | 107 | Adrian Georgescu | |
98 | 170 | Adrian Georgescu | h3. Audio and Video |
99 | 109 | Adrian Georgescu | |
100 | 1 | Adrian Georgescu | |
101 | 158 | Adrian Georgescu | * RTP, A Transport Protocol for Real-Time Applications "RFC3550":http://tools.ietf.org/html/rfc3550 |
102 | 158 | Adrian Georgescu | * Real Time Control Protocol (RTCP) attribute in Session Description Protocol (SDP) "RFC3605":http://tools.ietf.org/html/rfc3605 |
103 | 158 | Adrian Georgescu | * The Secure Real-time Transport Protocol (SRTP) "RFC3711":http://tools.ietf.org/html/rfc3711 |
104 | 1 | Adrian Georgescu | * Generation and parsing of RFC 2833/telephone-events payload in both RTP and SDP "RFC2833":http://tools.ietf.org/html/rfc2833 |
105 | 171 | Adrian Georgescu | * ZRTP Encryption "RFC6189":http://tools.ietf.org/html/rfc6189 |
106 | 142 | Adrian Georgescu | |
107 | 105 | Adrian Georgescu | |
108 | 158 | Adrian Georgescu | h3. Instant Messaging |
109 | 1 | Adrian Georgescu | |
110 | 109 | Adrian Georgescu | |
111 | 158 | Adrian Georgescu | * Common Presence and Instant Messaging (CPIM): "RFC 3862":http://tools.ietf.org/html/rfc3862 |
112 | 158 | Adrian Georgescu | * Session Initiation Protocol (SIP) Extension for Instant Messaging "RFC3428":http://tools.ietf.org/html/rfc3428 |
113 | 158 | Adrian Georgescu | * MSRP Protocol "RFC4975":http://tools.ietf.org/html/rfc4975 |
114 | 158 | Adrian Georgescu | * Indication of Message Composition for Instant Messaging "RFC3994":http://tools.ietf.org/html/rfc3994 |
115 | 158 | Adrian Georgescu | * Message Summary Event Package "RFC3842":http://tools.ietf.org/html/rfc3842 |
116 | 175 | Adrian Georgescu | |
117 | 175 | Adrian Georgescu | h3. File Transfer |
118 | 175 | Adrian Georgescu | |
119 | 158 | Adrian Georgescu | * File Transfer "RFC5547":http://tools.ietf.org/html/rfc5547 |
120 | 153 | Adrian Georgescu | |
121 | 109 | Adrian Georgescu | |
122 | 168 | Adrian Georgescu | h3. Screen Sharing |
123 | 1 | Adrian Georgescu | |
124 | 158 | Adrian Georgescu | |
125 | 158 | Adrian Georgescu | * Variation of "draft-garcia-mmusic-sdp-collaboration-00":http://tools.ietf.org/html/draft-garcia-mmusic-sdp-collaboration-00 using RFB over MSRP |
126 | 158 | Adrian Georgescu | |
127 | 158 | Adrian Georgescu | h3. Conferencing |
128 | 158 | Adrian Georgescu | |
129 | 158 | Adrian Georgescu | |
130 | 158 | Adrian Georgescu | * Conference Event Package "RFC4575":http://tools.ietf.org/html/rfc4575 |
131 | 158 | Adrian Georgescu | * A Framework for Conferencing with the Session Initiation Protocol "RFC4353":http://tools.ietf.org/html/rfc4353 |
132 | 1 | Adrian Georgescu | * SIP Call Control - Conferencing for User Agents "RFC4579":http://tools.ietf.org/html/rfc4579 |
133 | 160 | Adrian Georgescu | * MSRP ad-hoc multi-party chat sessions "draft-ietf-simple-chat":http://tools.ietf.org/html/draft-ietf-simple-chat-15 |
134 | 158 | Adrian Georgescu | |
135 | 158 | Adrian Georgescu | h3. Presence |
136 | 158 | Adrian Georgescu | |
137 | 158 | Adrian Georgescu | * SIP Specific Event Notification (SUBSCRIBE and NOTIFY methods) "RFC3265":http://tools.ietf.org/html/rfc3265 |
138 | 158 | Adrian Georgescu | * SIP Extension for Event State Publication (PUBLISH method) "RFC3903":http://tools.ietf.org/html/rfc3903 |
139 | 159 | Adrian Georgescu | * SIP Event Notification Extension for Resource Lists Contact Information Extension to PIDF "RFC4482":http://tools.ietf.org/html/rfc4662 |
140 | 158 | Adrian Georgescu | * Presence Data Model (PIDF) "RFC3863":http://tools.ietf.org/html/rfc3863, "RFC3379":http://tools.ietf.org/html/rfc3379, "RFC4479":http://tools.ietf.org/html/rfc4479 |
141 | 158 | Adrian Georgescu | * Watcher-info Event Package "RFC3857":http://tools.ietf.org/html/rfc3857, "RFC3858":http://tools.ietf.org/html/rfc3858 |
142 | 158 | Adrian Georgescu | * Rich Presence Extensions to PIDF "RFC4480":http://tools.ietf.org/html/rfc4480 |
143 | 158 | Adrian Georgescu | * Contact Information Extension to PIDF "RFC4482":http://tools.ietf.org/html/rfc4482 |
144 | 158 | Adrian Georgescu | * User Agent Capability Extension to PIDF "RFC5196":http://tools.ietf.org/html/rfc5196 |
145 | 158 | Adrian Georgescu | * XCAP Protocol "RFC4825":http://www.tools.ietf.org/html/rfc4825 |
146 | 158 | Adrian Georgescu | * Common Policy "RFC4745":http://www.tools.ietf.org/html/rfc4745 |
147 | 158 | Adrian Georgescu | * Presence Rules "RFC5025":http://www.tools.ietf.org/html/rfc5025 |
148 | 158 | Adrian Georgescu | * Resource Lists "RFC4826":http://www.tools.ietf.org/html/rfc4826 |
149 | 158 | Adrian Georgescu | * RLS Services "RFC4826":http://www.tools.ietf.org/html/rfc4826 |
150 | 161 | Adrian Georgescu | * RLMI document handling "RFC4662":http://www.tools.ietf.org/html/rfc4662 |
151 | 158 | Adrian Georgescu | * PIDF manipulation "RFC4827":http://www.tools.ietf.org/html/rfc4827 |
152 | 158 | Adrian Georgescu | * XCAP Diff "RFC5874":http://tools.ietf.org/html/rfc5874 |
153 | 158 | Adrian Georgescu | * OMA Reference Release Definition for XDM v1.1 and Presence SIMPLE v1.1 "Implementation Guidelines":http://www.openmobilealliance.org/Technical/release_program/docs/CopyrightClick.aspx?pck=XDM_PRS_IMPL&file=V1_0-20081209-A/OMA-RRELD-XDM_PRS_IMPL-V1_0-20081209-A.pdf |
154 | 158 | Adrian Georgescu | * OMA XML "Document Management V1.1":http://www.openmobilealliance.org/technical/release_program/xdm_v1_1.aspx |