SipDeveloperGuide
Version 90 (Adrian Georgescu, 03/28/2010 04:54 pm)
1 | 61 | Adrian Georgescu | = Developer Guide = |
---|---|---|---|
2 | 1 | Adrian Georgescu | |
3 | 86 | Adrian Georgescu | [[TOC(WikiStart, Sip*, depth=1)]] |
4 | 1 | Adrian Georgescu | |
5 | 73 | Adrian Georgescu | The goal of SIP SIMPLE client SDK is to provide a simple to use API to create Real Time Communications Applications for Internet end-points based on SIP and related protocols. |
6 | 1 | Adrian Georgescu | |
7 | 87 | Adrian Georgescu | By using this SDK you can add Audio, Video, Instant Messaging, File Transfer and Desktop Sharing capabilities to an existing product or create a new product from scratch. |
8 | 73 | Adrian Georgescu | |
9 | 41 | Adrian Georgescu | == Prerequisites == |
10 | 41 | Adrian Georgescu | |
11 | 79 | Adrian Georgescu | To use SIP SIMPLE client SDK and the concepts described below you must be familiar with Python programming language and have basic [http://www.tech-invite.com/Ti-sip-ex3261.html SIP knowledge]. Understanding of TCP/IP networking in general and real time application development in particular are strongly recommended. |
12 | 1 | Adrian Georgescu | |
13 | 79 | Adrian Georgescu | Detailed instructions for installing the SDK are found [wiki:SipInstallation here]. |
14 | 11 | Adrian Georgescu | |
15 | 90 | Adrian Georgescu | == Middleware API == |
16 | 1 | Adrian Georgescu | |
17 | 79 | Adrian Georgescu | To develop your SIP client Application you should use the Middleware API that hides the complexity and the interactions of the low level SIP, SDP, RTP, ICE, MSRP, XCAP protocols. With a minimal amount of coding you can create a rich client for setting up Audio, Instant Messaging, File Transfer and Desktop Sharing sessions. |
18 | 1 | Adrian Georgescu | |
19 | 1 | Adrian Georgescu | * [wiki:SipMiddlewareApi Middleware API] - middleware for developing of SIP clients |
20 | 90 | Adrian Georgescu | |
21 | 90 | Adrian Georgescu | == Configuration API == |
22 | 90 | Adrian Georgescu | |
23 | 88 | Adrian Georgescu | * [wiki:SipConfigurationAPI Configuration API] - manage the settings used by the Middleware and SIP Applications on top of it |
24 | 1 | Adrian Georgescu | |
25 | 1 | Adrian Georgescu | === Sample Code === |
26 | 76 | Adrian Georgescu | |
27 | 89 | Adrian Georgescu | * [wiki:SipSessionExample Hello World!] - provides a minimalist example for setting up a Audio Session |
28 | 85 | Adrian Georgescu | * [wiki:SipTesting Command Line Tools] provide detailed practical examples for how to use all functions available in the SDK |
29 | 85 | Adrian Georgescu | * [http://icanblink.com Blink], a fully featured and easy to use SIP client or MacOSX |
30 | 1 | Adrian Georgescu | |
31 | 50 | Adrian Georgescu | === Components === |
32 | 1 | Adrian Georgescu | |
33 | 79 | Adrian Georgescu | If you wish to develop your own middleware or application while having full control over the underlying protocol layers yourself, you can use the following APIs that provide granular control over their respective components: |
34 | 1 | Adrian Georgescu | |
35 | 77 | Adrian Georgescu | * [wiki:SipCoreApiDocumentation SIP Core API] - SIP, RTP, ICE and Audio Engine including cross platform audio-device abstraction, codecs and jitter buffer |
36 | 77 | Adrian Georgescu | * [wiki:SipMSRPApi MSRP API] - Message Session Relay Protocol (MSRP) and its Relay Extension |
37 | 77 | Adrian Georgescu | * [wiki:SipPresenceApi Presence API] - Payloads carried within SIP signaling used for publication, subscription and notifications of SIP events |
38 | 77 | Adrian Georgescu | * [wiki:SipXCAPApi XCAP API] - Manage presence policy documents on XCAP servers |