2
0
Эх сурвалжийг харах

modules: refresed READMEs for some modules that had xml files updated

Daniel-Constantin Mierla 11 жил өмнө
parent
commit
e7dc20ba0b

+ 105 - 108
modules/avp/README

@@ -1,4 +1,3 @@
-
 The AVP module
 
 Jiri Kuthan
@@ -12,7 +11,7 @@ Michal Matyska
    <[email protected]>
 
    Copyright © 2004, 2005, 2006 FhG FOKUS, iptelorg GmbH
-     _________________________________________________________________
+     __________________________________________________________________
 
    Table of Contents
 
@@ -106,15 +105,15 @@ Chapter 1. Admin Guide
 
 1. Overview
 
-   This  module contains several functions that can be used to manipulate
-   the  contents  of AVPs (Attribute-Value pairs). The AVPs are variables
-   attached  to  the  SIP  message being processed. Each variable has its
-   name and value. AVPs can be used to store arbitrary data or as a means
-   of inter-module communication.
+   This module contains several functions that can be used to manipulate
+   the contents of AVPs (Attribute-Value pairs). The AVPs are variables
+   attached to the SIP message being processed. Each variable has its name
+   and value. AVPs can be used to store arbitrary data or as a means of
+   inter-module communication.
 
-   You  may  also  want to check the avpops module which is more flexible
-   and  contains  more  functions.  In  future  Kamailio releases the avp
-   module will be probably deprecated in favor of avpops module.
+   You may also want to check the avpops module which is more flexible and
+   contains more functions. In future Kamailio releases the avp module
+   will be probably deprecated in favor of avpops module.
 
 2. Functions
 
@@ -188,25 +187,25 @@ set_sattr("called_number", "1234")
 
 2.5. attr2uri($attribute[,uri-part])
 
-   Rewrite  the whole Request-URI of the message being processed with the
-   value  of  an  AVP,  or if an uri-part is specified, rewrite only that
+   Rewrite the whole Request-URI of the message being processed with the
+   value of an AVP, or if an uri-part is specified, rewrite only that
    specific part.
 
    Meaning of the parameter is as follows:
      * $attribute - The name of the AVP.
      * uri-part - The name of the part of the uri that will be rewritten.
-       The  supported  values  are:  "prefix", "uri", "username", "user",
-       "usernamepassword",  "userpass",  "domain",  "host", "domainport",
-       "hostport",  "port",  "strip", "strip_tail". "prefix" will add the
-       AVP  as a prefix to the username (equivalent to prefix("string")),
-       "strip"  and "strip_tail" expect a number in the AVP and they will
-       remove  the  specified  number  of  characters from the beginning,
-       respective  the  end  of the username part of the uri. The rest of
-       the uri-part values names are self-explaining.
+       The supported values are: "prefix", "uri", "username", "user",
+       "usernamepassword", "userpass", "domain", "host", "domainport",
+       "hostport", "port", "strip", "strip_tail". "prefix" will add the
+       AVP as a prefix to the username (equivalent to prefix("string")),
+       "strip" and "strip_tail" expect a number in the AVP and they will
+       remove the specified number of characters from the beginning,
+       respective the end of the username part of the uri. The rest of the
+       uri-part values names are self-explaining.
 
 2.6. attr_exists(attribute)
 
-   Test  for the existence of AVP with given name. The function returns 1
+   Test for the existence of AVP with given name. The function returns 1
    if given AVP exists and -1 if not.
 
    Meaning of the parameter is as follows:
@@ -223,9 +222,9 @@ if (attr_exists("saved_ruri")) {
 
 2.7. attr_equals(attribute, value)
 
-   Test  whether  an  AVP  with given name and value exists. The function
-   returns  1  if the AVP with given name and value exists and -1 if not.
-   The  value  of the AVP is compared string-wise. The comparison is case
+   Test whether an AVP with given name and value exists. The function
+   returns 1 if the AVP with given name and value exists and -1 if not.
+   The value of the AVP is compared string-wise. The comparison is case
    sensitive.
 
    Meaning of the parameter is as follows:
@@ -234,17 +233,17 @@ if (attr_exists("saved_ruri")) {
 
 2.8. attr_equals_xl(attribute, xl_format)
 
-   Test  whether  an  AVP  with given name and value exists. The function
-   returns  1  if the AVP with given name and value exists and -1 if not.
-   The  value  of the AVP is compared string-wise to the result of xprint
+   Test whether an AVP with given name and value exists. The function
+   returns 1 if the AVP with given name and value exists and -1 if not.
+   The value of the AVP is compared string-wise to the result of xprint
    formatting call. The comparison is case sensitive.
 
    Meaning of the parameter is as follows:
      * attribute - The name of the AVP.
-     * xl_format  -  The  xprint  formatting  string,  result of which is
-       looked for in AVP.
+     * xl_format - The xprint formatting string, result of which is looked
+       for in AVP.
 
-   Note:  You must ensure, that the xprint module is loaded to be able to
+   Note: You must ensure, that the xprint module is loaded to be able to
    use this function.
 
    Example 1.5. attr_equals_xl usage
@@ -264,15 +263,15 @@ if (attr_equals_xl("my_avp", "%ct")) {
 
 2.10. xlset_attr($attribute, xl_format)
 
-   Creates  new AVP identified by attribute and assigns the result string
+   Creates new AVP identified by attribute and assigns the result string
    of xprint formatting rules as its value.
 
    Meaning of the parameter is as follows:
      * $attribute - The name of the AVP.
-     * xl_format  -  String used for xprint formatting. For detailed info
+     * xl_format - String used for xprint formatting. For detailed info
        see documentation of xprint module.
 
-   Note:  You must ensure, that the xprint module is loaded to be able to
+   Note: You must ensure, that the xprint module is loaded to be able to
    use this function.
 
 2.11. xlfix_attr($attribute)
@@ -284,30 +283,30 @@ if (attr_equals_xl("my_avp", "%ct")) {
 
 2.12. insert_attr_hf(name)
 
-   Inserts  new  header  into the request, which is beeing forwarded. The
-   AVP name is the name of the header field. If you need to insert header
-   with     name    which    differs    from    the    AVP    name    use
-   insert_attr_hf(header_name, $avp_name) instead.
+   Inserts new header into the request, which is beeing forwarded. The AVP
+   name is the name of the header field. If you need to insert header with
+   name which differs from the AVP name use insert_attr_hf(header_name,
+   $avp_name) instead.
 
-   Inserting  means  putting  the header to the beginning of the request,
+   Inserting means putting the header to the beginning of the request,
    before any others.
 
    Meaning of the parameter is as follows:
-     * name  -  The  name  of  the  header  field  which is inserted into
-       forwarded  request  as well as name of AVP which's value is put as
+     * name - The name of the header field which is inserted into
+       forwarded request as well as name of AVP which's value is put as
        the header field value.
 
 2.13. insert_attr_hf(header_name, $avp_name)
 
    Inserts new header into the request, which is beeing forwarded.
 
-   Inserting  means  putting  the header to the beginning of the request,
+   Inserting means putting the header to the beginning of the request,
    before any others.
 
    Meaning of the parameter is as follows:
-     * header_name  - The name of the header field which is inserted into
+     * header_name - The name of the header field which is inserted into
        forwarded request.
-     * $avp_name  -  The  name  of AVP which's value is put as the header
+     * $avp_name - The name of AVP which's value is put as the header
        field value.
 
    Example 1.6. insert_attr_hf usage
@@ -318,84 +317,83 @@ insert_attr_hf("Route", "$my_route");
 
 2.14. append_attr_hf(name)
 
-   Appends  new  header  into the request, which is beeing forwarded. The
-   AVP name is the name of the header field. If you need to append header
-   with     name    which    differs    from    the    AVP    name    use
-   append_attr_hf(header_name, $avp_name) instead.
+   Appends new header into the request, which is beeing forwarded. The AVP
+   name is the name of the header field. If you need to append header with
+   name which differs from the AVP name use append_attr_hf(header_name,
+   $avp_name) instead.
 
-   Appending  means  putting  the header to the end of the request, after
-   any others.
+   Appending means putting the header to the end of the request, after any
+   others.
 
    Meaning of the parameter is as follows:
-     * name  -  The  name  of  the  header  field  which is appended into
-       forwarded  request  as well as name of AVP which's value is put as
+     * name - The name of the header field which is appended into
+       forwarded request as well as name of AVP which's value is put as
        the header field value.
 
 2.15. append_attr_hf(header_name, $avp_name)
 
    Appends new header into the request, which is beeing forwarded.
 
-   Appending  means  putting  the header to the end of the request, after
-   any others.
+   Appending means putting the header to the end of the request, after any
+   others.
 
    Meaning of the parameter is as follows:
-     * header_name  - The name of the header field which is appended into
+     * header_name - The name of the header field which is appended into
        forwarded request.
-     * $avp_name  -  The  name  of AVP which's value is put as the header
+     * $avp_name - The name of AVP which's value is put as the header
        field value.
 
 2.16. replace_attr_hf(name)
 
-   Replaces  header  in  the  request, which is beeing forwarded. The AVP
-   name  is  the  same  as  the  name of the header field. If you need to
-   replace  header  with  name  which  differs  from  the  AVP  name  use
+   Replaces header in the request, which is beeing forwarded. The AVP name
+   is the same as the name of the header field. If you need to replace
+   header with name which differs from the AVP name use
    replace_attr_hf(header_name, $avp_name) instead.
 
-   Replacing  means  removing  all  the  headers  with specified name and
+   Replacing means removing all the headers with specified name and
    appending new one at the end, with the value from AVP.
 
    Meaning of the parameter is as follows:
      * name - The name of the header field which is replaced in forwarded
-       request  as well as name of AVP which's value is put as the header
+       request as well as name of AVP which's value is put as the header
        field value.
 
 2.17. replace_attr_hf(header_name, $avp_name)
 
    Replaces header in the request, which is beeing forwarded.
 
-   Replacing  means  removing  all  the  headers  with specified name and
+   Replacing means removing all the headers with specified name and
    appending new one at the end, with the value from AVP.
 
    Meaning of the parameter is as follows:
-     * header_name  -  The  name of the header field which is replaced in
+     * header_name - The name of the header field which is replaced in
        forwarded request.
-     * $avp_name  -  The  name  of AVP which's value is put as the header
+     * $avp_name - The name of AVP which's value is put as the header
        field value.
 
 2.18. attr_to_reply(name)
 
-   Appends  new header into the reply at the request time processing. The
+   Appends new header into the reply at the request time processing. The
    AVP name is the name of the header field. If you need to append header
-   with     name    which    differs    from    the    AVP    name    use
+   with name which differs from the AVP name use
    attr_to_reply(header_name, $avp_name) instead.
 
-   If  you  need  to  append  headers during reply processing you can use
+   If you need to append headers during reply processing you can use
    insert_attr_hf and append_attr_hf. This function stores data and waits
    for the reply being created.
 
    Meaning of the parameter is as follows:
-     * name  -  The name of the header field which is appended into reply
-       as  well  as  name of AVP which's value is put as the header field
-       value.
+     * name - The name of the header field which is appended into reply as
+       well as name of AVP which's value is put as the header field value.
 
 2.19. attr_to_reply(header_name, $avp_name)
 
    Appends new header into the reply at the request time processing.
 
    Meaning of the parameter is as follows:
-     * header_name  - The name of the header field which is appended into
+     * header_name - The name of the header field which is appended into
        reply.
-     * $avp_name  -  The  name  of AVP which's value is put as the header
+     * $avp_name - The name of AVP which's value is put as the header
        field value.
 
    Example 1.7. attr_to_reply usage
@@ -406,12 +404,12 @@ attr_to_reply("P-Hint-Route", "my_route");
 
 2.20. attr_destination($avp_name)
 
-   Sets  the  destination  of  the forwarded request to the value of AVP,
-   which  must  be  either a SIP URI or a string in nameaddr format (e.g.
+   Sets the destination of the forwarded request to the value of AVP,
+   which must be either a SIP URI or a string in nameaddr format (e.g.
    "Foo Bar" <sip:uri>).
 
    Meaning of the parameter is as follows:
-     * $avp_name  -  The  name  of  AVP which's value is used for further
+     * $avp_name - The name of AVP which's value is used for further
        request forwarding.
 
    Example 1.8. attr_destination usage
@@ -424,15 +422,14 @@ t_relay();
 
 2.21. xlset_destination(xl_format)
 
-   Sets  the  destination of the forwarded request to the value of result
-   of  xprint  formatted  string.  Either  SIP  URI or nameaddr format is
-   allowed.
+   Sets the destination of the forwarded request to the value of result of
+   xprint formatted string. Either SIP URI or nameaddr format is allowed.
 
    Meaning of the parameter is as follows:
-     * xl_format  -  xprint  module formatting string, the result is used
-       for request forwarding.
+     * xl_format - xprint module formatting string, the result is used for
+       request forwarding.
 
-   Note:  You must ensure, that the xprint module is loaded to be able to
+   Note: You must ensure, that the xprint module is loaded to be able to
    use this function.
 
    Example 1.9. xlset_destination usage
@@ -443,12 +440,12 @@ t_relay();
 
 2.22. subst_attr($avp_name, subst_re)
 
-   The  value  of  the  AVP  identified  by $avp_name name is matched and
-   substitued  according  to  the subst_re sed like expression. Result of
-   the substitution is then stored in the original AVP.
+   The value of the AVP identified by $avp_name name is matched and
+   substitued according to the subst_re sed like expression. Result of the
+   substitution is then stored in the original AVP.
 
    Meaning of the parameter is as follows:
-     * $avp_name   -  Name  of  the  AVP  which  will  be  used  for  the
+     * $avp_name - Name of the AVP which will be used for the
        substitution.
      * subst_re - SED like match&replace regullar expression.
 
@@ -479,48 +476,48 @@ failure_route[1] {
 
 2.24. hdr_body2attrs(headername, prefix)
 
-   Function     parses     a    header    body    content    scans    for
-   fld1=val1,fld2=val2,...  and  creates bunch of avps prefixfld1:= val1,
-   prefixfld2:= val2, .... If possible stores values as integers.
+   Function parses a header body content scans for fld1=val1,fld2=val2,...
+   and creates bunch of avps prefixfld1:= val1, prefixfld2:= val2, .... If
+   possible stores values as integers.
 
    Meaning of the parameter is as follows:
-     * headername  -  The  header  name,  which  will  be scanned for the
+     * headername - The header name, which will be scanned for the
        name=value pairs.
-       If  you  want  to  create  only  AVPs  with integer value use "/i"
-       postfix to the header name.
+       If you want to create only AVPs with integer value use "/i" postfix
+       to the header name.
        If you want to create only AVPs with string value use "/s" postfix
        to the header name.
-     * prefix  -  The  prefix, which is added before the name parsed from
-       the header body.
+     * prefix - The prefix, which is added before the name parsed from the
+       header body.
 
 2.25. hdr_body2attrs2(headername, prefix)
 
-   Function     parses     a    header    body    content    scans    for
-   fld1=val1,val2;fld2=val3,...  and creates bunch of avps prefixfld1#1:=
-   val1,  prefixfld1#2:=  val2,  prefixfld2:=val3 .... If possible stores
+   Function parses a header body content scans for
+   fld1=val1,val2;fld2=val3,... and creates bunch of avps prefixfld1#1:=
+   val1, prefixfld1#2:= val2, prefixfld2:=val3 .... If possible stores
    values as integers.
 
    Meaning of the parameter is as follows:
-     * headername  -  The  header  name,  which  will  be scanned for the
+     * headername - The header name, which will be scanned for the
        name=value pairs.
-       If  you  want  to  create  only  AVPs  with integer value use "/i"
-       postfix to the header name.
+       If you want to create only AVPs with integer value use "/i" postfix
+       to the header name.
        If you want to create only AVPs with string value use "/s" postfix
        to the header name.
-     * prefix  -  The  prefix, which is added before the name parsed from
-       the header body.
+     * prefix - The prefix, which is added before the name parsed from the
+       header body.
 
    Example 1.12. hdr_body2attrs and hdr_body2attrs2 usage
 if (method=="BYE") {
         # QoS reporting
         if (search("^User-Agent: AVM FRITZ!Box Fon*")) {
                 hdr_body2attrs2("X-RTP-Stat/i", "QoS_");
-                xplog("L_INFO", "QoS: %Ts, %fu, %tu, %ci, %{User-Agent}, %{X-RT
-P-Stat}\n");
+                xplog("L_INFO", "QoS: %Ts, %fu, %tu, %ci, %{User-Agent}, %{X-RTP
+-Stat}\n");
         } else if (search("^User-Agent: Sipura/*")) {
                 hdr_body2attrs("P-RTP-Stat/i", "QoS_");
-                xplog("L_INFO", "QoS: %Ts, %fu, %tu, %ci, %{User-Agent}, %{P-RT
-P-Stat}\n");
+                xplog("L_INFO", "QoS: %Ts, %fu, %tu, %ci, %{User-Agent}, %{P-RTP
+-Stat}\n");
         }
 }
 # AVP QoS_xx now contain the values from appropriate header
@@ -532,10 +529,10 @@ P-Stat}\n");
 
 3.1. xlbuf_size (integer)
 
-   Defines  size  of  internal buffer for all xprint formatting calls. If
-   you don't use xprint formatting calls, you can set it to 0 to preserve
-   some  memory,  if  you get errors while formatting due to buffer size,
-   you can enlarge it.
+   Defines size of internal buffer for all xprint formatting calls. If you
+   don't use xprint formatting calls, you can set it to 0 to preserve some
+   memory, if you get errors while formatting due to buffer size, you can
+   enlarge it.
 
    Default value is 256.
 

+ 23 - 23
modules/avpops/README

@@ -10,7 +10,7 @@ Ramona-Elena Modroiu
 
    <[email protected]>
 
-   Copyright © 2004, 2005 Voice Sistem SRL
+   Copyright © 2004, 2005 Voice Sistem SRL
      __________________________________________________________________
 
    Table of Contents
@@ -242,7 +242,7 @@ modparam("avpops","use_domain",1)
 
    Name of column containing the uuid (unique user id).
 
-   Default value is “uuid�.
+   Default value is "uuid".
 
    Example 1.5. Set uuid_column parameter
 ...
@@ -253,7 +253,7 @@ modparam("avpops","uuid_column","uuid")
 
    Name of column containing the username.
 
-   Default value is “username�.
+   Default value is "username".
 
    Example 1.6. Set username_column parameter
 ...
@@ -264,7 +264,7 @@ modparam("avpops","username_column","username")
 
    Name of column containing the domain name.
 
-   Default value is “domain�.
+   Default value is "domain".
 
    Example 1.7. Set domain_column parameter
 ...
@@ -275,7 +275,7 @@ modparam("avpops","domain_column","domain")
 
    Name of column containing the attribute name (AVP name).
 
-   Default value is “attribute�.
+   Default value is "attribute".
 
    Example 1.8. Set attribute_column parameter
 ...
@@ -286,7 +286,7 @@ modparam("avpops","attribute_column","attribute")
 
    Name of column containing the AVP value.
 
-   Default value is “value�.
+   Default value is "value".
 
    Example 1.9. Set value_column parameter
 ...
@@ -297,7 +297,7 @@ modparam("avpops","value_column","value")
 
    Name of integer column containing the AVP type.
 
-   Default value is “type�.
+   Default value is "type".
 
    Possible column values are
      * 0 - AVP with string name and string value
@@ -325,7 +325,7 @@ modparam("avpops","type_column","type")
           + 'value_type='('integer'|'string')
           + 'table='string
 
-   Default value is “NULL�.
+   Default value is "NULL".
 
    Example 1.11. Set db_scheme parameter
 ...
@@ -349,7 +349,7 @@ modparam("avpops","db_scheme",
    5.12. is_avp_set(name)
    5.13. avp_print()
 
-5.1.  avp_db_load(source,name)
+5.1. avp_db_load(source,name)
 
    Loads from DB into memory the AVPs corresponding to the given source.
    If given, it sets the script flags for loaded AVPs. It returns true if
@@ -387,7 +387,7 @@ avp_db_load("$uuid","$avp(s:404fwd)/fwd_table");
 avp_db_load("$ru","$avp(i1:123)/$some_scheme");
 ...
 
-5.2.  avp_db_store(source,name)
+5.2. avp_db_store(source,name)
 
    Stores to DB the AVPs corresponding to the given source.
 
@@ -403,7 +403,7 @@ avp_db_store("$tu","$avp(i:678)");
 avp_db_store("$ru/username","$avp(email)");
 ...
 
-5.3.  avp_db_delete(source,name)
+5.3. avp_db_delete(source,name)
 
    Deletes from DB the AVPs corresponding to the given source.
 
@@ -420,7 +420,7 @@ avp_db_delete("$ru/username","$avp(email)");
 avp_db_delete("$uuid","$avp(s:404fwd)/fwd_table");
 ...
 
-5.4.  avp_db_query(query[,dest])
+5.4. avp_db_query(query[,dest])
 
    Make a database query and store the result in AVPs. This command is
    deprecated, please use the more flexible and advanced sqlops module
@@ -436,8 +436,8 @@ avp_db_delete("$uuid","$avp(s:404fwd)/fwd_table");
        used in the query makes you vulnerable to SQL injection, e.g. make
        it possible for an outside attacker to alter your database content.
      * dest - a list with AVP names where to store the result. The format
-       is “$avp(name1);$avp(name2);...�. If this parameter is ommited, the
-       result is stored in “$avp(i:1);$avp(i:2);...�. If the result gives
+       is "$avp(name1);$avp(name2);...". If this parameter is ommited, the
+       result is stored in "$avp(i:1);$avp(i:2);...". If the result gives
        many rows, then multiple AVPs with corresponding name will be
        added. The value type of the AVP (string or integer) will be
        derived from the type of the columns. Please note that only this
@@ -460,7 +460,7 @@ avp_db_query("select password, ha1 from subscriber where username='$tu'",
 avp_db_query("delete from subscriber");
 ...
 
-5.5.  avp_delete(name)
+5.5. avp_delete(name)
 
    Deletes from memory the AVPs with name or, if empty, all AVPs.
 
@@ -482,7 +482,7 @@ avp_delete("i");
 avp_delete("a3");
 ...
 
-5.6.  avp_pushto(destination,name)
+5.6. avp_pushto(destination,name)
 
    Pushes the value of AVP(s) into the SIP message.
 
@@ -512,7 +512,7 @@ avp_pushto("$du","$avp(i:679)");
 avp_pushto("$br","$avp(i:680)");
 ...
 
-5.7.  avp_check(name,op_value)
+5.7. avp_check(name,op_value)
 
    Checks the value of the AVP(s) against an operator and value.
 
@@ -567,7 +567,7 @@ $var(id)=2;
 avp_check("$xavp(op=>foo[*])","fm/$xavp(op=>fm[$var(id)])/g");
 ...
 
-5.8.  avp_copy(old_name,new_name)
+5.8. avp_copy(old_name,new_name)
 
    Copy / move an avp under a new name.
 
@@ -588,7 +588,7 @@ avp_copy("$avp(i:678)", "$avp(s:345)/g");
 avp_copy("$avp(old)","$avp(new)/gd");
 ...
 
-5.9.  avp_printf(dest, format)
+5.9. avp_printf(dest, format)
 
    NOTE: since Kamailio 1.3.0 the function has been moved to core and it
    is an alias to pv_printf().
@@ -612,7 +612,7 @@ avp_copy("$avp(old)","$avp(new)/gd");
 avp_printf("$avp(i:20)", "This is a $rm request with call-id $hdr(call-id)");
 ...
 
-5.10.  avp_subst(avps, subst)
+5.10. avp_subst(avps, subst)
 
    Perl/sed-like subst applied to AVPs having string value.
 
@@ -654,7 +654,7 @@ avp_subst("$avp(i:678)/$avp(i:679)/g", "/(.*)@(.*)/\1@$rd/");
    after the first src_avp is processed, it will be added in avp list and
    next processing will use it.
 
-5.11.  avp_op(name,op_value)
+5.11. avp_op(name,op_value)
 
    Different integer operations with avps.
 
@@ -686,7 +686,7 @@ avp_op("$avp(i:678)", "add/i:345/g");
 avp_op("$avp(number)","sub/$avp(number2)/d");
 ...
 
-5.12.  is_avp_set(name)
+5.12. is_avp_set(name)
 
    Check if any AVP with name is set.
 
@@ -705,7 +705,7 @@ if(is_avp_set("$avp(i:678)"))
     log("AVP with integer id 678 exists\n");
 ...
 
-5.13.  avp_print()
+5.13. avp_print()
 
    Prints the list with all the AVPs from memory. This is only a
    helper/debug function.

+ 12 - 12
modules/dmq/README

@@ -14,9 +14,9 @@ Edited by
 
 Charles Chance
 
-   Copyright © 2011 Marius Bucur
+   Copyright © 2011 Marius Bucur
 
-   Copyright © 2013 Charles Chance, Sipcentric Ltd.
+   Copyright © 2013 Charles Chance, Sipcentric Ltd.
      __________________________________________________________________
 
    Table of Contents
@@ -133,7 +133,7 @@ Chapter 1. Admin Guide
    The local server address. This is the interface over which the DMQ
    engine will send/receive messages.
 
-   Default value is “NULL�.
+   Default value is "NULL".
 
    Example 1.1. Set server_address parameter
 ...
@@ -145,7 +145,7 @@ modparam("dmq", "server_address", "sip:10.0.0.20:5060")
    The address of another DMQ node from which the local node should
    retrieve initial information about all other nodes.
 
-   Default value is “NULL�.
+   Default value is "NULL".
 
    Example 1.2. Set notification_address parameter
 ...
@@ -156,7 +156,7 @@ modparam("dmq", "notification_address", "sip:10.0.0.21:5060")
 
    The number of worker threads for sending/receiving messages.
 
-   Default value is “2�.
+   Default value is "2".
 
    Example 1.3. Set num_workers parameter
 ...
@@ -168,7 +168,7 @@ modparam("dmq", "num_threads", 4)
    The number of seconds between node pings (for checking status of other
    nodes).
 
-   Minimum value is “60� (default).
+   Minimum value is "60" (default).
 
    Example 1.4. Set ping_interval parameter
 ...
@@ -180,7 +180,7 @@ modparam("dmq", "ping_interval", 90)
    4.1. dmq_handle_message()
    4.2. dmq_send_message(peer, node, body, content_type)
 
-4.1.  dmq_handle_message()
+4.1. dmq_handle_message()
 
    Handles a DMQ message by passing it to the appropriate local peer
    (module). The peer is identified by the user part of the To header.
@@ -195,7 +195,7 @@ modparam("dmq", "ping_interval", 90)
         }
 ...
 
-4.2.  dmq_send_message(peer, node, body, content_type)
+4.2. dmq_send_message(peer, node, body, content_type)
 
    Sends a DMQ message directly from config file.
 
@@ -230,7 +230,7 @@ Chapter 2. Developer Guide
    The module provides the following functions that can be used in other
    Kamailio modules.
 
-1.  dmq_load_api(dmq_api_t* api)
+1. dmq_load_api(dmq_api_t* api)
 
    This function binds the DMQ module and fills the structure with the
    exported functions below.
@@ -244,7 +244,7 @@ typedef struct dmq_api {
 } dmq_api_t;
 ...
 
-2.  register_dmq_peer(dmq_peer_t* peer)
+2. register_dmq_peer(dmq_peer_t* peer)
 
    Registers an entity as a DMQ peer which permits receiving/sending
    messages between nodes which support the same peer.
@@ -254,7 +254,7 @@ typedef struct dmq_api {
         Example to follow.
 ...
 
-3.  bcast_message(dmq_peer_t* peer, str* body, dmq_node_t* except,
+3. bcast_message(dmq_peer_t* peer, str* body, dmq_node_t* except,
 dmq_resp_cback_t* resp_cback, int max_forwards, str* content_type)
 
    Broadcast a DMQ message to all nodes in the DMQ bus excluding self,
@@ -265,7 +265,7 @@ dmq_resp_cback_t* resp_cback, int max_forwards, str* content_type)
         Example to follow.
 ...
 
-4.  send_message(dmq_peer_t* peer, str* body, dmq_node_t* node,
+4. send_message(dmq_peer_t* peer, str* body, dmq_node_t* node,
 dmq_resp_cback_t* resp_cback, int max_forwards, str* content_type)
 
    Send a DMQ message to a single node.

+ 20 - 20
modules/htable/README

@@ -17,7 +17,7 @@ Alex Balashov
 
    <[email protected]>
 
-   Copyright © 2008-2011 http://www.asipto.com
+   Copyright © 2008-2011 http://www.asipto.com
      __________________________________________________________________
 
    Table of Contents
@@ -178,7 +178,7 @@ Chapter 1. Admin Guide
    You can read more about hash tables at:
    http://en.wikipedia.org/wiki/Hash_table.
 
-   The “name� can be a static string or can include pseudo- variables that
+   The "name" can be a static string or can include pseudo- variables that
    will be replaced at runtime.
 
    Example 1.1. Accessing $sht(htname=>key)
@@ -201,7 +201,7 @@ $sht(a=>$ci::srcip) = $si;
    the failed authentications per user and one for storing the time of
    last authentication attempt. To ensure unique name per user, the hash
    table uses a combination of authentication username and text
-   “::auth_count� and “::last_auth�.
+   "::auth_count" and "::last_auth".
 
    Example 1.2. Dictionary attack limitation
 ...
@@ -495,7 +495,7 @@ modparam("htable", "enable_dmq", 1)
    4.4. sht_lock(htable=>key)
    4.5. sht_unlock(htable=>key)
 
-4.1.  sht_print()
+4.1. sht_print()
 
    Dump content of hash table to L_ERR log level. Intended for debug
    purposes.
@@ -508,7 +508,7 @@ modparam("htable", "enable_dmq", 1)
 sht_print();
 ...
 
-4.2.  sht_rm_name_re(htable=>regexp)
+4.2. sht_rm_name_re(htable=>regexp)
 
    Delete all entries in the htable that match the name against regular
    expression.
@@ -521,7 +521,7 @@ sht_print();
 sht_rm_name_re("ha=>.*");
 ...
 
-4.3.  sht_rm_value_re(htable=>regexp)
+4.3. sht_rm_value_re(htable=>regexp)
 
    Delete all entries in the htable that match the value against regular
    expression.
@@ -534,7 +534,7 @@ sht_rm_name_re("ha=>.*");
 sht_rm_value_re("ha=>.*");
 ...
 
-4.4.  sht_lock(htable=>key)
+4.4. sht_lock(htable=>key)
 
    Lock the slot in htable corespoding to the key item.
 
@@ -545,7 +545,7 @@ sht_rm_value_re("ha=>.*");
 sht_lock("ha=>test");
 ...
 
-4.5.  sht_unlock(htable=>key)
+4.5. sht_unlock(htable=>key)
 
    Unlock the slot in htable corespoding to the key item.
 
@@ -576,7 +576,7 @@ sht_unlock("ha=>test");
    6.2. sht_dump
    6.3. sht_delete
 
-6.1.  sht_reload
+6.1. sht_reload
 
    Reload a hash table from database.
 
@@ -589,7 +589,7 @@ sht_unlock("ha=>test");
                 _hash_table_name_
                 _empty_line_
 
-6.2.  sht_dump
+6.2. sht_dump
 
    Dump content of a hash table via MI.
 
@@ -602,7 +602,7 @@ sht_unlock("ha=>test");
                 _hash_table_name_
                 _empty_line_
 
-6.3.  sht_delete
+6.3. sht_delete
 
    Delete a key from a hash table via MI.
 
@@ -632,7 +632,7 @@ sht_unlock("ha=>test");
    7.7. htable.listTables
    7.8. htable.stats
 
-7.1.  htable.get htable key
+7.1. htable.get htable key
 
    Lists one value in a hash table
 
@@ -648,7 +648,7 @@ sht_unlock("ha=>test");
 kamcmd htable.get students daniel
 ...
 
-7.2.  htable.delete htable key
+7.2. htable.delete htable key
 
    Delete one value in a hash table
 
@@ -664,7 +664,7 @@ kamcmd htable.get students daniel
 kamcmd htable.get students anna
 ...
 
-7.3.  htable.sets htable key value
+7.3. htable.sets htable key value
 
    Set an item in hash table to string value.
 
@@ -681,7 +681,7 @@ kamcmd htable.get students anna
 kamcmd htable.sets test x abc
 ...
 
-7.4.  htable.seti htable key value
+7.4. htable.seti htable key value
 
    Set an item in hash table to integer value.
 
@@ -698,7 +698,7 @@ kamcmd htable.sets test x abc
 kamcmd htable.sets test x 123
 ...
 
-7.5.  htable.dump htable
+7.5. htable.dump htable
 
    Lists all the values in a hash table
 
@@ -712,7 +712,7 @@ kamcmd htable.sets test x 123
 kamcmd htable.dump ipban
 ...
 
-7.6.  htable.reload htable
+7.6. htable.reload htable
 
    Reload hash table from database.
 
@@ -726,7 +726,7 @@ kamcmd htable.dump ipban
 kamcmd htable.reload ipban
 ...
 
-7.7.  htable.listTables
+7.7. htable.listTables
 
    Lists all defined tables
 
@@ -740,7 +740,7 @@ kamcmd htable.reload ipban
 kamcmd htable.listTables
 ...
 
-7.8.  htable.stats
+7.8. htable.stats
 
    Get statistics for hash tables - name, number of slots, number of
    items, max number of items per slot, min number of items per slot.
@@ -759,7 +759,7 @@ kamcmd htable.stats
 
    8.1. htable:mod-init
 
-8.1.  htable:mod-init
+8.1. htable:mod-init
 
    When defined, the module calls event_route[htable:mod-init] after all
    modules have been initialized. A typical use case is to initialise

+ 55 - 55
modules/rtpproxy-ng/README

@@ -36,15 +36,15 @@ Richard Fuchs
 
    Sipwise GmbH
 
-   Copyright © 2003-2008 Sippy Software, Inc.
+   Copyright © 2003-2008 Sippy Software, Inc.
 
-   Copyright © 2005 Voice Sistem SRL
+   Copyright © 2005 Voice Sistem SRL
 
-   Copyright © 2009-2012 TuTPro Inc.
+   Copyright © 2009-2012 TuTPro Inc.
 
-   Copyright © 2010 VoIPEmbedded Inc.
+   Copyright © 2010 VoIPEmbedded Inc.
 
-   Copyright © 2013 Sipwise GmbH
+   Copyright © 2013 Sipwise GmbH
      __________________________________________________________________
 
    Table of Contents
@@ -161,7 +161,7 @@ Chapter 1. Admin Guide
    The module allows definition of several sets of rtpproxies.
    Load-balancing will be performed over a set and the admin has the
    ability to choose what set should be used. The set is selected via its
-   id - the id being defined with the set. Refer to the “rtpproxy_sock�
+   id - the id being defined with the set. Refer to the "rtpproxy_sock"
    module parameter definition for syntax description.
 
    The balancing inside a set is done automatically by the module based on
@@ -208,7 +208,7 @@ Chapter 1. Admin Guide
    Definition of socket(s) used to connect to (a set) RTPProxy. It may
    specify a UNIX socket or an IPv4/IPv6 UDP socket.
 
-   Default value is “NONE� (disabled).
+   Default value is "NONE" (disabled).
 
    Example 1.1. Set rtpproxy_sock parameter
 ...
@@ -230,7 +230,7 @@ modparam("rtpproxy-ng", "rtpproxy_sock",
    rtpproxy-ng module will not attempt to establish communication to that
    RTP proxy for rtpproxy_disable_tout seconds.
 
-   Default value is “60�.
+   Default value is "60".
 
    Example 1.2. Set rtpproxy_disable_tout parameter
 ...
@@ -241,7 +241,7 @@ modparam("rtpproxy-ng", "rtpproxy_disable_tout", 20)
 
    Timeout value in waiting for reply from RTP proxy.
 
-   Default value is “1�.
+   Default value is "1".
 
    Example 1.3. Set rtpproxy_tout parameter
 ...
@@ -253,7 +253,7 @@ modparam("rtpproxy-ng", "rtpproxy_tout", 2)
    How many times the module should retry to send and receive after
    timeout was generated.
 
-   Default value is “5�.
+   Default value is "5".
 
    Example 1.4. Set rtpproxy_retr parameter
 ...
@@ -262,11 +262,11 @@ modparam("rtpproxy-ng", "rtpproxy_retr", 2)
 
 4.5. extra_id_pv (string)
 
-   The parameter sets the PV defination to use when the “b� parameter is
+   The parameter sets the PV defination to use when the "b" parameter is
    used on unforce_rtp_proxy(), rtpproxy_offer(), rtpproxy_answer() or
    rtpproxy_manage() command.
 
-   Default is empty, the “b� parameter may not be used then.
+   Default is empty, the "b" parameter may not be used then.
 
    Example 1.5. Set extra_id_pv parameter
 ...
@@ -283,7 +283,7 @@ modparam("rtpproxy-ng", "extra_id_pv", "$avp(extra_id)")
    5.6. rtpproxy_manage([flags [, ip_address]])
    5.7. start_recording()
 
-5.1.  set_rtp_proxy_set(setid)
+5.1. set_rtp_proxy_set(setid)
 
    Sets the Id of the rtpproxy set to be used for the next
    unforce_rtp_proxy(), rtpproxy_offer(), rtpproxy_answer() or
@@ -299,7 +299,7 @@ set_rtp_proxy_set("2");
 rtpproxy_offer();
 ...
 
-5.2.  rtpproxy_offer([flags [, ip_address]])
+5.2. rtpproxy_offer([flags [, ip_address]])
 
    Rewrites SDP body to ensure that media is passed through an RTP proxy.
    To be invoked on INVITE for the cases the SDPs are in INVITE and 200 OK
@@ -309,16 +309,16 @@ rtpproxy_offer();
      * flags - flags to turn on some features.
           + 1 - append first Via branch to Call-ID when sending command to
             rtpproxy. This can be used to create one media session per
-            branch on the rtpproxy. When sending a subsequent “delete�
+            branch on the rtpproxy. When sending a subsequent "delete"
             command to the rtpproxy, you can then stop just the session
             for a specific branch when passing the flag '1' or '2' in the
-            “unforce_rtpproxy�, or stop all sessions for a call when not
+            "unforce_rtpproxy", or stop all sessions for a call when not
             passing one of those two flags there. This is especially
             useful if you have serially forked call scenarios where
-            rtpproxy gets an “offer� command for a new branch, and then a
-            “delete� command for the previous branch, which would
+            rtpproxy gets an "offer" command for a new branch, and then a
+            "delete" command for the previous branch, which would
             otherwise delete the full call, breaking the subsequent
-            “answer� for the new branch. This flag is only supported by
+            "answer" for the new branch. This flag is only supported by
             the ngcp-mediaproxy-ng rtpproxy at the moment!
           + 2 - append second Via branch to Call-ID when sending command
             to rtpproxy. See flag '1' for its meaning.
@@ -332,12 +332,12 @@ rtpproxy_offer();
             but is usefull when forking to multiple destinations on
             different address families or network segments, requiring
             different rtpproxy parameters. The variable value is taken
-            from the “extra_id_pv�. When used, it must be used in every
+            from the "extra_id_pv". When used, it must be used in every
             call to rtpproxy_manage(), rtpproxy_offer(), rtpproxy_answer()
             and rtpproxy_destroy() with the same contents of the PV. The b
             parameter may not be used in conjunction with the 1, 2 or 3
             parameter to use the Via branch in the Call-ID.
-          + l - force “lookup�, that is, only rewrite SDP when
+          + l - force "lookup", that is, only rewrite SDP when
             corresponding session already exists in the RTP proxy. By
             default is on when the session is to be completed.
           + i, e - these flags specify the direction of the SIP message.
@@ -455,7 +455,7 @@ onreply_route[2]
 ...
 }
 
-5.3.  rtpproxy_answer([flags [, ip_address]])
+5.3. rtpproxy_answer([flags [, ip_address]])
 
    Rewrites SDP body to ensure that media is passed through an RTP proxy.
    To be invoked on 200 OK for the cases the SDPs are in INVITE and 200 OK
@@ -471,7 +471,7 @@ onreply_route[2]
 
    See rtpproxy_offer() function example above for example.
 
-5.4.  rtpproxy_destroy([flags])
+5.4. rtpproxy_destroy([flags])
 
    Tears down the RTPProxy session for the current call.
 
@@ -481,16 +481,16 @@ onreply_route[2]
      * flags - flags to turn on some features.
           + 1 - append first Via branch to Call-ID when sending command to
             rtpproxy. This can be used to create one media session per
-            branch on the rtpproxy. When sending a subsequent “delete�
+            branch on the rtpproxy. When sending a subsequent "delete"
             command to the rtpproxy, you can then stop just the session
             for a specific branch when passing the flag '1' or '2' in the
-            “unforce_rtpproxy�, or stop all sessions for a call when not
+            "unforce_rtpproxy", or stop all sessions for a call when not
             passing one of those two flags there. This is especially
             useful if you have serially forked call scenarios where
-            rtpproxy gets an “update� command for a new branch, and then a
-            “delete� command for the previous branch, which would
+            rtpproxy gets an "update" command for a new branch, and then a
+            "delete" command for the previous branch, which would
             otherwise delete the full call, breaking the subsequent
-            “lookup� for the new branch. This flag is only supported by
+            "lookup" for the new branch. This flag is only supported by
             the ngcp-mediaproxy-ng rtpproxy at the moment!
           + 2 - append second Via branch to Call-ID when sending command
             to rtpproxy. See flag '1' for its meaning.
@@ -498,7 +498,7 @@ onreply_route[2]
             command to rtpproxy. See rtpproxy_offer() for details.
             <listitem>
             </listitem>
-            t - do not include To tag to “delete� command to rtpproxy thus
+            t - do not include To tag to "delete" command to rtpproxy thus
             causing full call to be deleted. Useful for deleting unused
             rtpproxy call when 200 OK is received on a branch, where
             rtpproxy is not needed.
@@ -508,11 +508,11 @@ onreply_route[2]
 rtpproxy_destroy();
 ...
 
-5.5.  unforce_rtp_proxy()
+5.5. unforce_rtp_proxy()
 
    Same as rtpproxy_destroy().
 
-5.6.  rtpproxy_manage([flags [, ip_address]])
+5.6. rtpproxy_manage([flags [, ip_address]])
 
    Manage the RTPProxy session - it combines the functionality of
    rtpproxy_offer(), rtpproxy_answer() and unforce_rtpproxy(), detecting
@@ -542,7 +542,7 @@ rtpproxy_destroy();
 rtpproxy_manage();
 ...
 
-5.7.  start_recording()
+5.7. start_recording()
 
    This function will send a signal to the RTP Proxy to record the RTP
    stream on the RTP Proxy. This function is not supported by
@@ -589,7 +589,7 @@ start_recording();
    NOTE: if a rtpproxy is defined multiple times (in the same or diferente
    sete), all of its instances will be enables/disabled.
 
-   Example 1.13.  nh_enable_rtpp usage
+   Example 1.13. nh_enable_rtpp usage
 ...
 $ kamctl fifo nh_enable_rtpp udp:192.168.2.133:8081 0
 ...
@@ -601,52 +601,52 @@ $ kamctl fifo nh_enable_rtpp udp:192.168.2.133:8081 0
 
    No parameter.
 
-   Example 1.14.  nh_show_rtpp usage
+   Example 1.14. nh_show_rtpp usage
 ...
 $ kamctl fifo nh_show_rtpp
 ...
 
 Chapter 2. Frequently Asked Questions
 
-   2.1. What happend with “rtpproxy_disable� parameter?
+   2.1. What happend with "rtpproxy_disable" parameter?
    2.2. Where can I find more about Kamailio?
    2.3. Where can I post a question about this module?
    2.4. How can I report a bug?
 
    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 Kamailio?
+   Where can I find more about Kamailio?
 
-       Take a look at http://www.kamailio.org/.
+   Take a look at http://www.kamailio.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.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-         * Developer Mailing List -
-           http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
+   First at all check if your question was already answered on one of our
+   mailing lists:
+     * User Mailing List -
+       http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
+     * Developer Mailing List -
+       http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
 
-       E-mails regarding any stable Kamailio release should be sent to
-       <[email protected]> and e-mails regarding development
-       versions should be sent to <[email protected]>.
+   E-mails regarding any stable Kamailio release should be sent to
+   <[email protected]> and e-mails regarding development
+   versions should be sent to <[email protected]>.
 
-       If you want to keep the mail private, send it to
-       <[email protected]>.
+   If you want to keep the mail private, send it to
+   <[email protected]>.
 
    2.4.
 
-       How can I report a bug?
+   How can I report a bug?
 
-       Please follow the guidelines provided at:
-       http://sip-router.org/tracker.
+   Please follow the guidelines provided at:
+   http://sip-router.org/tracker.

+ 6 - 6
modules/tm/README

@@ -2771,12 +2771,12 @@ int *label)
    For programmatic use only. This function together with t_continue() can
    be used to implement asynchronous actions: t_suspend() saves the
    transaction, returns its identifiers, and t_continue() continues the
-   SIP request processing. (The request processing does not continue from
-   the same point in the script, a separate route block defined by the
-   parameter of t_continue() is executed instead. The reply lock is held
-   during the route block execution.) FR timer is ticking while the
-   transaction is suspended, and the transaction's failure route is
-   executed if t_continue() is not called in time.
+   SIP request/response processing. (The request/response processing does
+   not continue from the same point in the script, a separate route block
+   defined by the parameter of t_continue() is executed instead. The reply
+   lock is held during the route block execution.) FR timer is ticking
+   while the transaction is suspended, and the transaction's failure route
+   is executed if t_continue() is not called in time.
 
    Missing: message lumps are saved by t_suspend() and are not updated by
    the subsequent t_relay(). This means that the modifications made

+ 1 - 2
modules/usrloc/README

@@ -275,8 +275,7 @@ Chapter 1. Admin Guide
        retransmissions in this case.
 
    To find out how to control/select the contact maching algorithm, please
-   see the module parameter matching_mode - Section 3.23, "matching_mode
-   (integer)".
+   see the module parameter matching_mode - ???.
 
 2. Dependencies