Browse code

registrar: docs updated with expire_range parameter

Daniel-Constantin Mierla authored on 21/02/2014 20:14:10
Showing 2 changed files
... ...
@@ -37,30 +37,31 @@ Bogdan-Andre Iancu
37 37
 
38 38
               3.1. default_expires (integer)
39 39
               3.2. default_expires_range (integer)
40
-              3.3. min_expires (integer)
41
-              3.4. max_expires (integer)
42
-              3.5. default_q (integer)
43
-              3.6. realm_prefix (string)
44
-              3.7. append_branches (integer)
45
-              3.8. aor_avp (str)
46
-              3.9. case_sensitive (integer)
47
-              3.10. received_avp (str)
48
-              3.11. received_param (string)
49
-              3.12. max_contacts (integer)
50
-              3.13. retry_after (integer)
51
-              3.14. sock_flag (integer)
52
-              3.15. sock_hdr_name (string)
53
-              3.16. method_filtering (integer)
54
-              3.17. use_path (integer)
55
-              3.18. path_mode (integer)
56
-              3.19. path_use_received (integer)
57
-              3.20. reg_callid_avp (string)
58
-              3.21. xavp_cfg (string)
59
-              3.22. xavp_rcd (string)
60
-              3.23. gruu_enabled (integer)
61
-              3.24. outbound_mode (integer)
62
-              3.25. regid_mode (integer)
63
-              3.26. flow_timer (integer)
40
+              3.3. expires_range (integer)
41
+              3.4. min_expires (integer)
42
+              3.5. max_expires (integer)
43
+              3.6. default_q (integer)
44
+              3.7. realm_prefix (string)
45
+              3.8. append_branches (integer)
46
+              3.9. aor_avp (str)
47
+              3.10. case_sensitive (integer)
48
+              3.11. received_avp (str)
49
+              3.12. received_param (string)
50
+              3.13. max_contacts (integer)
51
+              3.14. retry_after (integer)
52
+              3.15. sock_flag (integer)
53
+              3.16. sock_hdr_name (string)
54
+              3.17. method_filtering (integer)
55
+              3.18. use_path (integer)
56
+              3.19. path_mode (integer)
57
+              3.20. path_use_received (integer)
58
+              3.21. reg_callid_avp (string)
59
+              3.22. xavp_cfg (string)
60
+              3.23. xavp_rcd (string)
61
+              3.24. gruu_enabled (integer)
62
+              3.25. outbound_mode (integer)
63
+              3.26. regid_mode (integer)
64
+              3.27. flow_timer (integer)
64 65
 
65 66
         4. Functions
66 67
 
... ...
@@ -95,39 +96,40 @@ Bogdan-Andre Iancu
95 96
 
96 97
    1.1. Set default_expires parameter
97 98
    1.2. Set default_expires_range parameter
98
-   1.3. Set min_expires parameter
99
-   1.4. Set max_expires parameter
100
-   1.5. Set default_q parameter
101
-   1.6. Set realm_prefix parameter
102
-   1.7. Set append_branches parameter
103
-   1.8. Set case_sensitive parameter
104
-   1.9. Set received_avp parameter
105
-   1.10. Set received_param parameter
106
-   1.11. Set max_contacts parameter
107
-   1.12. Set retry_after parameter
108
-   1.13. Set sock_flag parameter
109
-   1.14. Set sock_hdr_namer parameter
110
-   1.15. Set method_filtering parameter
111
-   1.16. Set use_path parameter
112
-   1.17. Set path_mode parameter
113
-   1.18. Set path_use_received parameter
114
-   1.19. Set reg_callid_avp parameter
115
-   1.20. Set xavp_cfg parameter
116
-   1.21. Set xavp_rcd parameter
117
-   1.22. Set gruu_enabled parameter
118
-   1.23. Set outbound_mode parameter
119
-   1.24. Set regid_mode parameter
120
-   1.25. Set flow_timer parameter
121
-   1.26. save usage
122
-   1.27. lookup usage
123
-   1.28. lookup_branches usage
124
-   1.29. registered usage
125
-   1.30. add_sock_hdr usage
126
-   1.31. unregister usage
127
-   1.32. reg_fetch_contacts usage
128
-   1.33. reg_free_contacts usage
129
-   1.34. event_route[usrloc:contact-expired] usage
130
-   1.35. $ulc(name) usage
99
+   1.3. Set expires_range parameter
100
+   1.4. Set min_expires parameter
101
+   1.5. Set max_expires parameter
102
+   1.6. Set default_q parameter
103
+   1.7. Set realm_prefix parameter
104
+   1.8. Set append_branches parameter
105
+   1.9. Set case_sensitive parameter
106
+   1.10. Set received_avp parameter
107
+   1.11. Set received_param parameter
108
+   1.12. Set max_contacts parameter
109
+   1.13. Set retry_after parameter
110
+   1.14. Set sock_flag parameter
111
+   1.15. Set sock_hdr_namer parameter
112
+   1.16. Set method_filtering parameter
113
+   1.17. Set use_path parameter
114
+   1.18. Set path_mode parameter
115
+   1.19. Set path_use_received parameter
116
+   1.20. Set reg_callid_avp parameter
117
+   1.21. Set xavp_cfg parameter
118
+   1.22. Set xavp_rcd parameter
119
+   1.23. Set gruu_enabled parameter
120
+   1.24. Set outbound_mode parameter
121
+   1.25. Set regid_mode parameter
122
+   1.26. Set flow_timer parameter
123
+   1.27. save usage
124
+   1.28. lookup usage
125
+   1.29. lookup_branches usage
126
+   1.30. registered usage
127
+   1.31. add_sock_hdr usage
128
+   1.32. unregister usage
129
+   1.33. reg_fetch_contacts usage
130
+   1.34. reg_free_contacts usage
131
+   1.35. event_route[usrloc:contact-expired] usage
132
+   1.36. $ulc(name) usage
131 133
 
132 134
 Chapter 1. Admin Guide
133 135
 
... ...
@@ -147,30 +149,31 @@ Chapter 1. Admin Guide
147 149
 
148 150
         3.1. default_expires (integer)
149 151
         3.2. default_expires_range (integer)
150
-        3.3. min_expires (integer)
151
-        3.4. max_expires (integer)
152
-        3.5. default_q (integer)
153
-        3.6. realm_prefix (string)
154
-        3.7. append_branches (integer)
155
-        3.8. aor_avp (str)
156
-        3.9. case_sensitive (integer)
157
-        3.10. received_avp (str)
158
-        3.11. received_param (string)
159
-        3.12. max_contacts (integer)
160
-        3.13. retry_after (integer)
161
-        3.14. sock_flag (integer)
162
-        3.15. sock_hdr_name (string)
163
-        3.16. method_filtering (integer)
164
-        3.17. use_path (integer)
165
-        3.18. path_mode (integer)
166
-        3.19. path_use_received (integer)
167
-        3.20. reg_callid_avp (string)
168
-        3.21. xavp_cfg (string)
169
-        3.22. xavp_rcd (string)
170
-        3.23. gruu_enabled (integer)
171
-        3.24. outbound_mode (integer)
172
-        3.25. regid_mode (integer)
173
-        3.26. flow_timer (integer)
152
+        3.3. expires_range (integer)
153
+        3.4. min_expires (integer)
154
+        3.5. max_expires (integer)
155
+        3.6. default_q (integer)
156
+        3.7. realm_prefix (string)
157
+        3.8. append_branches (integer)
158
+        3.9. aor_avp (str)
159
+        3.10. case_sensitive (integer)
160
+        3.11. received_avp (str)
161
+        3.12. received_param (string)
162
+        3.13. max_contacts (integer)
163
+        3.14. retry_after (integer)
164
+        3.15. sock_flag (integer)
165
+        3.16. sock_hdr_name (string)
166
+        3.17. method_filtering (integer)
167
+        3.18. use_path (integer)
168
+        3.19. path_mode (integer)
169
+        3.20. path_use_received (integer)
170
+        3.21. reg_callid_avp (string)
171
+        3.22. xavp_cfg (string)
172
+        3.23. xavp_rcd (string)
173
+        3.24. gruu_enabled (integer)
174
+        3.25. outbound_mode (integer)
175
+        3.26. regid_mode (integer)
176
+        3.27. flow_timer (integer)
174 177
 
175 178
    4. Functions
176 179
 
... ...
@@ -267,30 +270,31 @@ Chapter 1. Admin Guide
267 270
 
268 271
    3.1. default_expires (integer)
269 272
    3.2. default_expires_range (integer)
270
-   3.3. min_expires (integer)
271
-   3.4. max_expires (integer)
272
-   3.5. default_q (integer)
273
-   3.6. realm_prefix (string)
274
-   3.7. append_branches (integer)
275
-   3.8. aor_avp (str)
276
-   3.9. case_sensitive (integer)
277
-   3.10. received_avp (str)
278
-   3.11. received_param (string)
279
-   3.12. max_contacts (integer)
280
-   3.13. retry_after (integer)
281
-   3.14. sock_flag (integer)
282
-   3.15. sock_hdr_name (string)
283
-   3.16. method_filtering (integer)
284
-   3.17. use_path (integer)
285
-   3.18. path_mode (integer)
286
-   3.19. path_use_received (integer)
287
-   3.20. reg_callid_avp (string)
288
-   3.21. xavp_cfg (string)
289
-   3.22. xavp_rcd (string)
290
-   3.23. gruu_enabled (integer)
291
-   3.24. outbound_mode (integer)
292
-   3.25. regid_mode (integer)
293
-   3.26. flow_timer (integer)
273
+   3.3. expires_range (integer)
274
+   3.4. min_expires (integer)
275
+   3.5. max_expires (integer)
276
+   3.6. default_q (integer)
277
+   3.7. realm_prefix (string)
278
+   3.8. append_branches (integer)
279
+   3.9. aor_avp (str)
280
+   3.10. case_sensitive (integer)
281
+   3.11. received_avp (str)
282
+   3.12. received_param (string)
283
+   3.13. max_contacts (integer)
284
+   3.14. retry_after (integer)
285
+   3.15. sock_flag (integer)
286
+   3.16. sock_hdr_name (string)
287
+   3.17. method_filtering (integer)
288
+   3.18. use_path (integer)
289
+   3.19. path_mode (integer)
290
+   3.20. path_use_received (integer)
291
+   3.21. reg_callid_avp (string)
292
+   3.22. xavp_cfg (string)
293
+   3.23. xavp_rcd (string)
294
+   3.24. gruu_enabled (integer)
295
+   3.25. outbound_mode (integer)
296
+   3.26. regid_mode (integer)
297
+   3.27. flow_timer (integer)
294 298
 
295 299
 3.1. default_expires (integer)
296 300
 
... ...
@@ -327,7 +331,22 @@ modparam("registrar", "default_expires", 1800)
327 331
 modparam("registrar", "default_expires_range", 30) # +- 30% from default_expires
328 332
 ...
329 333
 
330
-3.3. min_expires (integer)
334
+3.3. expires_range (integer)
335
+
336
+   Similar to default_expires_range, but it applies to the incoming
337
+   expires value and it only lowers the value. Default in 0, meaning the
338
+   expires is left unmodified. This parameter can be modified via config
339
+   framework.
340
+
341
+   Default value is 0.
342
+
343
+   Example 1.3. Set expires_range parameter
344
+...
345
+modparam("registrar", "expires_range", 30) # expires within [0.7*expires .. expi
346
+res]
347
+...
348
+
349
+3.4. min_expires (integer)
331 350
 
332 351
    The minimum expires value of a Contact, values lower than this minimum
333 352
    will be automatically set to the minimum. Value 0 disables the
... ...
@@ -335,12 +354,12 @@ modparam("registrar", "default_expires_range", 30) # +- 30% from default_expires
335 354
 
336 355
    Default value is 60.
337 356
 
338
-   Example 1.3. Set min_expires parameter
357
+   Example 1.4. Set min_expires parameter
339 358
 ...
340 359
 modparam("registrar", "min_expires", 60)
341 360
 ...
342 361
 
343
-3.4. max_expires (integer)
362
+3.5. max_expires (integer)
344 363
 
345 364
    The maximum expires value of a Contact, values higher than this maximum
346 365
    will be automatically set to the maximum. Value 0 disables the
... ...
@@ -348,12 +367,12 @@ modparam("registrar", "min_expires", 60)
348 367
 
349 368
    Default value is 0.
350 369
 
351
-   Example 1.4. Set max_expires parameter
370
+   Example 1.5. Set max_expires parameter
352 371
 ...
353 372
 modparam("registrar", "max_expires", 120)
354 373
 ...
355 374
 
356
-3.5. default_q (integer)
375
+3.6. default_q (integer)
357 376
 
358 377
    The parameter represents default q value for new contacts. Because
359 378
    Kamailio doesn't support float parameter types, the value in the
... ...
@@ -363,12 +382,12 @@ modparam("registrar", "max_expires", 120)
363 382
 
364 383
    Default value is 0.
365 384
 
366
-   Example 1.5. Set default_q parameter
385
+   Example 1.6. Set default_q parameter
367 386
 ...
368 387
 modparam("registrar", "default_q", 1000)
369 388
 ...
370 389
 
371
-3.6. realm_prefix (string)
390
+3.7. realm_prefix (string)
372 391
 
373 392
    Prefix to be automatically stripped from realm. As an alternative to
374 393
    SRV records (not all SIP clients support SRV lookup), a subdomain of
... ...
@@ -380,12 +399,12 @@ modparam("registrar", "default_q", 1000)
380 399
 
381 400
    Default value is NULL (none).
382 401
 
383
-   Example 1.6. Set realm_prefix parameter
402
+   Example 1.7. Set realm_prefix parameter
384 403
 ...
385 404
 modparam("registrar", "realm_prefix", "sip.")
386 405
 ...
387 406
 
388
-3.7. append_branches (integer)
407
+3.8. append_branches (integer)
389 408
 
390 409
    The parameter controls how lookup function processes multiple contacts.
391 410
    If there are multiple contacts for the given username in usrloc and
... ...
@@ -398,17 +417,17 @@ modparam("registrar", "realm_prefix", "sip.")
398 417
 
399 418
    Default value is 1.
400 419
 
401
-   Example 1.7. Set append_branches parameter
420
+   Example 1.8. Set append_branches parameter
402 421
 ...
403 422
 modparam("registrar", "append_branches", 0)
404 423
 ...
405 424
 
406
-3.8. aor_avp (str)
425
+3.9. aor_avp (str)
407 426
 
408 427
    This module parameter has been removed. Use the 'uri' parameter from
409 428
    functions (e.g., save, lookup, registered).
410 429
 
411
-3.9. case_sensitive (integer)
430
+3.10. case_sensitive (integer)
412 431
 
413 432
    If set to 1 then AOR comparison and also storing will be case
414 433
    sensitive, if set to 0 then AOR comparison and storing will be case
... ...
@@ -417,12 +436,12 @@ modparam("registrar", "append_branches", 0)
417 436
 
418 437
    Default value is 0.
419 438
 
420
-   Example 1.8. Set case_sensitive parameter
439
+   Example 1.9. Set case_sensitive parameter
421 440
 ...
422 441
 modparam("registrar", "case_sensitive", 1)
423 442
 ...
424 443
 
425
-3.10. received_avp (str)
444
+3.11. received_avp (str)
426 445
 
427 446
    Registrar will store the value of the AVP configured by this parameter
428 447
    in the received column in the user location database. It will leave the
... ...
@@ -437,12 +456,12 @@ Note
437 456
 
438 457
    Default value is "NULL" (disabled).
439 458
 
440
-   Example 1.9. Set received_avp parameter
459
+   Example 1.10. Set received_avp parameter
441 460
 ...
442 461
 modparam("registrar", "received_avp", "$avp(s:rcv)")
443 462
 ...
444 463
 
445
-3.11. received_param (string)
464
+3.12. received_param (string)
446 465
 
447 466
    The name of the parameter that will be appended to Contacts of 200 OK
448 467
    when the received URI was set by nathelper module. If the value is
... ...
@@ -450,12 +469,12 @@ modparam("registrar", "received_avp", "$avp(s:rcv)")
450 469
 
451 470
    Default value is "received".
452 471
 
453
-   Example 1.10. Set received_param parameter
472
+   Example 1.11. Set received_param parameter
454 473
 ...
455 474
 modparam("registrar", "received_param", "rcv")
456 475
 ...
457 476
 
458
-3.12. max_contacts (integer)
477
+3.13. max_contacts (integer)
459 478
 
460 479
    The parameter can be used to limit the number of contacts per AOR
461 480
    (Address of Record) in the user location database. Value 0 disables the
... ...
@@ -464,13 +483,13 @@ modparam("registrar", "received_param", "rcv")
464 483
 
465 484
    Default value is 0.
466 485
 
467
-   Example 1.11. Set max_contacts parameter
486
+   Example 1.12. Set max_contacts parameter
468 487
 ...
469 488
 # Allow no more than 10 contacts per AOR
470 489
 modparam("registrar", "max_contacts", 10)
471 490
 ...
472 491
 
473
-3.13. retry_after (integer)
492
+3.14. retry_after (integer)
474 493
 
475 494
    The registrar can generate 5xx reply to REGISTER in various situations.
476 495
    It can, for example, happen when the max_contacts parameter is set and
... ...
@@ -484,12 +503,12 @@ modparam("registrar", "max_contacts", 10)
484 503
 
485 504
    Default value is 0 (disabled).
486 505
 
487
-   Example 1.12. Set retry_after parameter
506
+   Example 1.13. Set retry_after parameter
488 507
 ...
489 508
 modparam("registrar", "retry_after", 30)
490 509
 ...
491 510
 
492
-3.14. sock_flag (integer)
511
+3.15. sock_flag (integer)
493 512
 
494 513
    Message flag to signal to register module to look into REGISTER request
495 514
    for a header which contains a socket description (IP:port). This socket
... ...
@@ -499,12 +518,12 @@ modparam("registrar", "retry_after", 30)
499 518
 
500 519
    Default value is -1 (no flag).
501 520
 
502
-   Example 1.13. Set sock_flag parameter
521
+   Example 1.14. Set sock_flag parameter
503 522
 ...
504 523
 modparam("registrar", "sock_flag", 18)
505 524
 ...
506 525
 
507
-3.15. sock_hdr_name (string)
526
+3.16. sock_hdr_name (string)
508 527
 
509 528
    Header which contains a socket description (proto:IP:port) to override
510 529
    the received socket info. The header will be read only if the flag
... ...
@@ -514,36 +533,36 @@ modparam("registrar", "sock_flag", 18)
514 533
 
515 534
    Default value is NULL.
516 535
 
517
-   Example 1.14. Set sock_hdr_namer parameter
536
+   Example 1.15. Set sock_hdr_namer parameter
518 537
 ...
519 538
 modparam("registrar", "sock_hdr_name", "Sock-Info")
520 539
 ...
521 540
 
522
-3.16. method_filtering (integer)
541
+3.17. method_filtering (integer)
523 542
 
524 543
    Tells if the contact filtering based on supported methods should be
525 544
    performed during lookup. It's enabled only if it has a non zero value.
526 545
 
527 546
    Default value is 0 (disabled).
528 547
 
529
-   Example 1.15. Set method_filtering parameter
548
+   Example 1.16. Set method_filtering parameter
530 549
 ...
531 550
 modparam("registrar", "method_filtering", 1)
532 551
 ...
533 552
 
534
-3.17. use_path (integer)
553
+3.18. use_path (integer)
535 554
 
536 555
    If set to 1, the Path header is handled according to the parameter This
537 556
    parameter can be modified via ser config framework. "path_mode".
538 557
 
539 558
    Default value is 0 (disabled).
540 559
 
541
-   Example 1.16. Set use_path parameter
560
+   Example 1.17. Set use_path parameter
542 561
 ...
543 562
 modparam("registrar", "use_path", 1)
544 563
 ...
545 564
 
546
-3.18. path_mode (integer)
565
+3.19. path_mode (integer)
547 566
 
548 567
    The registrar module implements three different modes regarding the
549 568
    response to a registration which includes one or more Path headers:
... ...
@@ -561,12 +580,12 @@ modparam("registrar", "use_path", 1)
561 580
 
562 581
    Default value is 2.
563 582
 
564
-   Example 1.17. Set path_mode parameter
583
+   Example 1.18. Set path_mode parameter
565 584
 ...
566 585
 modparam("registrar", "path_mode", 0)
567 586
 ...
568 587
 
569
-3.19. path_use_received (integer)
588
+3.20. path_use_received (integer)
570 589
 
571 590
    If set to 1, the "received" parameter of the first Path URI of a
572 591
    registration is set as received-uri and the NAT branch flag is set for
... ...
@@ -576,12 +595,12 @@ modparam("registrar", "path_mode", 0)
576 595
 
577 596
    Default value is 0 (disabled).
578 597
 
579
-   Example 1.18. Set path_use_received parameter
598
+   Example 1.19. Set path_use_received parameter
580 599
 ...
581 600
 modparam("registrar", "path_use_received", 1)
582 601
 ...
583 602
 
584
-3.20. reg_callid_avp (string)
603
+3.21. reg_callid_avp (string)
585 604
 
586 605
    If reg_callid_avp is defined and populated when registered() is
587 606
    invoked, the result is TRUE only if an active registration with the
... ...
@@ -589,12 +608,12 @@ modparam("registrar", "path_use_received", 1)
589 608
 
590 609
    Default value is NULL (disabled).
591 610
 
592
-   Example 1.19. Set reg_callid_avp parameter
611
+   Example 1.20. Set reg_callid_avp parameter
593 612
 ...
594 613
 modparam("registrar", "reg_callid_avp", "$avp(s:avp)")
595 614
 ...
596 615
 
597
-3.21. xavp_cfg (string)
616
+3.22. xavp_cfg (string)
598 617
 
599 618
    Defines the name of XAVP class to store runtime module config values.
600 619
    The values are stored as inner XAVPs, like $xavp(class=>attribute).
... ...
@@ -608,12 +627,12 @@ modparam("registrar", "reg_callid_avp", "$avp(s:avp)")
608 627
 
609 628
    Default value is NULL (disabled).
610 629
 
611
-   Example 1.20. Set xavp_cfg parameter
630
+   Example 1.21. Set xavp_cfg parameter
612 631
 ...
613 632
 modparam("registrar", "xavp_cfg", "reg")
614 633
 ...
615 634
 
616
-3.22. xavp_rcd (string)
635
+3.23. xavp_rcd (string)
617 636
 
618 637
    Defines the name of XAVP class to store details from the location
619 638
    records. The values are stored as inner XAVPs, like
... ...
@@ -625,12 +644,12 @@ modparam("registrar", "xavp_cfg", "reg")
625 644
 
626 645
    Default value is NULL (disabled).
627 646
 
628
-   Example 1.21. Set xavp_rcd parameter
647
+   Example 1.22. Set xavp_rcd parameter
629 648
 ...
630 649
 modparam("registrar", "xavp_rcd", "ulrcd")
631 650
 ...
632 651
 
633
-3.23. gruu_enabled (integer)
652
+3.24. gruu_enabled (integer)
634 653
 
635 654
    If set to 1 and GRUU "+sip.instance" parameter to Contact header of
636 655
    REGISTER is present, then the value of the parameter is saved to
... ...
@@ -640,12 +659,12 @@ modparam("registrar", "xavp_rcd", "ulrcd")
640 659
 
641 660
    Default value is 1 (enabled).
642 661
 
643
-   Example 1.22. Set gruu_enabled parameter
662
+   Example 1.23. Set gruu_enabled parameter
644 663
 ...
645 664
 modparam("registrar", "gruu_enabled", 0)
646 665
 ...
647 666
 
648
-3.24. outbound_mode (integer)
667
+3.25. outbound_mode (integer)
649 668
 
650 669
    If set to 0 this module will accept REGISTER requests that do not
651 670
    contain a Supported: header with the outbound options-tag. The 200 OK
... ...
@@ -667,12 +686,12 @@ modparam("registrar", "gruu_enabled", 0)
667 686
 
668 687
    Default value is 0.
669 688
 
670
-   Example 1.23. Set outbound_mode parameter
689
+   Example 1.24. Set outbound_mode parameter
671 690
 ...
672 691
 modparam("registrar", "outbound_mode", 2)
673 692
 ...
674 693
 
675
-3.25. regid_mode (integer)
694
+3.26. regid_mode (integer)
676 695
 
677 696
    If set to 0 this module will ignore regid contact param when saving
678 697
    REGISTER request if REGISTER request does not indicate support for
... ...
@@ -684,12 +703,12 @@ modparam("registrar", "outbound_mode", 2)
684 703
 
685 704
    Default value is 0.
686 705
 
687
-   Example 1.24. Set regid_mode parameter
706
+   Example 1.25. Set regid_mode parameter
688 707
 ...
689 708
 modparam("registrar", "regid_mode", 1)
690 709
 ...
691 710
 
692
-3.26. flow_timer (integer)
711
+3.27. flow_timer (integer)
693 712
 
694 713
    If set to 0 then this module will not add a Flow-Timer: header to 200
695 714
    OK responses to REGISTER requests.
... ...
@@ -710,7 +729,7 @@ modparam("registrar", "regid_mode", 1)
710 729
 
711 730
    Default value is 0.
712 731
 
713
-   Example 1.25. Set flow_timer parameter
732
+   Example 1.26. Set flow_timer parameter
714 733
 ...
715 734
 modparam("registrar", "flow_timer", 25)
716 735
 ...
... ...
@@ -764,7 +783,7 @@ modparam("registrar", "flow_timer", 25)
764 783
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE and
765 784
    REPLY_ROUTE.
766 785
 
767
-   Example 1.26. save usage
786
+   Example 1.27. save usage
768 787
 ...
769 788
 save("location");
770 789
 save("location", "0x01");
... ...
@@ -797,7 +816,7 @@ save("location", "0x00", "sip:test@kamailio.org");
797 816
 
798 817
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE.
799 818
 
800
-   Example 1.27. lookup usage
819
+   Example 1.28. lookup usage
801 820
 ...
802 821
 lookup("location");
803 822
 switch ($retcode) {
... ...
@@ -823,7 +842,7 @@ switch ($retcode) {
823 842
 
824 843
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE.
825 844
 
826
-   Example 1.28. lookup_branches usage
845
+   Example 1.29. lookup_branches usage
827 846
 ...
828 847
 lookup_branches("location");
829 848
 ...
... ...
@@ -842,7 +861,7 @@ lookup_branches("location");
842 861
 
843 862
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE.
844 863
 
845
-   Example 1.29. registered usage
864
+   Example 1.30. registered usage
846 865
 ...
847 866
 if (registered("location")) {
848 867
         sl_send_reply("100", "Trying");
... ...
@@ -862,7 +881,7 @@ if (registered("location")) {
862 881
 
863 882
    This function can be used from REQUEST_ROUTE.
864 883
 
865
-   Example 1.30. add_sock_hdr usage
884
+   Example 1.31. add_sock_hdr usage
866 885
 ...
867 886
 add_sock_hdr("Sock-Info");
868 887
 ...
... ...
@@ -885,7 +904,7 @@ add_sock_hdr("Sock-Info");
885 904
 
886 905
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE.
887 906
 
888
-   Example 1.31. unregister usage
907
+   Example 1.32. unregister usage
889 908
 ...
890 909
 unregister("location", "$ru");
891 910
 unregister("location", "sip:user@kamailio.org");
... ...
@@ -909,7 +928,7 @@ unregister("location", "", "$ruid");
909 928
 
910 929
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE.
911 930
 
912
-   Example 1.32. reg_fetch_contacts usage
931
+   Example 1.33. reg_fetch_contacts usage
913 932
 ...
914 933
 reg_fetch_contacts("location", "$ru", "callee");
915 934
 reg_fetch_contacts("location", "sip:user@kamailio.org", "caller");
... ...
@@ -928,7 +947,7 @@ reg_fetch_contacts("location", "sip:user@kamailio.org", "caller");
928 947
 
929 948
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE.
930 949
 
931
-   Example 1.33. reg_free_contacts usage
950
+   Example 1.34. reg_free_contacts usage
932 951
 ...
933 952
 reg_free_contacts("callee");
934 953
 ...
... ...
@@ -942,7 +961,7 @@ reg_free_contacts("callee");
942 961
    Executed when a contact in location table has expired. The variable
943 962
    $ulc(exp=>...) is filled with the attributes of the expired contact.
944 963
 
945
-   Example 1.34. event_route[usrloc:contact-expired] usage
964
+   Example 1.35. event_route[usrloc:contact-expired] usage
946 965
 ...
947 966
 event_route[usrloc:contact-expired] {
948 967
     xlog("expired contact for $ulc(exp->aor)\n");
... ...
@@ -1014,7 +1033,7 @@ event_route[usrloc:contact-expired] {
1014 1033
    The pseudo-variable accepts positive index value to access a specific
1015 1034
    contact record.
1016 1035
 
1017
-   Example 1.35. $ulc(name) usage
1036
+   Example 1.36. $ulc(name) usage
1018 1037
 ...
1019 1038
 if(reg_fetch_contacts("location", "$fu", "caller"))
1020 1039
 {
... ...
@@ -153,7 +153,7 @@ modparam("registrar", "default_expires", 1800)
153 153
 </programlisting>
154 154
 		</example>
155 155
 	</section>
156
-		<section>
156
+	<section>
157 157
 		<title><varname>default_expires_range</varname> (integer)</title>
158 158
 		<para>
159 159
 		This parameter specifies that the expiry used for newly created usrloc records
... ...
@@ -177,7 +177,27 @@ modparam("registrar", "default_expires_range", 30) # +- 30% from default_expires
177 177
 </programlisting>
178 178
 		</example>
179 179
 	</section>
180
-	
180
+	<section>
181
+		<title><varname>expires_range</varname> (integer)</title>
182
+		<para>
183
+		Similar to default_expires_range, but it applies to the incoming expires
184
+		value and it only lowers the value. Default in 0, meaning the expires
185
+		is left unmodified. This parameter can be modified via config framework.
186
+		</para>
187
+		<para>
188
+		<emphasis>
189
+			Default value is 0.
190
+		</emphasis>
191
+		</para>
192
+		<example>
193
+		<title>Set <varname>expires_range</varname> parameter</title>
194
+		<programlisting format="linespecific">
195
+...
196
+modparam("registrar", "expires_range", 30) # expires within [0.7*expires .. expires]
197
+...
198
+</programlisting>
199
+		</example>
200
+	</section>
181 201
 
182 202
 	<section>
183 203
 		<title><varname>min_expires</varname> (integer)</title>