WikiStart
Version 264 (Adrian Georgescu, 10/22/2008 07:47 pm)
1 | 189 | Adrian Georgescu | == Description == |
---|---|---|---|
2 | 95 | Ruud Klaver | |
3 | 264 | Adrian Georgescu | [http://www.tech-invite.com/Ti-sip-IDs-SIMPLE.html#charter SIP SIMPLE] client is a SIMPLE SIP client. Which leads to the question how SIMPLE is [http://www.tech-invite.com/Ti-sip-IDs-SIMPLE.html#charter SIMPLE]. So let's try again: |
4 | 263 | Adrian Georgescu | |
5 | 234 | Adrian Georgescu | SIP SIMPLE client is Python software library built on top of [http://pjsip.org PJSIP] that together |
6 | 199 | Adrian Georgescu | with an elegant middleware allows for easy development of Client/Server and |
7 | 204 | Adrian Georgescu | Peer-to-Peer Internet communications end-points based on SIP SIMPLE protocols with |
8 | 232 | Adrian Georgescu | voice, video, presence, interactive messaging (IM) and file transfer capabilities. |
9 | 1 | ||
10 | 206 | Adrian Georgescu | The goal of this project is to deliver the best Open Source Python |
11 | 193 | Adrian Georgescu | library for rich featured SIP User Agents, while hiding the complex |
12 | 187 | Adrian Georgescu | underlying functionality behind an easy to use high-level application |
13 | 187 | Adrian Georgescu | programming interface. Compared to other available SIP libraries, this |
14 | 239 | Adrian Georgescu | project provides beyond basic audio calls, session based Interactive Messaging (IM) |
15 | 239 | Adrian Georgescu | combined with voice and video sessions, file transfer and multi-party chat sessions using MSRP protocol, |
16 | 220 | Adrian Georgescu | publication and subscription for rich presence information like availability, moods, activities and geo-location, management for presence rules, |
17 | 210 | Adrian Georgescu | resource lists, RLS services using XCAP protocol. |
18 | 1 | ||
19 | 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. |
20 | 208 | Adrian Georgescu | |
21 | 237 | Adrian Georgescu | == Download == |
22 | 180 | Adrian Georgescu | |
23 | 240 | Adrian Georgescu | For Debian testing or unstable on an i386 architecture, add to /etc/apt/sources.list: |
24 | 180 | Adrian Georgescu | |
25 | 180 | Adrian Georgescu | {{{ |
26 | 1 | deb http://ag-projects.com/debian unstable main |
|
27 | 180 | Adrian Georgescu | deb-src http://ag-projects.com/debian unstable main |
28 | 1 | }}} |
|
29 | 180 | Adrian Georgescu | |
30 | 180 | Adrian Georgescu | Update the list of available software and install the software: |
31 | 1 | ||
32 | 1 | {{{ |
|
33 | 1 | apt-get update |
|
34 | 180 | Adrian Georgescu | apt-get install sipclient |
35 | 181 | Adrian Georgescu | }}} |
36 | 1 | ||
37 | 240 | Adrian Georgescu | For MacOSX 10.5 (Leopard) on an Intel architecture add to /sw/etc/apt/sources.list: |
38 | 225 | Adrian Georgescu | |
39 | 225 | Adrian Georgescu | {{{ |
40 | 229 | Adrian Georgescu | deb http://ag-projects.com/fink local main |
41 | 229 | Adrian Georgescu | deb http://ag-projects.com/fink stable main crypto |
42 | 229 | Adrian Georgescu | deb http://ag-projects.com/fink unstable main crypto |
43 | 225 | Adrian Georgescu | }}} |
44 | 225 | Adrian Georgescu | |
45 | 225 | Adrian Georgescu | Update the list of available software and install the software: |
46 | 225 | Adrian Georgescu | |
47 | 225 | Adrian Georgescu | {{{ |
48 | 225 | Adrian Georgescu | sudo apt-get update |
49 | 225 | Adrian Georgescu | sudo apt-get install sipclient |
50 | 225 | Adrian Georgescu | }}} |
51 | 225 | Adrian Georgescu | |
52 | 240 | Adrian Georgescu | For other Unix distributions |
53 | 1 | ||
54 | 198 | Adrian Georgescu | To obtain the source code as tar archive go to: |
55 | 1 | ||
56 | 1 | [http://download.ag-projects.com/SipClient/ http://download.ag-projects.com/SipClient/] |
|
57 | 1 | ||
58 | 240 | Adrian Georgescu | |
59 | 240 | Adrian Georgescu | Windows binaries are on the roadmap. |
60 | 1 | ||
61 | 218 | Adrian Georgescu | == Testing == |
62 | 218 | Adrian Georgescu | |
63 | 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: |
64 | 218 | Adrian Georgescu | |
65 | 218 | Adrian Georgescu | * sip_register - REGISTER a SIP end-point with a SIP Registrar |
66 | 218 | Adrian Georgescu | * sip_rtp_audio_session - Setup a voice audio session (Voice over IP) |
67 | 218 | Adrian Georgescu | * sip_msrp_im_session - Setup an IM session using MSRP protocol |
68 | 231 | Adrian Georgescu | * sip_msrp_file_transfer - Perform file transfer using MSRP protocol |
69 | 231 | Adrian Georgescu | * sip_message - Send/receive text in page mode using SIP MESSAGE method |
70 | 218 | Adrian Georgescu | * sip_publish_presence - PUBLISH presence to a SIP Presence Agent |
71 | 218 | Adrian Georgescu | * sip_subscribe_presence - SUBSCRIBE to presence information |
72 | 218 | Adrian Georgescu | * sip_subscribe_winfo - SUBSCRIBE to watcher list on a SIP Presence Agent |
73 | 218 | Adrian Georgescu | * sip_subscribe_rls - SUBSCRIBE to lists managed by Resource List Server |
74 | 223 | Adrian Georgescu | * xcapclient - Manage presence policy and buddy lists on an XCAP server |
75 | 218 | Adrian Georgescu | |
76 | 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] |
77 | 218 | Adrian Georgescu | |
78 | 157 | Adrian Georgescu | |
79 | 261 | Adrian Georgescu | == Supported platforms == |
80 | 1 | ||
81 | 262 | Adrian Georgescu | As a library with a high-level API, the toolkit can be used to add voice, IM and Presence functionality to any Internet device as long as Python/C environment is supported by such platform. |
82 | 1 | ||
83 | 261 | Adrian Georgescu | == Normative references == |
84 | 248 | Adrian Georgescu | |
85 | 262 | Adrian Georgescu | Additional to the SIP standards implemented by the underlying [http://www.pjsip.org/sip_media_features.htm PJSIP library] and exposed by SIP SIMPLE client in a Python API, this project implements in Python language the following standards: |
86 | 249 | Adrian Georgescu | |
87 | 253 | Adrian Georgescu | * XCAP protocol [http://www.tools.ietf.org/html/rfc4825 RFC4825] |
88 | 256 | Adrian Georgescu | * MSRP protocol [http://tools.ietf.org/html/rfc4975 RFC4975] |
89 | 256 | Adrian Georgescu | * MSRP protocol relay extension [http://tools.ietf.org/html/rfc4976 RFC4976] |
90 | 253 | Adrian Georgescu | * PUBLISH method [http://tools.ietf.org/html/rfc3903 RFC3903] |
91 | 259 | Adrian Georgescu | * SIP Specific Event Notification (SUBSCRIBE and NOTIFY) [http://tools.ietf.org/html/rfc3265 RFC3265] |
92 | 254 | Adrian Georgescu | * Rich 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] |
93 | 258 | Adrian Georgescu | * XCAP-diff document modification event [http://www.ietf.org/internet-drafts/draft-ietf-simple-xcap-diff-09.txt draft-ietf-simple-xcap-diff-09] |
94 | 254 | Adrian Georgescu | * Watcher-info [http://tools.ietf.org/html/rfc3857 RFC3857], [http://tools.ietf.org/html/rfc3858 RFC3858] |
95 | 253 | Adrian Georgescu | * Conference [http://tools.ietf.org/html/rfc4575 RFC4575] |
96 | 253 | Adrian Georgescu | * Message summary [http://tools.ietf.org/html/rfc3842 RFC3842] |
97 | 253 | Adrian Georgescu | * Presence rules [http://www.tools.ietf.org/html/rfc5025 RFC5025] |
98 | 254 | Adrian Georgescu | * Resource-lists and RLS-services [http://www.tools.ietf.org/html/rfc4826 RFC4826] |
99 | 257 | Adrian Georgescu | * PIDF manipulation [http://www.tools.ietf.org/html/rfc4827 RFC4827] |
100 | 253 | Adrian Georgescu | * Bonjour multicast DNS [http://www.tech-invite.com/SIPWGs/01-WG-SIP/Idrafts/draft-lee-sip-dns-sd-uri-02.txt draft-lee-sip-dns-sd-uri-02] |
101 | 257 | Adrian Georgescu | * Locating SIP services [http://tools.ietf.org/html/rfc3263 RFC3263] |
102 | 253 | Adrian Georgescu | * MSRP ad-hoc multi-party chat sessions [http://tools.ietf.org/html/draft-ietf-simple-chat-02 draft-ietf-simple-chat-02] |
103 | 1 | ||
104 | 1 | == License == |
|
105 | 1 | ||
106 | 1 | The software is provided under the [source:LICENSE GPL LICENSE] |
|
107 | 1 | ||
108 | 1 | == Support == |
|
109 | 1 | ||
110 | 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. |
|
111 | 235 | Adrian Georgescu | |
112 | 236 | Adrian Georgescu | == Source code access == |
113 | 235 | Adrian Georgescu | |
114 | 235 | Adrian Georgescu | Version control is done using [http://darcs.net darcs] . The darcs repository can be fetched with: |
115 | 235 | Adrian Georgescu | |
116 | 235 | Adrian Georgescu | {{{ |
117 | 235 | Adrian Georgescu | darcs get http://devel.ag-projects.com/repositories/pypjua |
118 | 235 | Adrian Georgescu | }}} |
119 | 235 | Adrian Georgescu | |
120 | 235 | Adrian Georgescu | To obtain the changes after the intial get, go to the pypjua directory and run: |
121 | 235 | Adrian Georgescu | |
122 | 235 | Adrian Georgescu | {{{ |
123 | 235 | Adrian Georgescu | darcs pull |
124 | 235 | Adrian Georgescu | }}} |
125 | 191 | Adrian Georgescu | |
126 | 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. |