SipDeveloperGuide

Version 145 (Adrian Georgescu, 05/25/2010 05:36 pm) → Version 146/215 (Adrian Georgescu, 09/15/2010 03:33 pm)

= Developer Guide =

The goal of ''SIP SIMPLE client SDK'' is to allow easy development of Real Time Applications based on SIP and related protocols. 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.

The application that uses SIP SIMPLE client SDK must import the relevant Python modules from it, start the engine than make use of the SDK classes and functions.

== Prerequisites ==

To use SIP SIMPLE client SDK you must:

1. Be familiar with [http://python.org Python programming language]
2. Have basic knowledge of [http://www.tech-invite.com/Ti-sip-ex3261.html SIP protocol]
3. Install the SDK according to [wiki:SipInstallation Installation Instructions]

== High Level API Integration with other applications or libraries ==

That application or library that wants to benefit of the SIP SIMPLE client SDK feature must import the relevant Python modules from it, start the engine than make use of the SDK classes and functions.


To develop your application you should use the Middleware API that hides the complexity of the interactions of the low level SIP, DNS, SDP, RTP, ICE, MSRP and XCAP protocols.

* [wiki:SipMiddlewareApi Middleware API]

=== Sample Code ===

* [wiki:SipSessionExample Hello World!] - minimalist example for setting up an Audio Session
* [wiki:SipTesting Command Line Tools] - detailed examples for all SDK functions
* [http://icanblink.com Blink], a fully featured and easy to use SIP client

== Low Level API ==

The following APIs provide granular control over their respective components:

* [wiki:SipCoreApiDocumentation SIP Core API] - SIP, RTP, ICE and Audio Engine
* [wiki:SipMSRPApi MSRP API] - Message Session Relay Protocol (MSRP) and its Relay Extension
* [wiki:SipXCAPApi XCAP API] - Manage presence policy documents on XCAP servers
* [wiki:SipPayloadsApi Payloads API] - Payloads used for publication, subscription and notifications of SIP events