From 290655cf3f3faef87143aba4ea00f7167efcb1b5 Mon Sep 17 00:00:00 2001 From: rgagnon24 Date: Mon, 23 Mar 2015 22:33:30 +0000 Subject: [PATCH 1/7] Modernize the CSS for documentation as well as match the style of main opensips.org website Update rtpproxy documentation to replace has_sdp() examples with has_body("application/sdp") Update rtpengine documentation to elaborate on where to use rtpengine_delete() --- doc/module-docbook.css | 462 +++++++++++++--------- modules/rtpengine/doc/rtpengine.xml | 37 +- modules/rtpengine/doc/rtpengine_admin.xml | 41 +- modules/rtpproxy/doc/rtpproxy.xml | 17 +- modules/rtpproxy/doc/rtpproxy_admin.xml | 8 +- 5 files changed, 335 insertions(+), 230 deletions(-) diff --git a/doc/module-docbook.css b/doc/module-docbook.css index dc8d37d3850..4e161de10ba 100644 --- a/doc/module-docbook.css +++ b/doc/module-docbook.css @@ -1,268 +1,346 @@ -BODY { - padding: 20px; - margin: 5px 50px 5px 50px; - background: #ffffff; - color: #000000; - width: 700px; - border: solid 2px #888888; - font-family: Helvetica,Arial; +html { + font-family: Arial,Helvetica,sans-serif; + font-size: 14px; } -P { - font-family: Helvetica,Arial; - font-size: 12; - text-align: justify; +body { + padding: 20px; + margin: 0px auto; + width: 80%; + /* margin: 5px 50px 5px 50px auto; */ + background: #fff; + color: #666; } -P.C2 { - COLOR: #ffffff ; - BACKGROUND-color: #a0a0d0; - BORDER: solid 1px #606090; - PADDING: 1px +p.c2 { + color: #fff; + background-color: #a0a0d0; + border: solid 1px #606090; + padding: 1px } -A { - color: #041fc5; - text-decoration: none; +a { + color: #041fc5; + text-decoration: none; } -A:hover { - color: #990000; - text-decoration: underline; +a:hover { + color: #185662; + text-decoration: underline; } -DIV.ABSTRACT { - border: solid 2px; - padding-left: 10pt; - padding-right: 10pt; +div.abstract { + border: solid 2px; + padding-left: 10pt; + padding-right: 10pt; } -PRE.SCREEN { - font-family:monospace; - white-space: pre; - background-color: #fefeee; - border:solid; - color: #000000; - border-color: #99CCCC; - border-left: solid #99CCCC 1px; - border-right: solid #99CCCC 1px; - border-top: solid #99CCCC 1px; - border-bottom: solid #99CCCC 1px; - padding-left: 15pt; + +pre.screen { + font-family:monospace; + white-space: pre; + background-color: #fefeee; + border: 1px solid #99cccc; + color: #000; + padding-left: 15px; +} + +pre.programlisting { + font-family: monospace; + white-space: pre; + background-color: #eee; + border: 1px solid #bfbfbf; + color: #000; + padding: 7px 15 7px 15px; + -moz-border-radius: 7px; + border-radius: 7px; +} + +h1 { + margin: 5px 0 0; + font-variant: small-caps; + font-size: 24px; + padding: 5px; + text-align: center; + color: #fff; + text-shadow: 0.1em 0.1em 0.2em #000; + -moz-border-radius: 7px; + border-radius: 7px; + background: -moz-linear-gradient(top, #528c5a, #c3d7bc); + background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#528c5a), to(#c3d7bc)): + background: -webkit-linear-gradient(top, #528c5a, #c3d7bc); + background: -ms-linear-gradient(top, #528c5a, #c3d7bc); + background: -o-linear-gradient(top, #528c5a, #c3d7bc); +} + +.title a { + color: #000; + text-decoration: none; +} + +.title a:active { + text-decoration: none; +} + +.title a:visited { + text-decoration: none; +} + +.title a:hover { + text-decoration: underline; +} + +h2 { + color: #185662; + padding: 3px 10px 3px 10px; + -moz-border-radius: 7px; + border-radius: 7px; + background: -moz-linear-gradient(top, #528c5a, #c3d7bc); + background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#528c5a), to(#c3d7bc)): + background: -webkit-linear-gradient(top, #528c5a, #c3d7bc); + background: -ms-linear-gradient(top, #528c5a, #c3d7bc); + background: -o-linear-gradient(top, #528c5a, #c3d7bc); } -PRE.PROGRAMLISTING { - font-family:monospace; - white-space: pre; - background-color: #fefeee; - border:solid; - color: #000000; - border-color: #99CCCC; - border-left: solid #99CCCC 1px; - border-right: solid #99CCCC 1px; - border-top: solid #99CCCC 1px; - border-bottom: solid #99CCCC 1px; - padding-left: 15pt; +h2 a { + color: #000; + text-decoration: none; } -H1 { - color: #000000; - border: solid 2px #a0a0a0; - background-color: #DCDCDC; - font-variant: small-caps; - font-size: 16; - padding-left: 5px; +h2 a:active { + color: #000; + text-decoration: none; } -.TITLE a { - color: #000000; - text-decoration: none; +h2 a:visited { + color: #000; + text-decoration: none; } -.TITLE a:active { - color: #000000; - text-decoration: none; +h2 a:hover { + color: #000; + text-decoration: none; } -.TITLE a:visited { - color: #000000; - text-decoration: none; +h3.title { + color: #185662; + font-style: italic; + font-weight: bold; } -H2 { - COLOR: #000000 ; - font-style: italic; - border: solid 1px #b0b0b0; - background-color: #ECECEC; - padding-left: 5px; - font-family: Helvetica,Arial; - font-weight: bold; - font-size: 14; +div.section { + margin-left: 10px; } -H2 a { - color: #000000; - text-decoration: none; +h3 a { + color: #000; + text-decoration: none; } -H2 a:active { - color: #000000; - text-decoration: none; +h3 a:active { + color: #000; + text-decoration: none; } -H2 a:visited { - color: #000000; - text-decoration: none; +h3 a:visited { + color: #000; + text-decoration: none; } -H2 a:hover { - color: #000000; - text-decoration: none; +h3 a:hover { + color: #000; + text-decoration: none; } -H3.SECTION { - COLOR: #000000 ; - font-style: italic; - border: solid 1px #c0c0c0; - background-color: #F2F2F2; - padding-left: 5px; - font-family: Helvetica,Arial; - font-weight: bold; - font-size: 13; +h3.author { + color: #185662; + font-weight: bold; } -H3 a { - color: #000000; - text-decoration: none; +h3.editor { + font-weight: bold; + font-style: italic; + font-size: 11px; + margin: 0 0 0 20px; } -H3 a:active { - color: #000000; - text-decoration: none; +div.affiliation,code.email { + margin-left: 20px; } -H3 a:visited { - color: #000000; - text-decoration: none; +h4 { + font-weight: bold; } -H3 a:hover { - color: #000000; - text-decoration: none; +h4.editedby { + color: #185662; } -H3.AUTHOR { - font-family: Helvetica,Arial; - font-weight: bold; - font-size: 13; +table { + border: none; + border-spacing: 0; } -H3.EDITOR { - font-family: Helvetica,Arial; - font-weight: bold; - font-style: italic; - font-size: 11; +table.important { + font-style: italic; + border: solid 2px #ff0000; + width: 70%; + margin-left: 15%; } -H4 { - font-family: Helvetica,Arial; - font-weight: bold; - font-size: 12; +table.caution { + font-style: italic; + border: ridge 2px #ffff00; + width: 70%; + margin-left: 15%; } -TABLE.IMPORTANT { - font-style:italic; - border: solid 2px #ff0000; - width: 70%; - margin-left: 15%; +table.note { + font-style: italic; + border: solid 1px #000; + width: 70%; + margin-left: 15%; } -TABLE.CAUTION { - font-style:italic; - border: ridge 2px #ffff00; - width: 70%; - margin-left: 15%; +table.tip { + font-style: italic; + border: solid 1px #000; + width: 70%; + margin-left: 15%; } -TABLE.NOTE { - font-style:italic; - border: solid 1px #000000; - width: 70%; - margin-left: 15%; +table.warning { + font-style: italic; + font-weight: bold; + border: ridge 4px #ff0000; + width: 70%; + margin-left: 15%; } -TABLE.TIP { - font-style:italic; - border: solid 1px #000000; - width: 70%; - margin-left: 15%; +div.variablelist { + font-family: sans-serif; + font-style: normal; + font-weight: normal; + padding-left: 20px; } -TABLE.WARNING { - font-style:italic; - font-weight: bold; - border: ridge 4px #ff0000; - width: 70%; - margin-left: 15%; +.varlistempty { + font-weight: bold; + margin-top: 10px; + color: #fff; + background-color: #a0a0d0; + border: solid 1px #606090; + padding: 1px } -DIV.VARIABLELIST { - font-family: sans-serif; - font-style: normal; - font-weight: normal; - padding-left: 20px; +div.navfooter { + color: #000; + background-color: #efeff8; + padding: 5px; + margin-top: 10px; + width: 100%; + border: thin solid #a0a0d0; } -.VARLISTENTRY { - font-weight: bold; - margin-top: 10px; - COLOR: #ffffff ; - BACKGROUND-color: #a0a0d0; - BORDER: solid 1px #606090; - PADDING: 1px +div.nukefooter { + color: #000; + background-color: #B0E0E6; + padding: 5px; + margin-top: 10px; + width: 100%; + border: thin solid #a0a0d0; } -DIV.NAVFOOTER { - color: #000000; - background-color: #EFEFF8; - padding: 5px; - margin-top: 10px; - width: 100%; - border: thin solid #a0a0d0; +div.navheader { + color: #000; + background-color: #efeff8; + padding: 5px; + margin-bottom: 10px; + width: 100%; + border: thin solid #a0a0d0; } -DIV.NUKEFOOTER { - color: #000000; - background-color: #B0E0E6; - padding: 5px; - margin-top: 10px; - width: 100%; - border: thin solid #a0a0d0; +div.sect1,div.sect2,div.sect3 { + margin-left: 20px; } -DIV.NAVHEADER { - color: #000000; - background-color: #EFEFF8; - padding: 5px; - margin-bottom: 10px; - width: 100%; - border: thin solid #a0a0d0; +div.example,div.toc { + color: #185662; + border: 1px solid #bfbfbf; + padding: 15px 20px; + background-color: #e7f7df; + -moz-border-radius: 20px; + border-radius: 20px; } -DIV.SECT1,DIV.SECT2,DIV.SECT3 { - margin-left: 20px; +div.toc { + margin-left: 20px; + margin-right: 20px; } -DIV.EXAMPLE,DIV.TOC { - border: thin dotted #70AAE5; - padding-left: 10px; - padding-right: 10px; - color: #000000; - background-color: #EFF8F8; +p.copyright { + margin: 0 0 3px 0; } -DIV.TOC { - margin-left: 20px; - margin-right: 20px; +div.authorgroup { + margin: 0 0 10px 0; } +hr { + width: 80%; + margin-top: 20px; + margin-right: auto; + margin-left: auto; + margin-bottom: 20px; +} +span.emphasis { + font-style: italic; + font-weight: bold; +} + +td,th { + padding: 3px; + border: none; + vertical-align: text-top; + font-style: italic; + font-weight: bold; + font-size: 16px; +} + +th { + font-style: normal; + color: #185662; +} + +tr.answer td { + font-weight: normal; + font-size: 14px; +} + +div.list-of-examples { + color: #185662; +} + +div.warning { + padding-left: 9px; + padding-right: 9px; + border: 1px solid #c09853; + background-color: #fcf8e3; + -moz-border-radius: 7px; + border-radius: 7px; + margin-right: 5px; +} + +div.note { + padding-left: 9px; + padding-right: 9px; + border: 1px solid #3a87ad; + background-color: #d9edf7; + -moz-border-radius: 7px; + border-radius: 7px; +} + +div.revhistory { + padding-top: 15px; + width: 50%; +} diff --git a/modules/rtpengine/doc/rtpengine.xml b/modules/rtpengine/doc/rtpengine.xml index 30ef34a31db..74a75ac8f77 100644 --- a/modules/rtpengine/doc/rtpengine.xml +++ b/modules/rtpengine/doc/rtpengine.xml @@ -21,61 +21,50 @@ Maxim Sobolev Sippy Software, Inc. -
- sobomax@sippysoft.com -
+ sobomax@sippysoft.com Juha Heinanen TuTPro, Inc. -
- jh@tutpro.com -
+ jh@tutpro.com
Maxim Sobolev -
- sobomax@sippysoft.com -
+ sobomax@sippysoft.com
Bogdan-Andrei Iancu -
- bogdan@voice-system.ro -
+ bogdan@voice-system.ro
Juha Heinanen -
- jh@tutpro.com -
+ jh@tutpro.com
Sas Ovidiu -
- osas@voipembedded.com -
+ osas@voipembedded.com
Carsten Bock ng-voice GmbH -
- carsten@ng-voice.com -
+ carsten@ng-voice.com
Richard Fuchs Sipwise GmbH -
- rfuchs@sipwise.com -
+ rfuchs@sipwise.com +
+ + Robert + Gagnon + Telepoint Global Hosting Services, LLC diff --git a/modules/rtpengine/doc/rtpengine_admin.xml b/modules/rtpengine/doc/rtpengine_admin.xml index ee9e3a8df27..6467f959cda 100644 --- a/modules/rtpengine/doc/rtpengine_admin.xml +++ b/modules/rtpengine/doc/rtpengine_admin.xml @@ -376,6 +376,8 @@ rtpengine_offer(); symmetric - flags that for the UA from which message is received, support symmetric RTP must be forced. + (This option was made obsolete in RTPEngine sometime around mr3.3.x, and + does not exist in newer versions at all). repacketize=NN - requests the &rtp; proxy to perform @@ -540,7 +542,44 @@ onreply_route[2] <function>rtpengine_delete</function> usage ... -rtpengine_delete(); +# +# Loose route section of main route example +# +if (has_totag()) { + if (loose_route()) { + if (is_method("INVITE")) { + record_route(); + } + + if (is_method("CANCEL|BYE")) { + # + # Grab statistics BEFORE deleting RTP + # + append_hf("x-rtp-statistics: $rtpstat\r\n"); + # + # Release RTPEngine resources + # + rtpengine_delete(); + } + + route(relay); + } else { + if (is_method("ACK")) { + if (has_body("application/sdp")) { + rtpengine_answer(); + } + + if (t_check_trans()) { + t_relay(); + exit; + } else { + exit; + } + } + sl_send_reply("404", "Not Found"); + } + exit; +} ... diff --git a/modules/rtpproxy/doc/rtpproxy.xml b/modules/rtpproxy/doc/rtpproxy.xml index 7780100973d..666c0e93bf8 100644 --- a/modules/rtpproxy/doc/rtpproxy.xml +++ b/modules/rtpproxy/doc/rtpproxy.xml @@ -21,23 +21,22 @@ Maxim Sobolev Sippy Software, Inc. -
- sobomax@sippysoft.com -
+ sobomax@sippysoft.com Maxim Sobolev -
- sobomax@sippysoft.com -
+ sobomax@sippysoft.com
Bogdan-Andrei Iancu -
- bogdan@opensips.org -
+ bogdan@opensips.org +
+ + Robert + Gagnon + Telepoint Global Hosting Services, LLC diff --git a/modules/rtpproxy/doc/rtpproxy_admin.xml b/modules/rtpproxy/doc/rtpproxy_admin.xml index f0811412bed..9a4dc35ee43 100644 --- a/modules/rtpproxy/doc/rtpproxy_admin.xml +++ b/modules/rtpproxy/doc/rtpproxy_admin.xml @@ -602,14 +602,14 @@ if (is_method("INVITE") && has_totag()) { route { ... if (is_method("INVITE")) { - if (has_sdp()) { + if (has_body("application/sdp")) { if (rtpproxy_offer()) t_on_reply("1"); } else { t_on_reply("2"); } } - if (is_method("ACK") && has_sdp()) + if (is_method("ACK") && has_body("application/sdp")) rtpproxy_answer(); ... } @@ -617,7 +617,7 @@ route { onreply_route[1] { ... - if (has_sdp()) + if (has_body("application/sdp")) rtpproxy_answer(); ... } @@ -625,7 +625,7 @@ onreply_route[1] onreply_route[2] { ... - if (has_sdp()) + if (has_body("application/sdp")) rtpproxy_offer(); ... } From e295e75aa2199fbca567d06990594ff3d3d2523a Mon Sep 17 00:00:00 2001 From: rgagnon24 Date: Mon, 23 Mar 2015 22:46:02 +0000 Subject: [PATCH 2/7] Add README for updated documentation --- modules/rtpengine/README | 64 ++++++++++++++++++++++++++++++++++++++-- modules/rtpproxy/README | 63 +++++++++++++++++++++++---------------- 2 files changed, 98 insertions(+), 29 deletions(-) diff --git a/modules/rtpengine/README b/modules/rtpengine/README index 0da096c4979..6a66bec6d89 100644 --- a/modules/rtpengine/README +++ b/modules/rtpengine/README @@ -3,38 +3,56 @@ rtpengine Module Maxim Sobolev Sippy Software, Inc. + Juha Heinanen TuTPro, Inc. + Edited by Maxim Sobolev + + Edited by Bogdan-Andrei Iancu + + Edited by Juha Heinanen + + Edited by Sas Ovidiu + + Edited by Carsten Bock ng-voice GmbH + Edited by Richard Fuchs Sipwise GmbH + + +Edited by + +Robert Gagnon + + Telepoint Global Hosting Services, LLC Copyright © 2003-2008 Sippy Software, Inc. @@ -374,6 +392,9 @@ rtpengine_offer(); description also includes connection information. + symmetric - flags that for the UA from which message is received, support symmetric RTP must be forced. + (This option was made obsolete in RTPEngine sometime + around mr3.3.x, and does not exist in newer versions + at all). + repacketize=NN - requests the RTP proxy to perform re-packetization of RTP traffic coming from the UA which has sent the current message to increase or @@ -503,7 +524,44 @@ onreply_route[2] Example 1.10. rtpengine_delete usage ... -rtpengine_delete(); +# +# Loose route section of main route example +# +if (has_totag()) { + if (loose_route()) { + if (is_method("INVITE")) { + record_route(); + } + + if (is_method("CANCEL|BYE")) { + # + # Grab statistics BEFORE deleting RTP + # + append_hf("x-rtp-statistics: $rtpstat\r\n"); + # + # Release RTPEngine resources + # + rtpengine_delete(); + } + + route(relay); + } else { + if (is_method("ACK")) { + if (has_body("application/sdp")) { + rtpengine_answer(); + } + + if (t_check_trans()) { + t_relay(); + exit; + } else { + exit; + } + } + sl_send_reply("404", "Not Found"); + } + exit; +} ... 1.5.5. rtpengine_manage([flags]) @@ -621,8 +679,8 @@ Chapter 2. Frequently Asked Questions For example, if you had a call “rtpproxy_offer("FRWOC+PS");”, this would then become: -rtpengine_offer("force trust-address symmetric replace-origin replace-se -ssion-connection ICE=force RTP/SAVPF"); +rtpengine_offer("force trust-address symmetric replace-origin replace-s +ession-connection ICE=force RTP/SAVPF"); Finally, if you were using the second paramater (explicit media address) to any of these functions, this has been replaced by diff --git a/modules/rtpproxy/README b/modules/rtpproxy/README index 5528e84fdcc..2263e1aad8c 100644 --- a/modules/rtpproxy/README +++ b/modules/rtpproxy/README @@ -3,15 +3,26 @@ rtpproxy Module Maxim Sobolev Sippy Software, Inc. + Edited by Maxim Sobolev + + Edited by Bogdan-Andrei Iancu + + +Edited by + +Robert Gagnon + + Telepoint Global Hosting Services, LLC + Copyright © 2003-2008 Sippy Software, Inc. Copyright © 2005 Voice Sistem SRL @@ -499,14 +510,14 @@ sock_pvar]]]]) route { ... if (is_method("INVITE")) { - if (has_sdp()) { + if (has_body("application/sdp")) { if (rtpproxy_offer()) t_on_reply("1"); } else { t_on_reply("2"); } } - if (is_method("ACK") && has_sdp()) + if (is_method("ACK") && has_body("application/sdp")) rtpproxy_answer(); ... } @@ -514,7 +525,7 @@ route { onreply_route[1] { ... - if (has_sdp()) + if (has_body("application/sdp")) rtpproxy_answer(); ... } @@ -522,7 +533,7 @@ onreply_route[1] onreply_route[2] { ... - if (has_sdp()) + if (has_body("application/sdp")) rtpproxy_offer(); ... } @@ -606,8 +617,8 @@ sock_pvar]]) if (is_method("INVITE")) { rtpproxy_offer(); if ($rb=~ "0\.0\.0\.0") { - rtpproxy_stream2uas("/var/rtpproxy/prompts/music_on_hold", " --1"); + rtpproxy_stream2uas("/var/rtpproxy/prompts/music_on_hold", +"-1"); } else { rtpproxy_stop_stream2uas(); }; @@ -718,38 +729,38 @@ Chapter 2. Frequently Asked Questions 2.1. - What happend with “rtpproxy_disable” parameter? + What happend with “rtpproxy_disable” parameter? - It was removed as it became obsolete - now “rtpproxy_sock” can - take empty value to disable the rtpproxy functionality. + It was removed as it became obsolete - now “rtpproxy_sock” can + take empty value to disable the rtpproxy functionality. 2.2. - Where can I find more about OpenSIPS? + Where can I find more about OpenSIPS? - Take a look at http://www.opensips.org/. + Take a look at http://www.opensips.org/. 2.3. - Where can I post a question about this module? + Where can I post a question about this module? - First at all check if your question was already answered on one - of our mailing lists: - * User Mailing List - - http://lists.opensips.org/cgi-bin/mailman/listinfo/users - * Developer Mailing List - - http://lists.opensips.org/cgi-bin/mailman/listinfo/devel + First at all check if your question was already answered on one + of our mailing lists: + * User Mailing List - + http://lists.opensips.org/cgi-bin/mailman/listinfo/users + * Developer Mailing List - + http://lists.opensips.org/cgi-bin/mailman/listinfo/devel - E-mails regarding any stable OpenSIPS release should be sent to - and e-mails regarding development - versions should be sent to . + E-mails regarding any stable OpenSIPS release should be sent to + and e-mails regarding development + versions should be sent to . - If you want to keep the mail private, send it to - . + If you want to keep the mail private, send it to + . 2.4. - How can I report a bug? + How can I report a bug? - Please follow the guidelines provided at: - https://github.com/OpenSIPS/opensips/issues. + Please follow the guidelines provided at: + https://github.com/OpenSIPS/opensips/issues. From 0dac84b3f1a59b143be239ecd95f22707160811b Mon Sep 17 00:00:00 2001 From: rgagnon24 Date: Tue, 24 Mar 2015 00:29:02 +0000 Subject: [PATCH 3/7] Minor fix so email addresses outside the "authorgroup" do not pick up a left margin --- doc/module-docbook.css | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/module-docbook.css b/doc/module-docbook.css index 4e161de10ba..4966d5a0d6a 100644 --- a/doc/module-docbook.css +++ b/doc/module-docbook.css @@ -163,7 +163,7 @@ h3.editor { margin: 0 0 0 20px; } -div.affiliation,code.email { +div.affiliation,div.editor code.email,div.author code.email { margin-left: 20px; } From b68f2df00f6c7fb4ddfb83c19381ce212fc3586a Mon Sep 17 00:00:00 2001 From: rgagnon24 Date: Tue, 24 Mar 2015 20:48:11 +0000 Subject: [PATCH 4/7] Fix : to be ; where it should be Change font color to black Narrow the space around code samples --- doc/module-docbook.css | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/module-docbook.css b/doc/module-docbook.css index 4966d5a0d6a..966fa7b7d11 100644 --- a/doc/module-docbook.css +++ b/doc/module-docbook.css @@ -9,7 +9,7 @@ body { width: 80%; /* margin: 5px 50px 5px 50px auto; */ background: #fff; - color: #666; + color: #000; } p.c2 { @@ -66,7 +66,7 @@ h1 { -moz-border-radius: 7px; border-radius: 7px; background: -moz-linear-gradient(top, #528c5a, #c3d7bc); - background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#528c5a), to(#c3d7bc)): + background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#528c5a), to(#c3d7bc)); background: -webkit-linear-gradient(top, #528c5a, #c3d7bc); background: -ms-linear-gradient(top, #528c5a, #c3d7bc); background: -o-linear-gradient(top, #528c5a, #c3d7bc); @@ -95,7 +95,7 @@ h2 { -moz-border-radius: 7px; border-radius: 7px; background: -moz-linear-gradient(top, #528c5a, #c3d7bc); - background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#528c5a), to(#c3d7bc)): + background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#528c5a), to(#c3d7bc)); background: -webkit-linear-gradient(top, #528c5a, #c3d7bc); background: -ms-linear-gradient(top, #528c5a, #c3d7bc); background: -o-linear-gradient(top, #528c5a, #c3d7bc); @@ -266,7 +266,7 @@ div.sect1,div.sect2,div.sect3 { div.example,div.toc { color: #185662; border: 1px solid #bfbfbf; - padding: 15px 20px; + padding: 10px; background-color: #e7f7df; -moz-border-radius: 20px; border-radius: 20px; From 85e84dd37a4b3f2d50989316f000650ee3113ebc Mon Sep 17 00:00:00 2001 From: rgagnon24 Date: Thu, 26 Mar 2015 15:12:59 +0000 Subject: [PATCH 5/7] Fix typo of word "incoming" --- modules/imc/README | 2 +- modules/imc/doc/imc_admin.xml | 2 +- modules/sms/README | 2 +- modules/sms/doc/sms_admin.xml | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/modules/imc/README b/modules/imc/README index fc0a9d62aca..9ce9be9fd0c 100644 --- a/modules/imc/README +++ b/modules/imc/README @@ -135,7 +135,7 @@ modparam("imc", "rooms_table", "members") The power of 2 to get the size of the hash table used for storing members and rooms. - The default value is 4 (resultimg in hash size 16). + The default value is 4 (resulting in hash size 16). Example 1.4. Set hash_size parameter ... diff --git a/modules/imc/doc/imc_admin.xml b/modules/imc/doc/imc_admin.xml index afd6434200c..d315efb0737 100644 --- a/modules/imc/doc/imc_admin.xml +++ b/modules/imc/doc/imc_admin.xml @@ -127,7 +127,7 @@ modparam("imc", "rooms_table", "members")
- The default value is 4 (resultimg in hash size 16). + The default value is 4 (resulting in hash size 16). diff --git a/modules/sms/README b/modules/sms/README index 9e4c166aee7..5b4d2ad7acb 100644 --- a/modules/sms/README +++ b/modules/sms/README @@ -150,7 +150,7 @@ modem_param = name "=" value * r=retry (optional) - How many times to try to re-send a SMS that reported error. Default is twice. * l=looping (optional) - Time for modem to wait before - performing a new check for incomimg/outgoing SMS/SIP_MSG. + performing a new check for incoming/outgoing SMS/SIP_MSG. Default is 20. No default value, the parameter is mandatory. diff --git a/modules/sms/doc/sms_admin.xml b/modules/sms/doc/sms_admin.xml index 4a210f455e2..fed764addf8 100644 --- a/modules/sms/doc/sms_admin.xml +++ b/modules/sms/doc/sms_admin.xml @@ -163,7 +163,7 @@ modem_param = name "=" value l=looping (optional) - Time for modem to wait before performing a - new check for incomimg/outgoing SMS/SIP_MSG. + new check for incoming/outgoing SMS/SIP_MSG. Default is 20. From 091009123b3fb7b625ca4892134152c5ea00c95e Mon Sep 17 00:00:00 2001 From: rgagnon24 Date: Thu, 26 Mar 2015 18:26:14 +0000 Subject: [PATCH 6/7] Edit for typos and grammar --- modules/uac_redirect/README | 100 ++++++++++-------- modules/uac_redirect/doc/uac_redirect.xml | 13 +-- .../uac_redirect/doc/uac_redirect_admin.xml | 72 ++++++------- 3 files changed, 98 insertions(+), 87 deletions(-) diff --git a/modules/uac_redirect/README b/modules/uac_redirect/README index fc155b969a6..a1bdcf8c795 100644 --- a/modules/uac_redirect/README +++ b/modules/uac_redirect/README @@ -2,10 +2,20 @@ UAC_REDIRECT Module Bogdan-Andrei Iancu + + Edited by Bogdan-Andrei Iancu + + +Edited by + +Robert Gagnon + + Telepoint Global Hosting Services, LLC + Copyright © 2005 Voice Sistem Revision History Revision $Revision: 8740 $ $Date$ @@ -32,10 +42,10 @@ Bogdan-Andrei Iancu 1.5. Exported Functions - 1.5.1. set_deny_filter(filter,flags) - 1.5.2. set_accept_filter(filter,flags) + 1.5.1. set_deny_filter(filter, flag) + 1.5.2. set_accept_filter(filter, flag) 1.5.3. get_redirects(max) - 1.5.4. get_redirects(max,reason) + 1.5.4. get_redirects(max, reason) 1.6. Script Example @@ -56,21 +66,21 @@ Chapter 1. Admin Guide 1.1. Overview - UAC REDIRECT - User Agent Client redirection - module enhance + UAC REDIRECT - User Agent Client redirection - module enhances OpenSIPS with the functionality of being able to handle (interpret, filter, log and follow) redirect responses ( 3xx replies class). - UAC REDIRECT module offer stateful processing, gathering the + UAC REDIRECT module offers stateful processing, gathering the contacts from all 3xx branches of a call. - The module provide a powerful mechanism for selecting and + The module provides a powerful mechanism for selecting and filtering the contacts to be used for the new redirect: - * number based - limits like the number of total contacts to - be used or the maximum number of contacts per branch to be + * number based - limits, like the number of total contacts to + be used, or the maximum number of contacts per branch to be selected. * Regular Expression based - combinations of deny and accept - filters allow a strict control of the contacts to be used + filters allow or strict control of the contacts to be used for redirection. When selecting from a 3xx branch the contacts to be used, the @@ -79,7 +89,7 @@ Chapter 1. Admin Guide 1.2. Accounting - UAC REDIRECT module allows to log all the redirection (to be + UAC REDIRECT module allows logging of all redirection (to be later used for CDR aggregation). This functionality may be dynamically enabled for each redirection situation. @@ -127,14 +137,14 @@ modparam("uac_redirect","default_filter","deny") 1.4.2. deny_filter (string) - The regular expression for default deny filtering. It make sens - to be defined on only if the default_filter parameter is set to - “accept”. All contacts matching the deny_filter will be + The regular expression for default deny filtering. It makes + sense to be defined only if the default_filter parameter is set + to “accept”. All contacts matching the deny_filter will be rejected; the rest of them will be accepted for redirection. - The parameter may be defined only one - multiple definition + The parameter may be defined only once - multiple definitions will overwrite the previous definitions. If more regular - expression need to be defined, use the set_deny_filter() + expressions need to be defined, use the set_deny_filter() scripting function. This parameter is optional, it's default value being NULL. @@ -146,14 +156,14 @@ modparam("uac_redirect","deny_filter",".*@siphub\.net") 1.4.3. accept_filter (string) - The regular expression for default accept filtering. It make - sens to be defined on only if the default_filter parameter is - set to “deny”. All contacts matching the accept_filter will be + The regular expression for default accept filtering. It makes + sense to be defined only if the default_filter parameter is set + to “deny”. All contacts matching the accept_filter will be accepted; the rest of them will be rejected for redirection. - The parameter may be defined only one - multiple definition + The parameter may be defined only once - multiple definitions will overwrite the previous definitions. If more regular - expression need to be defined, use the set_accept_filter() + expressions need to be defined, use the set_accept_filter() scripting function. This parameter is optional, it's default value being NULL. @@ -165,8 +175,8 @@ modparam("uac_redirect","accept_filter",".*@siphub\.net") 1.4.4. acc_function (string) - Specifies the accounting function to be used. Just be defining - this parameter, the accounting support will not be enabled. + Specifies the accounting function to be used. Accounting + support will not be enabled just by defining this parameter. Accounting may only be enabled via two parameters set_accept_filter() scripting function. @@ -186,9 +196,9 @@ modparam("uac_redirect","acc_function","acc_db_request") 1.4.5. acc_db_table (string) Specifies the accounting table to be used if DB accounting was - chosen (acc_function was set to “acc_db_request”). Just be - defining this parameter, the accounting support will not be - enabled. Accounting may only be enabled via two parameters + chosen (acc_function was set to “acc_db_request”). Accounting + support will not be enabled just by defining this parameter. + Accounting may only be enabled via two parameters set_accept_filter() scripting function. The default value is “acc”. @@ -200,13 +210,13 @@ modparam("uac_redirect","acc_db_table","acc_redirect") 1.5. Exported Functions -1.5.1. set_deny_filter(filter,flags) +1.5.1. set_deny_filter(filter, flag) - Sets additional deny filters. Maximum 6 may be combined. This - additional filter will apply only to the current message - it - will not have a global effect. + Sets additional deny filters. Maximum of 6 may be combined. + This additional filter will apply only to the current message - + it will not have a global effect. - Default or previous added deny filter may be reset depending of + Default or previous added deny filter may be reset depending on the flag parameter value: * reset_all - reset both default and previous added deny filters; @@ -218,15 +228,15 @@ modparam("uac_redirect","acc_db_table","acc_redirect") Example 1.6. set_deny_filter usage ... -set_deny_filter(".*@domain2.net","reset_all"); -set_deny_filter(".*@domain1.net",""); +set_deny_filter(".*@domain2.net", "reset_all"); +set_deny_filter(".*@domain1.net", ""); ... -1.5.2. set_accept_filter(filter,flags) +1.5.2. set_accept_filter(filter, flag) - Sets additional accept filters. Maximum 6 may be combined. This - additional filter will apply only to the current message - it - will not have a global effect. + Sets additional accept filters. Maximum of 6 may be combined. + This additional filter will apply only to the current message - + it will not have a global effect. Default or previous added deny filter may be reset depending of the flag parameter value: @@ -240,8 +250,8 @@ set_deny_filter(".*@domain1.net",""); Example 1.7. set_accept_filter usage ... -set_accept_filter(".*@domain2.net","reset_added"); -set_accept_filter(".*@domain1.net",""); +set_accept_filter(".*@domain2.net", "reset_added"); +set_accept_filter(".*@domain1.net", ""); ... 1.5.3. get_redirects(max) @@ -252,12 +262,12 @@ set_accept_filter(".*@domain1.net",""); branches, this must be done explicitly from script. How many contacts (in total and per branch) are selected - depends of the max parameter values. Its syntax is: + depends on the max parameter values. Its syntax is: * max = max_total [":" max_branch] * max_total = number of total contacts to be selected * max_branch = number of contacts per branch to be selected - Both “max_total” and “max_branch” are positive integer. To + Both “max_total” and “max_branch” are positive integers. To specify unlimited values, use 0 value or "*" character. NOTE that during the selection process, each set of contacts @@ -279,12 +289,12 @@ get_redirects("6:*"); get_redirects("*"); ... -1.5.4. get_redirects(max,reason) +1.5.4. get_redirects(max, reason) The function has same functionality as get_redirects(max) function, but it will produce accounting records. - The accounting records will be mark by the reason phrase. + The accounting records will be marked by the reason phrase. If this function appears in the script, at startup, the module will import the accounting function. Otherwise not. @@ -293,7 +303,7 @@ get_redirects("*"); Example 1.9. get_redirects usage ... -get_redirects("4:1","Redirected"); +get_redirects("4:1", "Redirected"); ... 1.6. Script Example @@ -306,7 +316,7 @@ loadmodule "modules/tm/tm.so" loadmodule "modules/acc/acc.so" loadmodule "modules/uac_redirect/uac_redirect.so" -modparam("usrloc", "db_mode", 0) +modparam("usrloc", "db_mode", 0) route{ if (uri==myself) { @@ -338,6 +348,6 @@ failure_route[1] { } failure_route[2] { - get_redirects("6:2","redirect"); + get_redirects("6:2", "redirect"); t_relay(); } diff --git a/modules/uac_redirect/doc/uac_redirect.xml b/modules/uac_redirect/doc/uac_redirect.xml index 8213fd0946d..7d7c55329b5 100644 --- a/modules/uac_redirect/doc/uac_redirect.xml +++ b/modules/uac_redirect/doc/uac_redirect.xml @@ -20,16 +20,17 @@ Bogdan-Andrei Iancu -
- bogdan@opensips.org -
+ bogdan@opensips.org
Bogdan-Andrei Iancu -
- bogdan@opensips.org -
+ bogdan@opensips.org +
+ + Robert + Gagnon + Telepoint Global Hosting Services, LLC diff --git a/modules/uac_redirect/doc/uac_redirect_admin.xml b/modules/uac_redirect/doc/uac_redirect_admin.xml index 111ba6d03f5..334b68561ce 100644 --- a/modules/uac_redirect/doc/uac_redirect_admin.xml +++ b/modules/uac_redirect/doc/uac_redirect_admin.xml @@ -8,28 +8,28 @@
Overview - UAC REDIRECT - User Agent Client redirection - module enhance &osips; + UAC REDIRECT - User Agent Client redirection - module enhances &osips; with the functionality of being able to handle (interpret, filter, log and follow) redirect responses ( 3xx replies class). - UAC REDIRECT module offer stateful processing, gathering the + UAC REDIRECT module offers stateful processing, gathering the contacts from all 3xx branches of a call. - The module provide a powerful mechanism for selecting and filtering + The module provides a powerful mechanism for selecting and filtering the contacts to be used for the new redirect: - number based - limits like the - number of total contacts to be used or the maximum number of + number based - limits, like the + number of total contacts to be used, or the maximum number of contacts per branch to be selected. Regular Expression based - combinations - of deny and accept filters allow a strict control of the + of deny and accept filters allow or strict control of the contacts to be used for redirection. @@ -43,7 +43,7 @@
Accounting - UAC REDIRECT module allows to log all the redirection (to be later + UAC REDIRECT module allows logging of all redirection (to be later used for CDR aggregation). This functionality may be dynamically enabled for each redirection situation. @@ -138,15 +138,15 @@ modparam("uac_redirect","default_filter","deny")
<varname>deny_filter</varname> (string) - The regular expression for default deny filtering. It make sens - to be defined on only if the default_filter + The regular expression for default deny filtering. It makes sense + to be defined only if the default_filter parameter is set to accept. All contacts matching the deny_filter will be rejected; the rest of them will be accepted for redirection. - The parameter may be defined only one - multiple definition will - overwrite the previous definitions. If more regular expression + The parameter may be defined only once - multiple definitions will + overwrite the previous definitions. If more regular expressions need to be defined, use the set_deny_filter() scripting function. @@ -170,15 +170,15 @@ modparam("uac_redirect","deny_filter",".*@siphub\.net")
<varname>accept_filter</varname> (string) - The regular expression for default accept filtering. It make sens - to be defined on only if the default_filter + The regular expression for default accept filtering. It makes sense + to be defined only if the default_filter parameter is set to deny. All contacts matching the accept_filter will be accepted; the rest of them will be rejected for redirection. - The parameter may be defined only one - multiple definition will - overwrite the previous definitions. If more regular expression + The parameter may be defined only once - multiple definitions will + overwrite the previous definitions. If more regular expressions need to be defined, use the set_accept_filter() scripting function. @@ -202,8 +202,8 @@ modparam("uac_redirect","accept_filter",".*@siphub\.net")
<varname>acc_function</varname> (string) - Specifies the accounting function to be used. Just be defining - this parameter, the accounting support will not be enabled. + Specifies the accounting function to be used. Accounting support + will not be enabled just by defining this parameter. Accounting may only be enabled via two parameters set_accept_filter() scripting function. @@ -244,9 +244,9 @@ modparam("uac_redirect","acc_function","acc_db_request") Specifies the accounting table to be used if DB accounting was chosen (acc_function was set to - acc_db_request). Just be defining - this parameter, the accounting support will not be enabled. - Accounting may only be enabled via two parameters + acc_db_request). Accounting support will not be + enabled just by defining this parameter. Accounting may only + be enabled via two parameters set_accept_filter() scripting function. @@ -271,16 +271,16 @@ modparam("uac_redirect","acc_db_table","acc_redirect") Exported Functions
- <function moreinfo="none">set_deny_filter(filter,flags) + <function moreinfo="none">set_deny_filter(filter, flag) </function> - Sets additional deny filters. Maximum 6 may be combined. This + Sets additional deny filters. Maximum of 6 may be combined. This additional filter will apply only to the current message - it will not have a global effect. - Default or previous added deny filter may be reset depending of + Default or previous added deny filter may be reset depending on the flag parameter value: @@ -312,8 +312,8 @@ modparam("uac_redirect","acc_db_table","acc_redirect") <function>set_deny_filter</function> usage ... -set_deny_filter(".*@domain2.net","reset_all"); -set_deny_filter(".*@domain1.net",""); +set_deny_filter(".*@domain2.net", "reset_all"); +set_deny_filter(".*@domain1.net", ""); ... @@ -321,11 +321,11 @@ set_deny_filter(".*@domain1.net","");
- <function moreinfo="none">set_accept_filter(filter,flags) + <function moreinfo="none">set_accept_filter(filter, flag) </function> - Sets additional accept filters. Maximum 6 may be combined. This + Sets additional accept filters. Maximum of 6 may be combined. This additional filter will apply only to the current message - it will not have a global effect. @@ -362,8 +362,8 @@ set_deny_filter(".*@domain1.net",""); <function>set_accept_filter</function> usage ... -set_accept_filter(".*@domain2.net","reset_added"); -set_accept_filter(".*@domain1.net",""); +set_accept_filter(".*@domain2.net", "reset_added"); +set_accept_filter(".*@domain1.net", ""); ... @@ -381,7 +381,7 @@ set_accept_filter(".*@domain1.net",""); How many contacts (in total and per branch) are selected - depends of the max parameter values. + depends on the max parameter values. Its syntax is: @@ -397,7 +397,7 @@ set_accept_filter(".*@domain1.net",""); Both max_total and max_branch - are positive integer. To specify unlimited values, use 0 value + are positive integers. To specify unlimited values, use 0 value or "*" character. @@ -430,7 +430,7 @@ get_redirects("*");
- <function moreinfo="none">get_redirects(max,reason)</function> + <function moreinfo="none">get_redirects(max, reason)</function> The function has same functionality as @@ -438,7 +438,7 @@ get_redirects("*"); function, but it will produce accounting records. - The accounting records will be mark by the + The accounting records will be marked by the reason phrase. @@ -452,7 +452,7 @@ get_redirects("*"); <function>get_redirects</function> usage ... -get_redirects("4:1","Redirected"); +get_redirects("4:1", "Redirected"); ... @@ -471,7 +471,7 @@ loadmodule "modules/tm/tm.so" loadmodule "modules/acc/acc.so" loadmodule "modules/uac_redirect/uac_redirect.so" -modparam("usrloc", "db_mode", 0) +modparam("usrloc", "db_mode", 0) route{ if (uri==myself) { @@ -503,7 +503,7 @@ failure_route[1] { } failure_route[2] { - get_redirects("6:2","redirect"); + get_redirects("6:2", "redirect"); t_relay(); } From 94d4bd3669f519edbb1a0e1db62c80e604dc0acf Mon Sep 17 00:00:00 2001 From: rgagnon24 Date: Mon, 27 Apr 2015 17:53:18 +0000 Subject: [PATCH 7/7] Re-aligning files with upstream/master before merge --- modules/uac_redirect/README | 97 ++++++++++--------- .../uac_redirect/doc/uac_redirect_admin.xml | 78 ++++++++------- 2 files changed, 93 insertions(+), 82 deletions(-) diff --git a/modules/uac_redirect/README b/modules/uac_redirect/README index a1bdcf8c795..f0ae6f510f1 100644 --- a/modules/uac_redirect/README +++ b/modules/uac_redirect/README @@ -42,10 +42,10 @@ Robert Gagnon 1.5. Exported Functions - 1.5.1. set_deny_filter(filter, flag) - 1.5.2. set_accept_filter(filter, flag) + 1.5.1. set_deny_filter(filter,flags) + 1.5.2. set_accept_filter(filter,flags) 1.5.3. get_redirects(max) - 1.5.4. get_redirects(max, reason) + 1.5.4. get_redirects(max,reason) 1.6. Script Example @@ -66,21 +66,21 @@ Chapter 1. Admin Guide 1.1. Overview - UAC REDIRECT - User Agent Client redirection - module enhances + UAC REDIRECT - User Agent Client redirection - module enhance OpenSIPS with the functionality of being able to handle (interpret, filter, log and follow) redirect responses ( 3xx replies class). - UAC REDIRECT module offers stateful processing, gathering the + UAC REDIRECT module offer stateful processing, gathering the contacts from all 3xx branches of a call. - The module provides a powerful mechanism for selecting and + The module provide a powerful mechanism for selecting and filtering the contacts to be used for the new redirect: - * number based - limits, like the number of total contacts to - be used, or the maximum number of contacts per branch to be + * number based - limits like the number of total contacts to + be used or the maximum number of contacts per branch to be selected. * Regular Expression based - combinations of deny and accept - filters allow or strict control of the contacts to be used + filters allow a strict control of the contacts to be used for redirection. When selecting from a 3xx branch the contacts to be used, the @@ -89,7 +89,7 @@ Chapter 1. Admin Guide 1.2. Accounting - UAC REDIRECT module allows logging of all redirection (to be + UAC REDIRECT module allows to log all the redirection (to be later used for CDR aggregation). This functionality may be dynamically enabled for each redirection situation. @@ -137,14 +137,14 @@ modparam("uac_redirect","default_filter","deny") 1.4.2. deny_filter (string) - The regular expression for default deny filtering. It makes - sense to be defined only if the default_filter parameter is set - to “accept”. All contacts matching the deny_filter will be + The regular expression for default deny filtering. It make sens + to be defined on only if the default_filter parameter is set to + “accept”. All contacts matching the deny_filter will be rejected; the rest of them will be accepted for redirection. - The parameter may be defined only once - multiple definitions + The parameter may be defined only one - multiple definition will overwrite the previous definitions. If more regular - expressions need to be defined, use the set_deny_filter() + expression need to be defined, use the set_deny_filter() scripting function. This parameter is optional, it's default value being NULL. @@ -156,14 +156,14 @@ modparam("uac_redirect","deny_filter",".*@siphub\.net") 1.4.3. accept_filter (string) - The regular expression for default accept filtering. It makes - sense to be defined only if the default_filter parameter is set - to “deny”. All contacts matching the accept_filter will be + The regular expression for default accept filtering. It make + sens to be defined on only if the default_filter parameter is + set to “deny”. All contacts matching the accept_filter will be accepted; the rest of them will be rejected for redirection. - The parameter may be defined only once - multiple definitions + The parameter may be defined only one - multiple definition will overwrite the previous definitions. If more regular - expressions need to be defined, use the set_accept_filter() + expression need to be defined, use the set_accept_filter() scripting function. This parameter is optional, it's default value being NULL. @@ -175,8 +175,8 @@ modparam("uac_redirect","accept_filter",".*@siphub\.net") 1.4.4. acc_function (string) - Specifies the accounting function to be used. Accounting - support will not be enabled just by defining this parameter. + Specifies the accounting function to be used. Just be defining + this parameter, the accounting support will not be enabled. Accounting may only be enabled via two parameters set_accept_filter() scripting function. @@ -196,9 +196,9 @@ modparam("uac_redirect","acc_function","acc_db_request") 1.4.5. acc_db_table (string) Specifies the accounting table to be used if DB accounting was - chosen (acc_function was set to “acc_db_request”). Accounting - support will not be enabled just by defining this parameter. - Accounting may only be enabled via two parameters + chosen (acc_function was set to “acc_db_request”). Just be + defining this parameter, the accounting support will not be + enabled. Accounting may only be enabled via two parameters set_accept_filter() scripting function. The default value is “acc”. @@ -210,13 +210,13 @@ modparam("uac_redirect","acc_db_table","acc_redirect") 1.5. Exported Functions -1.5.1. set_deny_filter(filter, flag) +1.5.1. set_deny_filter(filter,flags) - Sets additional deny filters. Maximum of 6 may be combined. - This additional filter will apply only to the current message - - it will not have a global effect. + Sets additional deny filters. Maximum 6 may be combined. This + additional filter will apply only to the current message - it + will not have a global effect. - Default or previous added deny filter may be reset depending on + Default or previous added deny filter may be reset depending of the flag parameter value: * reset_all - reset both default and previous added deny filters; @@ -228,15 +228,15 @@ modparam("uac_redirect","acc_db_table","acc_redirect") Example 1.6. set_deny_filter usage ... -set_deny_filter(".*@domain2.net", "reset_all"); -set_deny_filter(".*@domain1.net", ""); +set_deny_filter(".*@domain2.net","reset_all"); +set_deny_filter(".*@domain1.net",""); ... -1.5.2. set_accept_filter(filter, flag) +1.5.2. set_accept_filter(filter,flags) - Sets additional accept filters. Maximum of 6 may be combined. - This additional filter will apply only to the current message - - it will not have a global effect. + Sets additional accept filters. Maximum 6 may be combined. This + additional filter will apply only to the current message - it + will not have a global effect. Default or previous added deny filter may be reset depending of the flag parameter value: @@ -250,8 +250,8 @@ set_deny_filter(".*@domain1.net", ""); Example 1.7. set_accept_filter usage ... -set_accept_filter(".*@domain2.net", "reset_added"); -set_accept_filter(".*@domain1.net", ""); +set_accept_filter(".*@domain2.net","reset_added"); +set_accept_filter(".*@domain1.net",""); ... 1.5.3. get_redirects(max) @@ -262,12 +262,12 @@ set_accept_filter(".*@domain1.net", ""); branches, this must be done explicitly from script. How many contacts (in total and per branch) are selected - depends on the max parameter values. Its syntax is: + depends of the max parameter values. Its syntax is: * max = max_total [":" max_branch] * max_total = number of total contacts to be selected * max_branch = number of contacts per branch to be selected - Both “max_total” and “max_branch” are positive integers. To + Both “max_total” and “max_branch” are positive integer. To specify unlimited values, use 0 value or "*" character. NOTE that during the selection process, each set of contacts @@ -289,12 +289,16 @@ get_redirects("6:*"); get_redirects("*"); ... -1.5.4. get_redirects(max, reason) +1.5.4. get_redirects(max,reason) The function has same functionality as get_redirects(max) function, but it will produce accounting records. - The accounting records will be marked by the reason phrase. + The accounting records will be mark by the reason phrase. This + phrase shall be in the same format as the reason parameter that + would be passed to the accounting function set by the + acc_function module parameter. See the ACC module documentation + for more information. If this function appears in the script, at startup, the module will import the accounting function. Otherwise not. @@ -303,7 +307,10 @@ get_redirects("*"); Example 1.9. get_redirects usage ... -get_redirects("4:1", "Redirected"); +get_redirects("4:1","300"); # Record 300, using the default reason stri +ng for a 300 +get_redirects("4:1","302 Redirected"); # Record as 302, with custom "Re +directed" reason string ... 1.6. Script Example @@ -316,7 +323,7 @@ loadmodule "modules/tm/tm.so" loadmodule "modules/acc/acc.so" loadmodule "modules/uac_redirect/uac_redirect.so" -modparam("usrloc", "db_mode", 0) +modparam("usrloc", "db_mode", 0) route{ if (uri==myself) { @@ -348,6 +355,6 @@ failure_route[1] { } failure_route[2] { - get_redirects("6:2", "redirect"); + get_redirects("6:2", "300 redirect"); t_relay(); } diff --git a/modules/uac_redirect/doc/uac_redirect_admin.xml b/modules/uac_redirect/doc/uac_redirect_admin.xml index 334b68561ce..d3591a024d1 100644 --- a/modules/uac_redirect/doc/uac_redirect_admin.xml +++ b/modules/uac_redirect/doc/uac_redirect_admin.xml @@ -8,28 +8,28 @@
Overview - UAC REDIRECT - User Agent Client redirection - module enhances &osips; + UAC REDIRECT - User Agent Client redirection - module enhance &osips; with the functionality of being able to handle (interpret, filter, log and follow) redirect responses ( 3xx replies class). - UAC REDIRECT module offers stateful processing, gathering the + UAC REDIRECT module offer stateful processing, gathering the contacts from all 3xx branches of a call. - The module provides a powerful mechanism for selecting and filtering + The module provide a powerful mechanism for selecting and filtering the contacts to be used for the new redirect: - number based - limits, like the - number of total contacts to be used, or the maximum number of + number based - limits like the + number of total contacts to be used or the maximum number of contacts per branch to be selected. Regular Expression based - combinations - of deny and accept filters allow or strict control of the + of deny and accept filters allow a strict control of the contacts to be used for redirection. @@ -43,7 +43,7 @@
Accounting - UAC REDIRECT module allows logging of all redirection (to be later + UAC REDIRECT module allows to log all the redirection (to be later used for CDR aggregation). This functionality may be dynamically enabled for each redirection situation. @@ -138,15 +138,15 @@ modparam("uac_redirect","default_filter","deny")
<varname>deny_filter</varname> (string) - The regular expression for default deny filtering. It makes sense - to be defined only if the default_filter + The regular expression for default deny filtering. It make sens + to be defined on only if the default_filter parameter is set to accept. All contacts matching the deny_filter will be rejected; the rest of them will be accepted for redirection. - The parameter may be defined only once - multiple definitions will - overwrite the previous definitions. If more regular expressions + The parameter may be defined only one - multiple definition will + overwrite the previous definitions. If more regular expression need to be defined, use the set_deny_filter() scripting function. @@ -170,15 +170,15 @@ modparam("uac_redirect","deny_filter",".*@siphub\.net")
<varname>accept_filter</varname> (string) - The regular expression for default accept filtering. It makes sense - to be defined only if the default_filter + The regular expression for default accept filtering. It make sens + to be defined on only if the default_filter parameter is set to deny. All contacts matching the accept_filter will be accepted; the rest of them will be rejected for redirection. - The parameter may be defined only once - multiple definitions will - overwrite the previous definitions. If more regular expressions + The parameter may be defined only one - multiple definition will + overwrite the previous definitions. If more regular expression need to be defined, use the set_accept_filter() scripting function. @@ -202,8 +202,8 @@ modparam("uac_redirect","accept_filter",".*@siphub\.net")
<varname>acc_function</varname> (string) - Specifies the accounting function to be used. Accounting support - will not be enabled just by defining this parameter. + Specifies the accounting function to be used. Just be defining + this parameter, the accounting support will not be enabled. Accounting may only be enabled via two parameters set_accept_filter() scripting function. @@ -244,9 +244,9 @@ modparam("uac_redirect","acc_function","acc_db_request") Specifies the accounting table to be used if DB accounting was chosen (acc_function was set to - acc_db_request). Accounting support will not be - enabled just by defining this parameter. Accounting may only - be enabled via two parameters + acc_db_request). Just be defining + this parameter, the accounting support will not be enabled. + Accounting may only be enabled via two parameters set_accept_filter() scripting function. @@ -271,16 +271,16 @@ modparam("uac_redirect","acc_db_table","acc_redirect") Exported Functions
- <function moreinfo="none">set_deny_filter(filter, flag) + <function moreinfo="none">set_deny_filter(filter,flags) </function> - Sets additional deny filters. Maximum of 6 may be combined. This + Sets additional deny filters. Maximum 6 may be combined. This additional filter will apply only to the current message - it will not have a global effect. - Default or previous added deny filter may be reset depending on + Default or previous added deny filter may be reset depending of the flag parameter value: @@ -312,8 +312,8 @@ modparam("uac_redirect","acc_db_table","acc_redirect") <function>set_deny_filter</function> usage ... -set_deny_filter(".*@domain2.net", "reset_all"); -set_deny_filter(".*@domain1.net", ""); +set_deny_filter(".*@domain2.net","reset_all"); +set_deny_filter(".*@domain1.net",""); ... @@ -321,11 +321,11 @@ set_deny_filter(".*@domain1.net", "");
- <function moreinfo="none">set_accept_filter(filter, flag) + <function moreinfo="none">set_accept_filter(filter,flags) </function> - Sets additional accept filters. Maximum of 6 may be combined. This + Sets additional accept filters. Maximum 6 may be combined. This additional filter will apply only to the current message - it will not have a global effect. @@ -362,8 +362,8 @@ set_deny_filter(".*@domain1.net", ""); <function>set_accept_filter</function> usage ... -set_accept_filter(".*@domain2.net", "reset_added"); -set_accept_filter(".*@domain1.net", ""); +set_accept_filter(".*@domain2.net","reset_added"); +set_accept_filter(".*@domain1.net",""); ... @@ -381,7 +381,7 @@ set_accept_filter(".*@domain1.net", ""); How many contacts (in total and per branch) are selected - depends on the max parameter values. + depends of the max parameter values. Its syntax is: @@ -397,7 +397,7 @@ set_accept_filter(".*@domain1.net", ""); Both max_total and max_branch - are positive integers. To specify unlimited values, use 0 value + are positive integer. To specify unlimited values, use 0 value or "*" character. @@ -430,7 +430,7 @@ get_redirects("*");
- <function moreinfo="none">get_redirects(max, reason)</function> + <function moreinfo="none">get_redirects(max,reason)</function> The function has same functionality as @@ -438,8 +438,11 @@ get_redirects("*"); function, but it will produce accounting records. - The accounting records will be marked by the - reason phrase. + The accounting records will be mark by the + reason phrase. This phrase shall be in the same format + as the reason parameter that would be passed to the + accounting function set by the acc_function module parameter. + See the ACC module documentation for more information. If this function appears in the script, at startup, the module @@ -452,7 +455,8 @@ get_redirects("*"); <function>get_redirects</function> usage ... -get_redirects("4:1", "Redirected"); +get_redirects("4:1","300"); # Record 300, using the default reason string for a 300 +get_redirects("4:1","302 Redirected"); # Record as 302, with custom "Redirected" reason string ... @@ -471,7 +475,7 @@ loadmodule "modules/tm/tm.so" loadmodule "modules/acc/acc.so" loadmodule "modules/uac_redirect/uac_redirect.so" -modparam("usrloc", "db_mode", 0) +modparam("usrloc", "db_mode", 0) route{ if (uri==myself) { @@ -503,7 +507,7 @@ failure_route[1] { } failure_route[2] { - get_redirects("6:2", "redirect"); + get_redirects("6:2", "300 redirect"); t_relay(); }