WikiStart
Version 248 (Adrian Georgescu, 10/22/2008 02:04 pm)
1 | 189 | Adrian Georgescu | == Description == |
---|---|---|---|
2 | 95 | Ruud Klaver | |
3 | 234 | Adrian Georgescu | SIP SIMPLE client is Python software library built on top of [http://pjsip.org PJSIP] that together |
4 | 199 | Adrian Georgescu | with an elegant middleware allows for easy development of Client/Server and |
5 | 204 | Adrian Georgescu | Peer-to-Peer Internet communications end-points based on SIP SIMPLE protocols with |
6 | 232 | Adrian Georgescu | voice, video, presence, interactive messaging (IM) and file transfer capabilities. |
7 | 1 | ||
8 | 206 | Adrian Georgescu | The goal of this project is to deliver the best Open Source Python |
9 | 193 | Adrian Georgescu | library for rich featured SIP User Agents, while hiding the complex |
10 | 187 | Adrian Georgescu | underlying functionality behind an easy to use high-level application |
11 | 187 | Adrian Georgescu | programming interface. Compared to other available SIP libraries, this |
12 | 239 | Adrian Georgescu | project provides beyond basic audio calls, session based Interactive Messaging (IM) |
13 | 239 | Adrian Georgescu | combined with voice and video sessions, file transfer and multi-party chat sessions using MSRP protocol, |
14 | 220 | Adrian Georgescu | publication and subscription for rich presence information like availability, moods, activities and geo-location, management for presence rules, |
15 | 210 | Adrian Georgescu | resource lists, RLS services using XCAP protocol. |
16 | 1 | ||
17 | 219 | Adrian Georgescu | Shortly said, this software allows you to create elegant real-time communications applications without having to read [http://www.rfc3261.net the +1200 RFC documents] behind it. If you read them all, some antidepressant and desintoxication is recommended after this effort. |
18 | 208 | Adrian Georgescu | |
19 | 237 | Adrian Georgescu | == Download == |
20 | 180 | Adrian Georgescu | |
21 | 240 | Adrian Georgescu | For Debian testing or unstable on an i386 architecture, add to /etc/apt/sources.list: |
22 | 180 | Adrian Georgescu | |
23 | 180 | Adrian Georgescu | {{{ |
24 | 1 | deb http://ag-projects.com/debian unstable main |
|
25 | 180 | Adrian Georgescu | deb-src http://ag-projects.com/debian unstable main |
26 | 1 | }}} |
|
27 | 180 | Adrian Georgescu | |
28 | 180 | Adrian Georgescu | Update the list of available software and install the software: |
29 | 1 | ||
30 | 1 | {{{ |
|
31 | 1 | apt-get update |
|
32 | 180 | Adrian Georgescu | apt-get install sipclient |
33 | 181 | Adrian Georgescu | }}} |
34 | 1 | ||
35 | 240 | Adrian Georgescu | For MacOSX 10.5 (Leopard) on an Intel architecture add to /sw/etc/apt/sources.list: |
36 | 225 | Adrian Georgescu | |
37 | 225 | Adrian Georgescu | {{{ |
38 | 229 | Adrian Georgescu | deb http://ag-projects.com/fink local main |
39 | 229 | Adrian Georgescu | deb http://ag-projects.com/fink stable main crypto |
40 | 229 | Adrian Georgescu | deb http://ag-projects.com/fink unstable main crypto |
41 | 225 | Adrian Georgescu | }}} |
42 | 225 | Adrian Georgescu | |
43 | 225 | Adrian Georgescu | Update the list of available software and install the software: |
44 | 225 | Adrian Georgescu | |
45 | 225 | Adrian Georgescu | {{{ |
46 | 225 | Adrian Georgescu | sudo apt-get update |
47 | 225 | Adrian Georgescu | sudo apt-get install sipclient |
48 | 225 | Adrian Georgescu | }}} |
49 | 225 | Adrian Georgescu | |
50 | 240 | Adrian Georgescu | For other Unix distributions |
51 | 1 | ||
52 | 198 | Adrian Georgescu | To obtain the source code as tar archive go to: |
53 | 1 | ||
54 | 1 | [http://download.ag-projects.com/SipClient/ http://download.ag-projects.com/SipClient/] |
|
55 | 1 | ||
56 | 240 | Adrian Georgescu | |
57 | 240 | Adrian Georgescu | Windows binaries are on the roadmap. |
58 | 1 | ||
59 | 218 | Adrian Georgescu | == Testing == |
60 | 218 | Adrian Georgescu | |
61 | 238 | Adrian Georgescu | SIP SIMPLE client is closely developed together with and tested against the most popular SIP SIMPLE server software available today: [http://opensips.org OpenSIPs], [http://openxcap.org OpenXCAP] and [http://msrprelay.org MSRPRelay]. Included with the library, a set of [wiki:testscripts command line tools] are available for setting up real time voice, IM and file transfer sessions, publish and subscribe to presence or other type of events: |
62 | 218 | Adrian Georgescu | |
63 | 218 | Adrian Georgescu | * sip_register - REGISTER a SIP end-point with a SIP Registrar |
64 | 218 | Adrian Georgescu | * sip_rtp_audio_session - Setup a voice audio session (Voice over IP) |
65 | 218 | Adrian Georgescu | * sip_msrp_im_session - Setup an IM session using MSRP protocol |
66 | 231 | Adrian Georgescu | * sip_msrp_file_transfer - Perform file transfer using MSRP protocol |
67 | 231 | Adrian Georgescu | * sip_message - Send/receive text in page mode using SIP MESSAGE method |
68 | 218 | Adrian Georgescu | * sip_publish_presence - PUBLISH presence to a SIP Presence Agent |
69 | 218 | Adrian Georgescu | * sip_subscribe_presence - SUBSCRIBE to presence information |
70 | 218 | Adrian Georgescu | * sip_subscribe_winfo - SUBSCRIBE to watcher list on a SIP Presence Agent |
71 | 218 | Adrian Georgescu | * sip_subscribe_rls - SUBSCRIBE to lists managed by Resource List Server |
72 | 223 | Adrian Georgescu | * xcapclient - Manage presence policy and buddy lists on an XCAP server |
73 | 218 | Adrian Georgescu | |
74 | 218 | Adrian Georgescu | For testing, you can use your own infrastructure or register a free SIP SIMPLE account on [http://sip2sip.info http://SIP2SIP.info] |
75 | 218 | Adrian Georgescu | |
76 | 157 | Adrian Georgescu | |
77 | 242 | Adrian Georgescu | == Supported platforms and normative references == |
78 | 1 | ||
79 | 241 | Adrian Georgescu | As a library with a high-level API, the toolkit can be used to add voice, IM and Presence functionality to any network devices as long as Python/C environment is supported by such platform. |
80 | 1 | ||
81 | 248 | Adrian Georgescu | == Normative references and standards == |
82 | 248 | Adrian Georgescu | |
83 | 248 | Adrian Georgescu | Additional to the standards implemented by the underlying [http://www.pjsip.org/sip_media_features.htm PJSIP library], this project implements [http://www.tools.ietf.org/html/rfc4825 XCAP protocol], [http://tools.ietf.org/html/rfc4976 MSRP protocol], [http://tools.ietf.org/html/rfc4976 MSRP relay extension], [http://tools.ietf.org/html/rfc3903 PUBLISH], SUBSCRIBE, NOTIFY for [http://tools.ietf.org/html/rfc3265 SIP events], presence data model and format ([http://tools.ietf.org/html/rfc3856 RFC3856], [http://tools.ietf.org/html/rfc3863 RFC3863 ], [http://tools.ietf.org/html/rfc4479 RFC4479]), [http://www.ietf.org/internet-drafts/draft-ietf-simple-xcap-diff-09.txt xcap-diff], watcher-info ([http://tools.ietf.org/html/rfc3857 RFC3857],[http://tools.ietf.org/html/rfc3858 RFC3858] ), [http://tools.ietf.org/html/rfc4575 conference], [http://tools.ietf.org/html/rfc3842 message-summary], [http://www.tools.ietf.org/html/rfc4825 XCAP] documents [http://www.tools.ietf.org/html/rfc5025 pres-rules], [http://www.tools.ietf.org/html/rfc4826 resource-lists, rls-services] and [http://www.tools.ietf.org/html/rfc4827 pidf-manipulation], [http://www.tech-invite.com/SIPWGs/01-WG-SIP/Idrafts/draft-lee-sip-dns-sd-uri-02.txt Bonjour] (LAN broadcast) and [http://tools.ietf.org/html/rfc3263 RFC 3263] (Locating SIP Services), [http://tools.ietf.org/html/draft-ietf-simple-chat-02 ad-hoc multi-party chat sessions] with an MSRP chat server |
84 | 1 | ||
85 | 1 | == License == |
|
86 | 1 | ||
87 | 1 | The software is provided under the [source:LICENSE GPL LICENSE] |
|
88 | 1 | ||
89 | 1 | == Support == |
|
90 | 1 | ||
91 | 1 | To open ticket please Register first. The ticketing support system is available only for registered users. Please beware that the support is provided by the community on a best-effort basis. |
|
92 | 235 | Adrian Georgescu | |
93 | 236 | Adrian Georgescu | == Source code access == |
94 | 235 | Adrian Georgescu | |
95 | 235 | Adrian Georgescu | Version control is done using [http://darcs.net darcs] . The darcs repository can be fetched with: |
96 | 235 | Adrian Georgescu | |
97 | 235 | Adrian Georgescu | {{{ |
98 | 235 | Adrian Georgescu | darcs get http://devel.ag-projects.com/repositories/pypjua |
99 | 235 | Adrian Georgescu | }}} |
100 | 235 | Adrian Georgescu | |
101 | 235 | Adrian Georgescu | To obtain the changes after the intial get, go to the pypjua directory and run: |
102 | 235 | Adrian Georgescu | |
103 | 235 | Adrian Georgescu | {{{ |
104 | 235 | Adrian Georgescu | darcs pull |
105 | 235 | Adrian Georgescu | }}} |
106 | 191 | Adrian Georgescu | |
107 | 202 | Adrian Georgescu | If you wish to contribute and become an active developer of this project, send your request by email to pypjua-devel@ag-projects.com. |