Browse code

Updating README files - total restart for the README-MODULES

Need help updating the list of current modules.

oej authored on 09/10/2009 20:04:36
Showing 2 changed files
... ...
@@ -1,87 +1,96 @@
1 1
 $Id$
2 2
 
3 3
 
4
-             iptel.org SIP Express Router (ser)
5
-                http://www.iptel.org/ser/
6
-               
4
+                 SIP Router (sip-router)
5
+                http://www.sip-router.org/
6
+                ==========================
7 7
 
8
-
9
-I.   About SIP Express Router (SER)
8
+I.   About SIP Router (sip-router)
10 9
 II.  Feature List
11
-III. About iptel.org
12
-IV.  Obtaining Help
13
-V.   More Information
14
-
15
-
16
-SIP Express Router (SER) is an industrial-strength, free VoIP 
17
-server based on the session initiation protocol (SIP RFC2543-bis). 
18
-It is engineered to power IP telephony infrastructures up to large 
19
-scale. The server keeps track of users, sets up VoIP sessions, 
20
-relays instant messages and creates space for new plug-in 
21
-applications. Its proven interoperability guarantees seamless 
22
-integration with components from other vendors, eliminating the 
23
-risk of a single-vendor trap. It has successfully participated in 
24
-various interoperability tests in which it worked with the products 
10
+III. Getting started
11
+IV.  About the project
12
+V.   Obtaining Help
13
+VI.  More Information
14
+
15
+
16
+SIP Router (sip-router) is an industrial-strength, free VoIP server based 
17
+on the Session Initiation Protocol (SIP RFC3261). 
18
+It is engineered to power IP telephony and presence infrastructures up to large 
19
+scale. The server keeps track of users, sets up VoIP sessions, relays instant 
20
+messages and creates space for new plug-in applications. Its proven interoperability 
21
+guarantees seamless integration with components from other vendors, eliminating the 
22
+risk of a single-vendor trap. It has successfully participated in various 
23
+interoperability tests in which it worked with the products 
25 24
 of other leading SIP vendors.
26 25
 
27
-The SIP Express Router enables a flexible plug-in model for new 
28
-applications: Third parties can easily link their plug-ins with 
29
-the server code and provide thereby advanced and customized 
30
-services.  
26
+The SIP Router enables a flexible plug-in model for new applications: Third parties 
27
+can easily link their plug-ins with the server code and provide thereby advanced and
28
+customized services.  
31 29
 
32
-Its performance and robustness allows it to serve millions of users 
33
-and accommodate needs of very large operators. With a $3000 dual-CPU, 
34
-the SIP Express Router is able to power IP telephony services in an 
35
-area as large as the Bay Area during peak hours. Even on an IPAQ PDA, 
36
-the server withstands 150 calls per second (CPS)! The server has been 
37
-powering our iptel.org free SIP site withstanding heavy daily load 
38
-that is further increasing with the popularity of Microsoft's 
39
-Messenger.  
30
+Its performance and robustness allows it to serve millions of users and accommodate needs
31
+of very large operators. With a $3000 dual-CPU, the SIP Express Router is able to power 
32
+IP telephony services in an area as large as the Bay Area during peak hours.
40 33
 
41
-The SIP Express Router is extremely configurable to allow the creation
42
-of various routing and admission policies as well as setting up new 
43
-and customized services. Its configurability allows it to serve many 
44
-roles: network security barrier, application server, or PSTN gateway 
45
-guard for example.
34
+The SIP Router is extremely configurable to allow the creation of various routing and 
35
+admission policies as well as setting up new and customized services. Its configurability 
36
+allows it to serve many roles: network security barrier, presence server, application server, 
37
+or PSTN gateway guard (Session Border Controller) for example.
46 38
 
47 39
 
48 40
 II. Feature List
41
+================
42
+
43
+See http://www.sip-router.org/ for an updated feature list.
44
+Note that as features easily are added as modules, changes can occur quickly.
45
+
46
+Most of SIP-router's features are implemented as plug-in modules. See 
47
+our web site for a current list.
48
+
49
+III. Getting started
50
+====================
49 51
 
50
-See http://www.iptel.org/ser/features for an updated feature list.
51
-Note that as features easily are added as modules, changes can
52
-occur quickly.
52
+The INSTALL document will guide you through the installation of sip-router. 
53
+SIP-router is composed of a core and additional modules. For each module
54
+there is a README with documentation on how to configure and use the 
55
+module. These are available in each modules source code directory as well
56
+as on the sip-router.org web site.
53 57
 
54
-Most of SER features are implemented as plug-in modules. See
55
-http://www.iptel.org/views/tableofmodules for a list of modules 
56
-available in SER distribution.
58
+We recommend that you continue with reading README-MODULES and then the
59
+document named INSTALL.
57 60
 
61
+IV. About sip-router.org
62
+========================
58 63
 
59
-III. About iptel.org
64
+The SIP Router project was started during the fall of 2008 by developers from
65
+the OpenSER project, recently renamed to Kamailio.org and SIP Express Router (SER)
66
+from iptel.org. SIP Router is the result of a merge of the code base and years
67
+of experience from both developer teams.
60 68
 
61
-See http://www.iptel.org/ser_history for the story of SER and iptel.org.
69
+See http://www.sip-router.org/ for the story of SER, OpenSER/Kamailio and sip-router.org.
62 70
 
63
-IV. Obtaining Help
71
+V. Obtaining Help
72
+=================
64 73
 
65
-We offer best-effort free support for ser. "best-effort" means 
74
+We offer best-effort free support for sip-router. "best-effort" means 
66 75
 that we try to solve your problems via email as soon as we can, 
67 76
 subject to available manpower. 
68 77
 
69 78
 To receive feedback to your inquiries, we recommend you to subscribe 
70
-to the serusers mailing list and post your queries there. This mailing 
79
+to the sr-users mailing list and post your queries there. This mailing 
71 80
 list is set up for mutual help by the community of ser users and developers. 
72 81
 To participate in the mailing list, subscribe at the following web address: 
73
-         http://lists.iptel.org/mailman/listinfo/serusers.
74
-Send your questions to 
75
-         serusers@iptel.org. 
82
+         http://lists.sip-router.org/mailman/listinfo/sr-users
76 83
 
77
-V. More Information
84
+VI. More Information
85
+====================
78 86
 
79 87
 Most up-to-date information is always available at our website,
80
-                 http://www.iptel.org/ser/
88
+                 http://www.sip-router.org/
81 89
 
82 90
 Particularly, it includes:
83 91
 - administrator's guide
92
+- configuration cookbook
93
+- module documentation
84 94
 - installation guidelines (INSTALL)
85 95
 - download links
86
-- list of known issues (ISSUES)
87 96
 - etc.
... ...
@@ -1,370 +1,204 @@
1
-# $Id$
2 1
 
3
-=========================================
4
-NOTE!!! THIS FILE IS NO LONGER IN USE.
5
-PLEASE REFER TO:
6
-http://www.iptel.org/views/moduledocs
7
-FOR AN UPDATED LIST OF OFFICIAL MODULES.
8
-=========================================
9 2
 
10
-'Owner' field contains a developers CVS username, see file
11
-AUTHORS for more details.
12
-
13
-'Use' tells how deployable a module is. Regular indicates
14
-we deploy and use this feature in our infrastructure.
15
-Experimental tells we are still gaining operation experience.
16
-Temporary labels modules which momentarily fix some
17
-bugs/lacks and will disappear later. Example modules
18
-are primarily useful as educational source code for
19
-ser programmers.
20
-
21
-'Maturity' is label as stable if a module has been deployed
22
-for longer time, alpha if it is still being developed and
23
-beta if it is under test.
24
-
25
-'Depends on' field tells which modules the module needs. 
26
-
27
-Modules underway include firewall control, and more. 
28
-If you are interested in any of these or other modules, 
29
-write us to info@iptel.org.
30
-
31
-List of currently available ser modules:
32
-
33
-Name:       acc
34
-Owner:      jiri
35
-Use:        regular
36
-Maturity:   stable
37
-Depends on: tm
38
-Purpose:    Transaction accounting/example (the module server also as an
39
-            example of how to bind to transaction management)
40
-
41
-Name:       auth
42
-Owner:      janakj
43
-Use:        regular
44
-Maturity:   stable
45
-Depends on: sl
46
-Purpose:    Common functions for digest authentication
47
-
48
-Name:       auth_db
49
-Owner:      janakj
50
-Use:        regular
51
-Maturity:   stable
52
-Depends on: mysql auth
53
-Purpose:    Database support for digest authentication
54
-
55
-Name:       auth_radius
56
-Owner:      janakj
57
-Use:        experimental
58
-Maturity:   beta
59
-Depends on: auth
60
-Purpose:    Radius support for digest authentication
61
-
62
-Name:       avp
63
-Owner:      jiri
64
-Use:        regular
65
-Maturity:   beta
66
-Depends on: -
67
-Purpose:    Loads and checks avps per caller or callee
68
-
69
-Name:       avp_db
70
-Owner:      janakj
71
-Use:        regular
72
-Maturity:   beta
73
-Depends on: mysql avp
74
-Purpose:    Database support for avps
75
-
76
-Name:       avp_db
77
-Owner:      janakj
78
-Use:        regular
79
-Maturity:   beta
80
-Depends on: avp
81
-Purpose:    Radius support for avps
82
-
83
-Name:       avpops
84
-Owner:      ramona
85
-Use:        regular
86
-Maturity:   beta
87
-Depends on: 
88
-Purpose:    avp operations, pseudo-variable support
89
-
90
-Name:       cpl-c
91
-Owner:      bogdan
92
-Use:        regular
93
-Maturity:   beta
94
-Depends on: -
95
-Purpose:    Call Processing Language
96
-
97
-Name:       dbtext
98
-Owner:      dcm
99
-Use:        experimental
100
-Maturity:   alpha
101
-Depends on: -
102
-Purpose:    Database emulation in plaintext files
103
-
104
-Name:       dispatcher
105
-Owner:      dcm
106
-Use:        experimental
107
-Maturity:   alpha
108
-Depends on: -
109
-Purpose:    Implements a dispatcher for incoming requests using hashes
110
-
111
-Name:       diversion
112
-Owner:      janakj
113
-Use:        experimental
114
-Maturity:   alpha
115
-Depends on: -
116
-Purpose:    Support for the Diversion extensions (draft-levy-sip-diversion-08)
117
-
118
-Name:       exec
119
-Owner:      jiri
120
-Use:        experimental
121
-Maturity:   beta
122
-Depends on: -
123
-Purpose:    Execution of external URI processing logic
124
-
125
-Name:       ext
126
-Owner:      bogdan
127
-Use:        experimental
128
-Maturity:   alpha
129
-Depends on: -
130
-Purpose:    Execution of external URI processing logic
131
-
132
-Name:       extcmd
133
-Owner:      bogdan
134
-Use:        experimental
135
-Maturity:   alpha
136
-Depends on: -
137
-Purpose:    Execution of external commands
138
-
139
-Name:       flatstore
140
-Owner:      janakj
141
-Use:        experimental
142
-Maturity:   beta
143
-Depends on: -
144
-Purpose:    Very fast accounting in flat text files
145
-
146
-Name:       gflags
147
-Owner:      jiri
148
-Use:        experimental
149
-Maturity:   beta
150
-Depends on: -
151
-Purpose:    global flags that can be changed by fifo commands
152
-
153
-Name:       group
154
-Owner:      janakj
155
-Use:        regular
156
-Maturity:   stable
157
-Depends on: database
158
-Purpose:    Group membership checking using database
159
-
160
-Name:       group_radius
161
-Owner:      janakj
162
-Use:        experimental
163
-Maturity:   beta
164
-Depends on: -
165
-Purpose:    Group membership checking using Radius
166
-
167
-Name:       jabber
168
-Owner:      dcm
169
-Use:        experimental
170
-Maturity:   beta
171
-Depends on: database tm
172
-Purpose:    SIMPLE 2 Jabber gateway
173
-
174
-Name:       maxfwd
175
-Owner:      bogdan
176
-Use:        regular
177
-Maturity:   stable
178
-Depends on: -
179
-Purpose:    Max-Forwards check
180
-
181
-Name:       msilo
182
-Owner:      dcm
183
-Use:        experimental
184
-Maturity:   beta
185
-Depends on: database tm
186
-Purpose:    Message store
187
-
188
-Name:       mysql
189
-Owner:      janakj
190
-Use:        regular
191
-Maturity:   stable
192
-Depends on: -
193
-Purpose:    MySQL database support
194
-
195
-Name:       options
196
-Owner:      calrissian
197
-Use:        experimental
198
-Maturity:   beta
199
-Depends on: -
200
-Purpose:    Answers server options requests
201
-
202
-Name:       pa
203
-Owner:      janakj
204
-Use:        experimental
205
-Maturity:   alpha
206
-Depends on: tm (usrloc jabber)
207
-Purpose:    Presence agent
208
-
209
-Name:       pike
210
-Owner:      bogdan
211
-Use:        experimental
212
-Maturity:   alpha
213
-Depends on: -
214
-Purpose:    Excessive load detection
215
-
216
-Name:       print
217
-Owner:      andrei
218
-Use:        example
219
-Maturity:   stable
220
-Depends on: -
221
-Purpose:    Printing messages to stdout
222
-
223
-Name:       registrar
224
-Owner:      janakj
225
-Use:        regular
226
-Maturity:   stable
227
-Depends on: usrloc sl
228
-Purpose:    Registrar
229
-
230
-Name:       rr
231
-Owner:      janakj
232
-Use:        regular
233
-Maturity:   stable
234
-Depends on: -
235
-Purpose:    Routing and Record-Routing
236
-
237
-Name:       sl
238
-Owner:      bogdan
239
-Use:        regular
240
-Maturity:   stable
241
-Depends on: -
242
-Purpose:    Stateless replies
243
-
244
-Name:       sms
245
-Owner:      bogdan
246
-Use:        regular
247
-Maturity:   stable
248
-Depends on: tm
249
-Purpose:    SMS gateway
250
-
251
-Name:       snmp
252
-Owner:      ric
253
-Use:        removed
254
-Maturity:   removed
255
-Depends on: -
256
-Purpose:    SNMP Management
257
-
258
-Name:       speeddial
259
-Owner:      ramona
260
-Use:        regular
261
-Maturity:   beta
262
-Depends on: -
263
-Purpose:    On-server speed dial facilities
264
-
265
-Name:       textops
266
-Owner:      andrei
267
-Use:        regular
268
-Maturity:   stable
269
-Depends on: -
270
-Purpose:    Message Textual Operations
271
-
272
-Name:       tm
273
-Owner:      jiri
274
-Use:        regular
275
-Maturity:   beta
276
-Depends on: -
277
-Purpose:    Transaction Management
278
-
279
-Name:       uri
280
-Owner:      janakj
281
-Use:        regular
282
-Maturity:   stable
283
-Depends on: database
284
-Purpose:    Various URI checks
285
-
286
-Name:       uri_db
287
-Owner:      janakj
288
-Use:        experimental
289
-Maturity:   beta
290
-Depends on: mysql uri
291
-Purpose:    URI checking using DB
292
-
293
-Name:       uri_radius
294
-Owner:      janakj
295
-Use:        experimental
296
-Maturity:   beta
297
-Depends on: -
298
-Purpose:    URI checking using Radius
299
-
300
-Name:       usrloc
301
-Owner:      janakj
302
-Use:        regular
303
-Maturity:   stable
304
-Depends on: database
305
-Purpose:    User location support
306
-
307
-Name:       vm
308
-Owner:      rco
309
-Use:        removed (functionality moved in tm)
310
-Maturity:   removed
311
-Depends on: tm
312
-Purpose:    Voicemail interface
313
-
314
-Name:       xlog
315
-Owner:      ramona
316
-Use:        regular
317
-Maturity:   stable
318
-Depends on: 
319
-Purpose:    formatted logging (printf style)
320
-
321
-Contributions
322
-Name:       domain
323
-Owner:      jih
324
-Use:        experimental
325
-Maturity:   beta
326
-Depends on: mysql
327
-Purpose:    Local domain lists and related functions
328
-
329
-Name:       enum
330
-Owner:      jih
331
-Use:        experimental
332
-Maturity:   beta
333
-Depends on: -
334
-Purpose:    Enum support
335
-
336
-Name:       domain
337
-Owner:      jih
338
-Use:        experimental
339
-Maturity:   beta
340
-Depends on: -
341
-Purpose:    support for maintenance of multiple domains
342
-
343
-Name:       mediaproxy
344
-Owner:      danp, agprojects
345
-Use:        regular
346
-Maturity:   stable
347
-Depends on: mediaproxy media relay
348
-Purpose:    nat traversal
349
-
350
-Name:       nathelper
351
-Owner:      sobomax
352
-Use:        regular
353
-Maturity:   stable
354
-Depends on: rtpproxy
355
-Purpose:    nat traversal
356
-
357
-Name:		permissions
358
-Owner:		tirpi
359
-Use:		experimental
360
-Maturity:	beta
361
-Depends on:	-
362
-Purpose:	hosts.allow-like ACLs
363
-
364
-Name:       postgress
365
-Owner:      lgfausak
366
-Use:        experimental
367
-Maturity:   beta
368
-Depends on: -
369
-Purpose:    Postgress DB support
3
+SIP-ROUTER modules
4
+==================
5
+
6
+This is the first release of the combined project. In order to be able to support
7
+an upgrade path for both Kamailio/OpenSER and SER current users, we have been forced to
8
+provide some modules in two versions, which means that we have three set of modules:
9
+
10
+ - modules: 	the SIP router modules
11
+ - modules_k: 	Kamailio modules
12
+ - modules_s: 	SER modules
13
+
14
+All modules are compatible with the core, so regardless if you are a new user or 
15
+an existing, you are free to make a choice between the three sets.
16
+Note that if you are currently using one product, you want to select the module
17
+that exists in the K/S directories first to get a smooth upgrade path.
18
+
19
+As sip-router development progress, we will move as many modules as possible
20
+into the core and only keep k/s modules for backwards compatibility when required.
21
+
22
+What is a module?
23
+=================
24
+A module consists of a lot of functions that enhance the core. Some of the modules
25
+depends on other modules. It's all properly documented in the README that belongs
26
+to each module (available as web pages on the sip-router.org web site).
27
+
28
+A module providers up to three different APIs:
29
+
30
+- Enhancements to the core SIP-router routing script (functions)
31
+- Commands for the management interface (MI)
32
+- Development interface for other modules
33
+
34
+A single module may provide a selection of this, maybe only one of them.
35
+
36
+Core modules
37
+------------
38
+auth_radius		Radius authentication
39
+avpops			Attribute-value pair operations ("variables")
40
+carrierroute		A telephony routing module
41
+db_berkeley		Database :: Berkeley DB (Oracle)
42
+db_flatstore		Database :: Flatstore
43
+db_mysql		Database :: Mysql
44
+db_postgres		Database :: PostgreSQL
45
+dialplan		Dialplan management
46
+enum			Enum support
47
+lcr			Least cost routing
48
+mediaproxy		Nat traversal :: Mediaproxy (AG projects)
49
+mi_rpc			Management Interface :: XML RPC support
50
+misc_radius		Various Radius functions
51
+pdb			???
52
+peering			SIP peering between service providers
53
+tls			SSL/TLS support
54
+tm			SIP transaction support (stateful proxy)
55
+utils			Various utilities (http query, xcap status)
56
+
57
+Kamailio modules
58
+----------------
59
+acc			Accounting
60
+alias_db		Alias management in database modules
61
+auth			MD5 digest authentication support
62
+auth_db			Authentication using a database module
63
+auth_diameter		Authentication based on Diameter
64
+benchmark		Development benchmark module
65
+call_control		Call timeouts and management (depends on Dialog module)
66
+cfgutils		Various configuration utilities
67
+cpl-c
68
+db_oracle		Database :: Oracle support
69
+db_text			Database :: Text support
70
+db_unixodbc		Database :: Unix ODBC support
71
+dialog			Dialog ("call") state module
72
+dispatcher		Load balancing and failover
73
+diversion		Call redirect support (SIP Diversion: header)
74
+domain			Proxy :: Multiple domain support using databases
75
+domainpolicy
76
+drouting		Proxy :: Dynamic routing
77
+exec
78
+group			Utils :: Group membership checking
79
+h350			LDAP/ITU H.350 multimedia schema support
80
+htable			Utils :: Hash table support
81
+imc			IM :: Instant messaging conference
82
+jabber			IM :: Jabber gateway
83
+kex			Proxy :: Kamailio core functions (backwards compatibility)
84
+ldap			LDAP Directory access
85
+maxfwd			SIP loop detection prevention (max-forwards header - "ttl")
86
+memcached		Utils :: In-memory caching support (memcached)
87
+mi_datagram		Management interface :: UDP
88
+mi_fifo			Management Interface :: Unix FIFO
89
+mi_xmlrpc		Management Interface :: XML-rpc
90
+msilo			Text message storage
91
+nat_traversal		NAT :: NAT traversal module
92
+nathelper		NAT :: NAT traversal module :: RTPproxy (SIPPY software)
93
+osp			Open Settlement Protocol support
94
+path			Path: header support
95
+pdt			Proxy :: Routing based on numeric prefix
96
+perl			Perl-based module interface
97
+perlvdb			Database :: Use perl database functions
98
+permissions		Security :: TCP-wrapper-like ACL functions
99
+pike			Security :: DOS-attack prevention
100
+presence		Presence :: Core presence module
101
+presence_dialoginfo	Presence :: Dialog info
102
+presence_mwi		Presence :: Message waiting indication
103
+presence_xml		Presence :: XML handler
104
+pua
105
+pua_bla
106
+pua_dialoginfo
107
+pua_mi			Presence :: Management interface
108
+pua_usrloc
109
+pua_xmpp		Presence :: XMPP/Jabber gateway
110
+purple			Presence :: Libpurple support
111
+pv
112
+qos			Dialogs :: SDP management 
113
+ratelimit		Security :: Rate limit
114
+regex			Regular expression support
115
+registrar		Registrar/location server support
116
+rls			Presence :: Resource list server
117
+rr			Proxy :: Record routing
118
+rtimer			Utils :: Timer based routing script processing
119
+sanity			Syntax checking for incoming SIP requests
120
+seas			Application server interface
121
+siptrace		Store SIP messages in database
122
+siputils		Various utilities for SIP call handling
123
+sl			Proxy :: Stateless handling of SIP messages
124
+sms			SMS gateway support
125
+snmpstats		SNMP support (net-snmp agentx)
126
+speeddial
127
+sqlops
128
+sst
129
+statistics
130
+textops			Text operations
131
+tmx			Proxy :: Kamailio transaction extensions (TM module)
132
+uac
133
+uac_redirect
134
+uri_db
135
+userblacklist
136
+usrloc			Proxy :: Location server
137
+xcap_client		Presence :: XCAP support
138
+xlog			Utils :: Extended logging support
139
+xmpp			Presence/IM :: XMPP/jabber gateway
140
+
141
+SER modules
142
+-----------
143
+acc_db
144
+acc_radius
145
+acc_syslog
146
+auth
147
+auth_db
148
+auth_identity
149
+avp
150
+avp_db
151
+bdb
152
+blst
153
+cfg_db
154
+cfg_rpc
155
+cpl-c
156
+ctl
157
+db_ops
158
+dbg
159
+dbtext
160
+dialog
161
+dispatcher
162
+diversion		Proxy :: Call redirection support (Diversion: header)
163
+domain			Proxy :: Multiple domain support
164
+eval
165
+exec			Proxy :: External script support (modify route set)
166
+fifo		
167
+gflags			Proxy :: Global flags
168
+iptrtpproxy		NAT traversal :: Kernel based RTP proxy
169
+jabber			IM :: Jabber gateway
170
+ldap			LDAP directory server support
171
+mangler
172
+maxfwd			Proxy :: Loop prevention (max-forwards header)
173
+msilo
174
+nathelper		NAT traversal :: RTP proxy (SIPPY software)
175
+options			Proxy :: Support for SIP OPTION request
176
+oracle			Database :: Oracle
177
+osp			Open Settlement Protocol
178
+pa
179
+pdt
180
+permissions		Security :: ACL support like TCP wrappers
181
+pike
182
+prefix_route
183
+presence_b2b
184
+print
185
+print_lib
186
+ratelimit
187
+registrar
188
+rls
189
+rr
190
+sanity
191
+sl
192
+sms
193
+speeddial
194
+textops
195
+timer
196
+tls
197
+uac
198
+unixsock
199
+uri
200
+uri_db
201
+usrloc
202
+xcap
203
+xlog			Extended logging support
204
+xmlrpc