Browse code

Updating INSTALL - mostly formatting

oej authored on 09/10/2009 09:23:20
Showing 1 changed files
... ...
@@ -9,19 +9,26 @@ $Id$
9 9
 
10 10
      ===========================================
11 11
 
12
+  Welcome to the SIP router! This is an amazingly flexible, robust
13
+  and secure SIP server built on years of experience in several Open 
14
+  Source projects. It's a merge of the SIP Express Router and the
15
+  OpenSER/Kamailio products produced by a joint development team.
16
+
12 17
   This memo gives you hints how to set up SIP Router quickly. To 
13 18
   understand how SIP Router works and how to configure it properly,
14
-  read admin's guide available from SIP Router website. We also
15
-  urge you to read latest ISSUES (available from SIP Router website 
19
+  please read the admin's guide available from the SIP Router website. 
20
+
21
+  We also urge you to read latest ISSUES (available from SIP Router website 
16 22
   too) and check for potential problems in this release.
17
-  Users of previous releases are encouraged to read NEWS to
18
-  learn how to move to this new SIP Router version.
23
+  Users of previous releases are encouraged to read NEWS to learn how to move to 
24
+  this new SIP Router version.
19 25
   
20 26
 
21
-TOC
27
+Table of Contents
28
+=================
22 29
 
23 30
 1. Supported Architectures and Requirements
24
-2. Howto Build sip-router From Source Distribution
31
+2. Howto Build sip-router From the Source Distribution
25 32
 3. Quick-Start Installation Guide
26 33
    A) Getting Help
27 34
    B) Disclaimers
... ...
@@ -34,11 +41,11 @@ TOC
34 34
 1. Supported Architectures and Requirements
35 35
 -------------------------------------------
36 36
 
37
-Supported operating systems: Linux, FreeBSD, NetBSD, OpenBSD, Solaris, Darwin
38
-Partially supported: Windows+Cygwin (core + static modules only, no
39
-  IPv6, no TCP, no dynamic modules)
40
-Supported architectures: i386, x86_64 (amd64), armv4l, sparc64, powerpc,
41
-  powerpc64
37
+Supported operating systems: Linux, FreeBSD, NetBSD, OpenBSD, Solaris, OS/X Darwin
38
+Partially supported: Windows+Cygwin (core + static modules only, no IPv6, no TCP, 
39
+no dynamic modules)
40
+
41
+Supported architectures: i386, x86_64 (amd64), armv4l, sparc64, powerpc, powerpc64
42 42
 Experimental architectures: mips1, mips2, sparc32, alpha
43 43
 
44 44
 (for other architectures the Makefiles might need to be edited)
... ...
@@ -52,19 +59,19 @@ Requirements:
52 52
   but it might require some options tweaking for best performance)
53 53
 - bison or yacc (Berkley yacc)
54 54
 - flex
55
-- GNU make (on Linux this is the standard "make", on *BSD and Solaris is
55
+- GNU make (on Linux this is the standard "make", on *BSD and Solaris it is
56 56
   called "gmake") version >= 3.80 (recommended 3.81).
57 57
 - sed and tr (used in the makefiles)
58 58
 - GNU tar ("gtar" on Solaris) and gzip if you want "make tar" to work
59 59
 - GNU install, BSD install or Solaris install if you want "make
60 60
   install", "make bin", "make sunpkg" to work
61
-- libmysqlclient & libz (zlib) if you want mysql support (the mysql module)
62
-- libexpat if you want the jabber gateway support (the jabber module)
61
+- libmysqlclient & libz (zlib) if you want Mysql support (the db_mysql module)
62
+- libexpat if you want the XMPP/Jabber gateway support (the jabber module)
63 63
 - libxml2 if you want to compile the cpl-c (CPL support) or pa (presence) 
64 64
    modules
65 65
 - libradiusclient-ng (> 5.0) if you need radius support (the auth_radius,
66 66
   group_radius, uri_radius and avp_radius modules)
67
-- libpq if you need postgres support (the postgres module)
67
+- libpq if you need PostgreSQL support (the db_postgres module)
68 68
 
69 69
 
70 70
 OS Notes:
... ...
@@ -72,12 +79,12 @@ OS Notes:
72 72
  FreeBSD/OpenBSD/NetBSD: make sure gmake, bison or yacc & flex are installed.
73 73
   
74 74
   FreeBSD 5.4:
75
-  
75
+  ------------
76 76
   If you want to compile all the modules, you will need the following packages:
77 77
   - mysql-client-* (any version, install one of the mysql*-client ports) for
78
-  libmysqlclient
78
+    libmysqlclient
79 79
   - postgresql-libpqxx-2.4.2_1 (/usr/ports/databases/postgresql-libpqxx) for
80
-  libpq
80
+    libpq
81 81
   - expat-1.95.8 (/usr/ports/textproc/expat2) for libexpat
82 82
   - libxml2-2.6.18 (/usr/ports/textproc/libxml2) for libxml2
83 83
   - radiusclient-0.4.7 (/usr/ports/net/radiusclient) for libradiusclient-ng 
... ...
@@ -88,6 +95,7 @@ OS Notes:
88 88
      gmake bin radiusclient_ng=4 include_modules="mysql jabber cpl-c auth_radius group_radius uri_radius postgres pa"
89 89
 
90 90
   OpenBSD 3.7
91
+  -----------
91 92
   - mysql-client-4.0.23 (/usr/ports/databases/mysql) for libmysqlclient
92 93
   - expat-1.95.6 (/usr/ports/textproc/expat) for libexpat
93 94
   - libxml-2.6.16p0 (/usr/ports/textproc/libxml) for libxml2
... ...
@@ -95,10 +103,12 @@ OS Notes:
95 95
    http://download.berlios.de/radiusclient-ng/radiusclient-ng-0.5.1.tar.gz
96 96
    (you need to download and install it, since there is no "official" 
97 97
    openbsd port for it) for libradiusclient-ng 
98
+
98 99
   Compile example (all the modules and sip-router in a tar.gz):
99 100
      gmake bin include_modules="mysql jabber cpl-c auth_radius group_radius uri_radius pa"
100 101
 
101 102
   NetBSD 2.0
103
+  ----------
102 104
   - mysql-client-4.1.12 (/usr/pkgsrc/databases/mysql4-client) for libmysqlclient
103 105
   - expat-1.95.8nb2 (/usr/pkgsrc/textproc/expat) for libexpat
104 106
   - libxml2-2.6.19 (/usr/pkgsrc/textproc/libxml2) for libxml2
... ...
@@ -107,10 +117,10 @@ OS Notes:
107 107
   Compile example (all the modules and sip-router in a tar.gz):
108 108
      gmake bin include_modules="mysql jabber cpl-c auth_radius group_radius uri_radius pa"
109 109
 
110
- Solaris 10
111
- 
112
-  As above; you can use Solaris's yacc instead of bison. You might
113
-  need also gtar and ginstall. If you don't have ginstall you can use Solaris
110
+  Solaris 10
111
+  ----------
112
+  As above; you can use Solaris's yacc instead of bison. You might also
113
+  need gtar and ginstall. If you don't have ginstall you can use Solaris
114 114
   install, just make sure it's in the PATH (it's usually in /usr/sbin) and
115 115
   add INSTALL=install either to the environment or to the make command line
116 116
   (e.g.: gmake INSTALL=install all).
... ...
@@ -121,10 +131,10 @@ OS Notes:
121 121
   Compile example (all the modules and sip-router in a tar.gz):
122 122
      gmake bin INSTALL=install include_modules="mysql jabber cpl-c auth_radius group_radius uri_radius postgres pa"
123 123
 
124
- Linux
125
-
126
- Needed packages for compiling all the modules:
127
-  Debian:
124
+  Linux
125
+  -----
126
+  Needed packages for compiling all the modules:
127
+  * Debian:
128 128
       - libmysqlclient-dev for libmysqlclient
129 129
       - libpq-dev for libpq
130 130
       - libexpat1-dev for libexpat
... ...
@@ -141,7 +151,7 @@ OS Notes:
141 141
        apt-get install sip-router sip-router-cpl-module sip-router-jabber-module sip-router-mysq-module sip-router-pa-module sip-router-postgres-module sip-router-radius-modules )
142 142
 
143 143
  Cygwin  (alpha state, partial support)
144
-
144
+ --------------------------------------
145 145
  make sure make, bison, flex, minires and minires-devel (needed for the
146 146
  resolver functions) are installed.
147 147
  
... ...
@@ -163,306 +173,267 @@ OS Notes:
163 163
 
164 164
 (NOTE: if make doesn't work try gmake  instead)
165 165
 
166
-SIP Router is split in four main parts: The core, the modules, the
167
-utilties, and scripts/examples.  When you build, you can decide to build
168
-only the core, the modules, both, or all.
166
+  SIP Router is split in four main parts: The core, the modules, the
167
+  utilties, and scripts/examples.  When you build, you can decide to build
168
+  only the core, the modules, both, or all.
169 169
 
170
-Compile SIP Router core only:
171
-make   #builds only sip-router core, equivalent to make sip-router
170
+* Compile SIP Router core only:
171
+	make   #builds only sip-router core, equivalent to make sip-router
172 172
 
173 173
 Compile modules except some explicitly excepted (see below)
174
-make modules  - all modules in the modules/ directory (common modules)
175
-make modules_s - all modules in the modules_s/ directory (ser modules)
176
-make modules_k - all modules in the modules_k/ directory (kamailio modules)
177
-make modules-all or make every-module  - all the modules (modules, modules_s
174
+	make modules  - all modules in the modules/ directory (common modules)
175
+	make modules_s - all modules in the modules_s/ directory (ser modules)
176
+	make modules_k - all modules in the modules_k/ directory (kamailio modules)
177
+	make modules-all or make every-module  - all the modules (modules, modules_s
178 178
                                          and module_k)
179 179
 
180
-Compile all:
181
-make all
180
+* Compile all:
181
+	make all
182 182
 
183
-Explicitly excepted modules (default in <=0.9.x):
184
-By default make all will not build modules that require external libraries or
185
-that are considered to be "experimental". The modules that have external
186
-dependencies are: mysql, jabber, cpl-c, auth_radius, group_radius, uri_radius,
187
-avp_radius, postgres, pa.
183
+* Explicitly excepted modules:
184
+  By default make all will not build modules that require external libraries or
185
+  that are considered to be "experimental". The modules that have external
186
+  dependencies are: db_mysql, jabber, cpl-c, auth_radius, group_radius, uri_radius,
187
+  avp_radius, db_postgres, db_berkely, carrierroute, pa.
188 188
 
189
-Including groups of modules (available in >0.9.x):
190
-Instead of compiling the default modules only, you can specify groups of
191
-modules to include, according to their status:
192
-standard - Modules in this group are considered a standard part of SIP Router (due to widespread usage)
189
+Including groups of modules:
190
+  Instead of compiling the default modules only, you can specify groups of
191
+  modules to include, according to their status:
192
+  - standard - Modules in this group are considered a standard part of SIP Router (due to widespread usage)
193 193
     but they have no dependencies (note that some of these interplay with external systems.
194 194
     However, they don't have compile or link dependencies).
195 195
 
196
-db - Modules in this group use databases and need a database driver to run.
196
+  - db - Modules in this group use databases and need a database driver to run.
197 197
      Included are drivers for the text mode db (dbtext) and for dumping
198 198
      large ammount of data to files (db_flatstore). See also the mysql or
199 199
      postgres groups.
200 200
 
201
-standard_dep -  Modules in this group are considered a standard part of SIP Router (due to widespread usage)
201
+  - standard_dep -  Modules in this group are considered a standard part of SIP Router (due to widespread usage)
202 202
     but they have dependencies that most be satisfied for compilation.
203 203
     NOTE! All presence modules (dialog, pa, presence_b2b, rls, xcap) have been included in this
204 204
     group due to interdependencies
205 205
 
206
-stable - Modules in this group satisfy specific or niche applications, but are considered
206
+  - stable - Modules in this group satisfy specific or niche applications, but are considered
207 207
     stable for production use. They may or may not have dependencies
208 208
 
209
-experimental - Modules in this group are either not complete, untested, or without enough reports
209
+  - experimental - Modules in this group are either not complete, untested, or without enough reports
210 210
     of usage to allow the module into the stable group. They may or may not have dependencies.
211 211
 
212
-To compile core with standard modules:
213
-make group_include="standard" all
214
-
215
-To compile all modules (provided you have all the required libraries installed) use:
216
-make group_include="standard standard-dep stable experimental" all
217
-
218
-There are also in addition some "convenience" groups:
219
-
220
-mysql - Include all the db modules dependent and the mysql db driver
221
-
222
-postgres - Include all the db modules and the postgres db driver
223
-
224
-radius - Include all modules on radiusclient
225
-
226
-presence - Include all the presence modules
227
-
228
-Ex. to make a standard installation with mysql, use:
229
-make group_include="standard mysql" all
230
-
231
-In addition to group_include (or instead), you can use 
232
-include_modules="modA modB"
233
-to specify exactly the modules you want to include, ex.
234
-make include_modules="mymodule" modules
235
-
236
-You can also explicitly skip modules using skip_modules. Let's say you want all the standard
237
- and standard-dep modules except domain:
238
-make group_include="standard standard-dep" skip_modules="domain" all
239
-
240
-NOTE!!! As this mechanism is very powerful, you may be uncertain which
241
-modules wwill be included.
242
-Just replace all (or modules) with print-modules and you will see which
243
-modules will be included and excluded, ex:
244
-
245
-make print-modules
246
-
247
-will show which modules are excluded by default.
248
-
249
-If you want to install or to build a binary package (a tar.gz with
250
-sip-router and the modules), substitute "all" in the above command with
251
-"install" or "bin".
252
-
253
-
254
-More compile examples:
255
-
256
-- compile with profiling
257
-
258
-make PROFILE=-pg all
259
-
260
--compile debug mode version
261
-
262
-make mode=debug all
263
-
264
--compile debug version with profiling
265
-
266
-make mode=debug PROFILE=-pg all
267
-
268
--compile only the print module
269
-
270
-make modules=modules/print modules
271
-
272
-- compile by default only the print module, in debuging mode and with 
273
- profiling:
274
-
275
-make cfg modules=modules/print mode=debug PROFILE=-pg
276
-make all
277
-
278
-- change & save the  modules list without rebuilding the whole config
279
- (so that already compiled modules won't be re-compiled by 
280
-  make all/make modules):
281
-
282
-make modules-cfg include_modules="mysql postgress"
283
-
284
-- change only the compile/build options, without changing the modules list:
285
-
286
-make cfg-defs CPU=ultrasparc PROFILE=-pg
287
-
288
-- compile by default all the usual modules + mysql and postgres, optimized 
289
-for pentium-m and for space (saves both the build options and the module 
290
- list)
291
-
292
-make cfg include_modules="mysql postgres" CPU=pentium-m CC_EXTRA_OPTS=-Os
293
-make all
294
-
295
--compile all the "default" modules except textops and vm
296
-
297
-make skip_modules="textops vm" modules
298
-
299
-- save the above option in the make config, so that all make commands
300
-will use it by default:
301
-
302
-make cfg skip_modules="textops vm"
303
-
304
--compile all default modules and include uri_radius (not compiled by default):
305
-
306
-make include_modules="uri_radius" modules
307
-
308
--compile all the modules from the modules subdirectory (even the one excluded
309
-by default):
310
-
311
-make exclude_modules="" modules
312
-
313
--compile all the modules from the modules subdirectory excluding vm:
314
-
315
-make exclude_modules=vm modules
316
-
317
-or
318
-
319
-make exclude_modules="" skip_modules=vm modules
320
-
321
-
322
--compile with the "tm" module statically linked and with profiling
323
-
324
-make static_modules=tm PROFILE=-pg all
325
-
326
--compile with gcc-3.2 instead of gcc
327
-
328
-make CC=gcc-3.2 all
329
-
330
-or
331
-
332
-CC=gcc-3.2 make all
333
-
334
-
212
+* To compile core with standard modules:
213
+	make group_include="standard" all
214
+
215
+* To compile all modules (provided you have all the required libraries installed) use:
216
+	make group_include="standard standard-dep stable experimental" all
217
+
218
+  There are also in addition some "convenience" groups:
219
+
220
+	mysql 		- Include all the db modules dependent and the mysql db driver
221
+	postgres 	- Include all the db modules and the postgres db driver
222
+	radius 		- Include all modules on radiusclient
223
+	presence 	- Include all the presence modules
224
+
225
+  Ex. to make a standard installation with Mysql, use:
226
+	make group_include="standard mysql" all
227
+
228
+  In addition to group_include (or instead), you can use 
229
+	include_modules="modA modB"
230
+  to specify exactly the modules you want to include, ex.
231
+	make include_modules="mymodule" modules
232
+
233
+  You can also explicitly skip modules using skip_modules. Let's say you want all the standard
234
+  and standard-dep modules except domain:
235
+	make group_include="standard standard-dep" skip_modules="domain" all
236
+
237
+  NOTE!!! As this mechanism is very powerful, you may be uncertain which
238
+  modules that will be included. Just replace all (or modules) with print-modules and you will 
239
+  see which modules will be included and excluded, ex:
240
+	make print-modules
241
+  will show which modules are excluded by default.
242
+
243
+  If you want to install or to build a binary package (a tar.gz with
244
+  sip-router and the modules), substitute "all" in the above command with
245
+  "install" or "bin".
246
+
247
+
248
+* More compile examples:
249
+
250
+  - compile with profiling
251
+	make PROFILE=-pg all
252
+  - compile debug mode version
253
+	make mode=debug all
254
+  - compile debug version with profiling
255
+	make mode=debug PROFILE=-pg all
256
+  - compile only the print module
257
+	make modules=modules/print modules
258
+  - compile by default only the print module, in debuging mode and with 
259
+    profiling:
260
+	make cfg modules=modules/print mode=debug PROFILE=-pg
261
+	make all
262
+  - change & save the  modules list without rebuilding the whole config
263
+    (so that already compiled modules won't be re-compiled by 
264
+    make all/make modules):
265
+	make modules-cfg include_modules="mysql postgress"
266
+  - change only the compile/build options, without changing the modules list:
267
+	make cfg-defs CPU=ultrasparc PROFILE=-pg
268
+  - compile by default all the usual modules + mysql and postgres, optimized 
269
+     for pentium-m and for space (saves both the build options and the module 
270
+     list)
271
+	make cfg include_modules="mysql postgres" CPU=pentium-m CC_EXTRA_OPTS=-Os
272
+	make all
273
+   - compile all the "default" modules except textops and vm
274
+	make skip_modules="textops vm" modules
275
+   - save the above option in the make config, so that all make commands
276
+     will use it by default:
277
+	make cfg skip_modules="textops vm"
278
+   - compile all default modules and include uri_radius (not compiled by default):
279
+	make include_modules="uri_radius" modules
280
+   - compile all the modules from the modules subdirectory (even the one excluded
281
+     by default):
282
+	make exclude_modules="" modules
283
+   - compile all the modules from the modules subdirectory excluding vm:
284
+	make exclude_modules=vm modules
285
+     or
286
+	make exclude_modules="" skip_modules=vm modules
287
+   - compile with the "tm" module statically linked and with profiling
288
+	make static_modules=tm PROFILE=-pg all
289
+   - compile with gcc-3.2 instead of gcc
290
+	make CC=gcc-3.2 all
291
+     or
292
+	CC=gcc-3.2 make all
335 293
 
336 294
 Make targets:
295
+=============
337 296
 
338 297
 Configure:
298
+----------
339 299
 
340
-make cfg or make config (force config and module list regeneration)
300
+  * make cfg or make config - force config and module list regeneration
301
+  
341 302
 
342
-Example: make cfg include_modules=mysql mode=debug  (all future make 
343
-invocations will include the mysql module and will build in debug mode)
303
+  Example: 
304
+	make cfg include_modules=mysql mode=debug
305
+  All future make invocations will include the mysql module and will build in debug mode
344 306
 
345
-Note: if config.mak doesn't exist (e.g. initial checkout or after a make 
346
-proper) or if Makefile.defs was changed, the config will be re-generated
347
-automatically by the first make command. For example:
348
- make cfg  include_modules=mysql; make all is equivalent to 
349
- rm config.mak modules.lst; make include_modules=mysql.
307
+  Note: if config.mak doesn't exist (e.g. initial checkout or after a make 
308
+  proper) or if Makefile.defs was changed, the config will be re-generated
309
+  automatically by the first make command. For example:
310
+  	make cfg  include_modules=mysql; make all
311
+  is equivalent to 
312
+ 	rm config.mak modules.lst; make include_modules=mysql.
350 313
 
351
-make cfg-defs  (force config regeneration, but don't touch the module list)
314
+  * make cfg-defs  (force config regeneration, but don't touch the module list)
352 315
 
353
-Example: make cfg-defs CPU=ultrasparc CC_EXTRA_OPTS=-Os PROFILE=-pg
316
+  Example:
317
+	make cfg-defs CPU=ultrasparc CC_EXTRA_OPTS=-Os PROFILE=-pg
354 318
 
355
-make modules-cfg or
356
-make modules-list    (saves the module list, without regenerating the 
357
-                       build config)
358
-Example: make modules-list include_modules="tls" skip_modules="print"
319
+	make modules-cfg
320
+  or
321
+	make modules-list
322
+  saves the module list, without regenerating the build config
323
+  Example:
324
+	make modules-list include_modules="tls" skip_modules="print"
359 325
 
360 326
 Clean:
327
+------
361 328
 
362
-make clean   (clean the modules too)
363
-make proper  (clean also the dependencies and the config, but not the module
364
-  list)
365
-make distclean (the same as proper)
366
-make maintainer-clean (clean everything, including make's config, saved 
367
-  module list, auto generated files, tags, *.dbg a.s.o)
368
-make clean-all (clean all the modules in modules/*)
369
-make proper-all (like make proper but for all the  modules in modules/*)
329
+  * make clean   	- clean the base and modules too
330
+  * make proper  	- clean also the dependencies and the config, but not the module list
331
+  * make distclean 	- the same as proper
332
+  * make maintainer-clean - clean everything, including make's config, saved 
333
+  			  module list, auto generated files, tags, *.dbg a.s.o
334
+  * make clean-all	- clean all the modules in modules/*
335
+  * make proper-all 	- like make proper but for all the  modules in modules/*
370 336
 
371
-Config clean:
337
+  Config clean:
372 338
 
373
-make clean-cfg (cleans the compile config)
374
-make clean-modules-cfg (cleans the modules list)
339
+  * make clean-cfg (cleans the compile config)
340
+  * make clean-modules-cfg (cleans the modules list)
375 341
 
376
-"Reduced" clean:
342
+  Reduced" clean:
377 343
 
378
-make local-clean    (cleans only the core, no libs, utils or modules)
379
-make clean-modules  (like make clean, but cleans only the modules)
380
-make clean-libs     (like make clean, but cleans only the libs)
381
-make clean-utils    (like make clean, but cleans only the utils
382
-make proper-modules (like make proper, but only for modules)
383
-make proper-libs    (like make proper, but only for libs)
384
-make proper-utils   (like make proper, but only for utils)
344
+  * make local-clean  	- cleans only the core, no libs, utils or modules
345
+  * make clean-modules  - like make clean, but cleans only the modules
346
+  * make clean-libs     - like make clean, but cleans only the libs
347
+  * make clean-utils    - like make clean, but cleans only the utils
348
+  * make proper-modules - like make proper, but only for modules
349
+  * make proper-libs    - like make proper, but only for libs
350
+  * make proper-utils   - like make proper, but only for utils
385 351
 
386 352
 Compile:
353
+--------
354
+  * make proper
355
+  optional: make cfg  <various cfg. options that should be saved>
356
+  * make
357
+  or gmake on non-Linux systems
358
+  * make modules 
359
+  or make modules exclude_modules="CVS print" etc.
387 360
 
388
-make proper
389
-optional: make cfg  <various cfg. options that should be saved>
390
-make
391
-(or gmake on non-Linux systems)
392
-make modules 
393
-or make modules exclude_modules="CVS print" etc.
394
-
395
-Make tags:
361
+Other make targets:
362
+-------------------
363
+  Make tags:
364
+	make TAGS
396 365
 
397
-make TAGS
366
+  Create a tar.gz with the sources (in ../):
367
+	make tar
398 368
 
399
-Create a tar.gz with the sources (in ../):
369
+  Create a tar.gz with the binary distribution (in ../):
370
+	make bin
400 371
 
401
-make tar
372
+  Create a gzipped solaris package (in ../):
373
+	make sunpkg
402 374
 
403
-Create a tar.gz with the binary distribution (in ../):
375
+  Create debian packages (in ../):
376
+	make deb
404 377
 
405
-make bin
406
-
407
-Create a gzipped solaris package (in ../):
408
-
409
-make sunpkg
410
-
411
-Create debian packages (in ../):
412
-
413
-make deb
414
-
415
-or
416
-
417
-dpkg-buildpackage
378
+  or
379
+	dpkg-buildpackage
418 380
 
419 381
 Documentation:
382
+--------------
420 383
 
421
-make README
384
+  Regenerate the README for all the "default" modules (include_modules,
385
+  skip_modules a.s.o can be used to alter the module list).
386
+	make README
422 387
 
423
-Regenerates the README for all the "default" modules (include_modules,
424
- skip_modules a.s.o can be used to alter the module list).
388
+  Generates a manpage for all the modules that support it (.xml file in the
389
+  module directory).
390
+	make man
425 391
 
426
-make man
427
-
428
-Generates a manpage for all the modules that support it (.xml file in the
429
- module directory).
430
-
431
-make modules=modules_k/foo modules-readme
432
-
433
-Generates README file for modules_k/foo.
392
+  Generates README file for modules_k/foo.
393
+	make modules=modules_k/foo modules-readme
434 394
 
435 395
 Install:
396
+--------
436 397
 
437
-make prefix=/usr/local  install
398
+	make prefix=/usr/local  install
438 399
 
439
-Note: If you use prefix parameter in make install then you also need
440
-to use this parameter in previous make commands, i.e. make, make modules,
441
-or make all. If you fail to do this then SIP Router will look for the default
442
-configuration file in a wrong directory, because the directory of the
443
-default configuration file is hard coded into sip-router during compile time. 
444
-When you use a different prefix parameter when installing then the 
445
-directory hard coded in sip-router and the directory in which the file will be 
446
-installed by make install will not match. (You can specify exact location
447
-of the configuration file using -f parameter of sip-router).
400
+  Note: If you use prefix parameter in make install then you also need
401
+  to use this parameter in previous make commands, i.e. make, make modules,
402
+  or make all. If you fail to do this then SIP Router will look for the default
403
+  configuration file in a wrong directory, because the directory of the
404
+  default configuration file is hard coded into sip-router during compile time. 
405
+  When you use a different prefix parameter when installing then the 
406
+  directory hard coded in sip-router and the directory in which the file will be 
407
+  installed by make install will not match. (You can specify exact location
408
+  of the configuration file using -f parameter of sip-router).
448 409
 
449
-For example, if you do the following:
450
-make all
451
-make prefix=/ install
410
+  For example, if you do the following:
411
+	make all
412
+	make prefix=/ install
452 413
 
453
-Then the installation will put the default configuration file into
454
-/etc/sip-router/sip-router.cfg (because prefix is /), but sip-router
455
-will look for the file in /usr/local/etc/sip-router/sip-router.cfg
456
-(because there was no prefix parameter make all and /usr/local is the
457
-default value of prefix).
414
+  Then the installation will put the default configuration file into
415
+  /etc/sip-router/sip-router.cfg (because prefix is /), but sip-router
416
+  will look for the file in /usr/local/etc/sip-router/sip-router.cfg
417
+  (because there was no prefix parameter make all and /usr/local is the
418
+  default value of prefix).
458 419
 
459
-Workaround is trivial, use the same parameters in all make commands:
460
-make prefix=/ all
461
-make prefix=/ install
462
-or save the desired prefix in the make config (e.g.: make cfg prefix=/).
420
+  Workaround is trivial, use the same parameters in all make commands:
421
+	make prefix=/ all
422
+	make prefix=/ install
423
+  or save the desired prefix in the make config (e.g.: make cfg prefix=/).
463 424
 
464
-That applies to other make parameters as well (for example parameters
465
-"modules" or "excluded_modules").
425
+  That applies to other make parameters as well (for example parameters
426
+  "modules" or "excluded_modules").
466 427
 
467 428
 
468 429
 3. Quick-Start Installation Guide
... ...
@@ -470,87 +441,84 @@ That applies to other make parameters as well (for example parameters
470 470
 
471 471
 A) Getting Help
472 472
 
473
-This guide gives you instructions on how to set up the SIP Router
474
-(sip-router) on your box quickly. In case the default configuration
475
-does not fly, check documentation at sip-router site
476
-  http://sip-router.org
477
-to learn how to configure SIP Router for your site.
473
+  This guide gives you instructions on how to set up the SIP Router
474
+  (sip-router) on your box quickly. In case the default configuration
475
+  does not fly, please check the documentation at the sip-router web site
476
+  http://sip-router.org to learn how to configure SIP Router for your site.
478 477
 
479
-If the documentation does not resolve your problem you may try contacting 
480
-our user forum by E-mail at sr-users@lists.sip-router.org -- that is the
481
-mailing list of ser community. To participate in the mailing list,
482
-subscribe at the following web address:
478
+  If the documentation does not resolve your problem you may try contacting 
479
+  our user forum by E-mail at sr-users@lists.sip-router.org -- that is the
480
+  mailing list of the sip-router community. To participate in the mailing list,
481
+  please subscribe at the following web address:
483 482
 
484 483
   http://lists.sip-router.org/cgi-bin/mailman/listinfo
485 484
 
486
-To participate in our commercial support program, contact info@iptel.org.
487
-The support program will provide you with most timely and accurate help
488
-for configuration, integration, development and any other technical
489
-activity.
490
-
485
+  To participate in our commercial support program, contact info@iptel.org.
486
+  The support program will provide you with most timely and accurate help
487
+  for configuration, integration, development and any other technical
488
+  activity.
491 489
 
492 490
 B) Disclaimers
493 491
  
494
-Note well the default "quick-start" configuration is very simple in order 
495
-to be easily installable. It provides minimum features. Particularly, 
496
-authentication is by default disabled, which means anyone can register using
497
-any name with the server. (This is on purpose to avoid installation 
498
-dependencies on MySQL which is needed for storing user credentials.)
499
-
492
+  Note well the default "quick-start" configuration is very simple in order 
493
+  to be easily installable. It provides minimum features. Particularly, 
494
+  authentication is by default disabled, which means anyone can register using
495
+  any name with the server. (This is on purpose to avoid installation 
496
+  dependencies on a database, which is needed for storing user credentials.)
500 497
 
501 498
 C) Quick Start
502 499
 
503
-The following step-by step guide gives you instructions how to install the 
504
-sql-free distribution of sip-router. If you need persistence and
505
-authentication, then you have to install additional MySql support --
506
-proceed to section D) after you are finished with C).
500
+  The following step-by step guide gives you instructions how to install the 
501
+  SQL-free distribution of sip-router. If you need persistence and
502
+  authentication, then you have to install additional database support --
503
+  proceed to section D) after you are finished with C).
507 504
 
508
-1) Download an RPM or debian package from site
505
+  1) Download an RPM or debian package from site
509 506
 
510 507
     ****** site not available yet
511 508
 
512
-If you don't use an rpm or debian based distribution, try our tar.gz'ed
513
-binaries
509
+  If you don't use an rpm or debian based distribution, try our tar.gz'ed
510
+  binaries
514 511
 
515 512
   ******* not available yet
516 513
 
517
-If you use Solaris 8 you can try our solaris package.
518
-If you use Gentoo Linux you do not have to download a package.
519
-
520
-2) install the package
521
-RPM:
522
-    rpm -i <package_name>
523
-debian:
524
-    dpkg -i <package_name>
525
-gentoo:
526
-    emerge sip-router
527
-	(or if use only stable packets:
528
-	 ACCEPT_KEYWORDS="~x86" emerge sip-router)
529
-tar.gz:
530
-    cd /; tar zxvf <package_name>_os_arch.tar.gz
531
-    (it will install in /usr/local/, and the configuration file in
532
-     /usr/local/etc/sip-router/sip-router.cfg)
533
-Solaris:
534
-    gunzip <package_name>.gz ; pkgadd -d <package_name>
535
-*BSD:
536
-    pkg_add package_name
514
+  If you use Solaris 8 you can try our solaris package.
515
+  If you use Gentoo Linux you do not have to download a package.
516
+
517
+2) Install the package
518
+	RPM:
519
+    		rpm -i <package_name>
520
+	debian:
521
+    		dpkg -i <package_name>
522
+	gentoo:
523
+    		emerge sip-router
524
+		(or if use only stable packets: ACCEPT_KEYWORDS="~x86" emerge sip-router)
525
+	tar.gz:
526
+    		cd /; tar zxvf <package_name>_os_arch.tar.gz
527
+    		(it will install in /usr/local/, and the configuration file in
528
+     		/usr/local/etc/sip-router/sip-router.cfg)
529
+	Solaris:
530
+    		gunzip <package_name>.gz ; pkgadd -d <package_name>
531
+	*BSD:
532
+    		pkg_add package_name
537 533
     
538
-3) start the server
539
-RPM + gentoo:
540
-    /etc/init.d/sip-router start
541
-debian:
542
-    sip-router is started automatically after the install
543
-    (in case something fails you can start it with /etc/init.d/sip-router start)
544
-tar.gz:
545
-    the tar.gz does not include an init.d script, you'll have to create one of
546
-    your own or adapt one from the source distribution (debian/init.d,
547
-    rpm/sip-router.init.*, gentoo/sip-router.init)
548
-    You can start sip-router directly with /usr/local/sbin/sip-router.
549
-Solaris:
550
-    see tar.gz.
534
+3) Start the server
535
+
536
+	RPM + gentoo:
537
+    		/etc/init.d/sip-router start
538
+	debian:
539
+    		sip-router is started automatically after the install
540
+    		(in case something fails you can start it with /etc/init.d/sip-router start)
541
+	tar.gz:
542
+	Solaris:
543
+    		the tar.gz does not include an init.d script, you'll have to create one of
544
+    		your own or adapt one from the source distribution (debian/init.d,
545
+    		rpm/sip-router.init.*, gentoo/sip-router.init)
546
+    		You can start sip-router directly with /usr/local/sbin/sip-router.
551 547
     
552 548
 4) optionally, watch server's health using the
553
-   serctl utility
549
+   	serctl utility
550
+
554 551
     - to do so, first set the environment variable SIP_DOMAIN to your domain 
555 552
       name, e.g., in Bourne shell, call
556 553
         export SIP_DOMAIN="myserver.foobar.com"
... ...
@@ -563,29 +531,31 @@ Solaris:
563 563
         /usr/local/sbin/serctl moni (if you installed from a tar.gz or solaris
564 564
         package)
565 565
 
566
-5) Register with the server using your favorite
567
-   SIP User Agent. You may want to look at configuration
568
-   hints for use of iptel.org site at
566
+5) Connect SIP phones
567
+
568
+  Register with the server using your favorite SIP User Agent. You may want to look 
569
+  at configuration hints for use of various clients on iptel.org site at
569 570
      http://www.iptel.org/phpBB/viewforum.php?forum=1&8
570
-   For example, users of Windows Messenger need to set
571
-   in Tools->Options->Accounts the following values:
572
-     Sign-in Name: <username>@<your_server_address>
573
-     Advanced->Configure Settings (on)
574
-     Advanced->Server: <your_server_address>
575
-     Connect Using: UDP
576 571
 
572
+  In most cases, you need to set the following options:
577 573
 
574
+	Proxy server:	host name of your server
575
+	Domain:		the sip domain your server is configured to handle
576
+	User name:	the account name for your device
577
+	Auth user:	the ID used for authentication
578
+	Secret/Password:	The configured authentication password
578 579
 
579 580
 D) sip-router with Persistent Data Storage
581
+------------------------------------------
580 582
 
581
-The default configuration is very simple and features many simplifications. 
582
-In particular, it does not authenticate users and loses User Location database 
583
-on reboot. To provide persistence, keep user credentials and remember users' 
584
-locations across reboots, ser can be configured to use MySQL. Before you
585
-proceed, you need to make sure MySQL is installed on your box. Your
586
-MySQL server must be configured to deal with a large number of
587
-connection. To increase it, set the following line in [mysqld] section
588
-of your configuration file:
583
+  The default configuration is very simple and features many simplifications. 
584
+  In particular, it does not authenticate users and loses User Location database 
585
+  on reboot. To provide persistence, keep user credentials and remember users' 
586
+  locations across reboots, sip-router can be configured to use a database, like MySQL. 
587
+  Before you proceed, you need to make sure MySQL is installed on your box. Your
588
+  MySQL server must be configured to deal with a large number of
589
+  connection. To increase it, set the following line in [mysqld] section
590
+  of your my.ini configuration file:
589 591
 
590 592
    set-variable    = max_connections=500
591 593
 
... ...
@@ -598,6 +568,7 @@ of your configuration file:
598 598
      from the source).
599 599
 	For gentoo please include 'mysql' to your USE variable in /etc/make.conf
600 600
 	or give it as variable to the emerge command.
601
+
601 602
 2) install the package
602 603
     rpm -i <package_name>
603 604
     or
... ...
@@ -606,6 +577,7 @@ of your configuration file:
606 606
 	emerge sip-router
607 607
 	(if do not want to put 'mysql' into your USE variable you can type:
608 608
 	 USE="mysql" emerge sip-router)
609
+
609 610
 3) create MySQL tables
610 611
 	- if you have a previously installed SIP Router on your system, use
611 612
     	/usr/sbin/sip-router_mysql.sh reinstall 
... ...
@@ -614,6 +586,7 @@ of your configuration file:
614 614
     	/usr/sbin/sip-router_mysql.sh create
615 615
 	  to create SIP Router database structures
616 616
    (you will be prompted for password of MySql "root" user)
617
+
617 618
 4) configure sip-router to use SQL
618 619
     uncomment all lines in configuration file sip-router.cfg which are related to 
619 620
     authentication:
... ...
@@ -637,6 +610,7 @@ of your configuration file:
637 637
       }
638 638
 6) restart the server
639 639
     /etc/init.d/sip-router restart
640
+
640 641
 7) you can now start  managing the server using the serctl utility; 
641 642
    you need to first set the environment variable SIP_DOMAIN to your 
642 643
    local SIP realm, e.g.,