浏览代码

modules: readme files regenerated - modules ... [skip ci]

Kamailio Dev 8 年之前
父节点
当前提交
f9f3fe4de5

+ 4 - 4
src/modules/acc/README

@@ -854,11 +854,11 @@ modparam("acc", "log_missed_flag", 3)
 
    Log level at which accounting messages are issued to syslog.
 
-   Default value is L_NOTICE.
+   Default value is 1 (L_NOTICE).
 
    Example 1.12. log_level example
 ...
-modparam("acc", "log_level", 2)   # Set log_level to 2
+modparam("acc", "log_level", 2)   # Set log_level to 2 (L_INFO)
 ...
 
 6.13. log_facility (string)
@@ -1241,7 +1241,7 @@ modparam("acc", "cdrs_table", "acc_cdrs")
      * 0 - (default), save only unix timestamp for syslog and datetime for
        database.
      * 1 - save seconds in time_attr and microseconds in time_exten.
-     * 2 - save seconds.miliseconds in time_attr.
+     * 2 - save seconds.milliseconds in time_attr.
      * 3 - save formatted time according to time_format parameter, using
        the output of localtime().
      * 4 - save formatted time according to time_format parameter, using
@@ -1282,7 +1282,7 @@ modparam("acc", "time_attr", "seconds")
 
    Example 1.46. time_exten example
 ...
-modparam("acc", "time_exten", "micorsecs")
+modparam("acc", "time_exten", "microsecs")
 ...
 
 6.47. time_format (str)

+ 22 - 6
src/modules/app_jsdt/README

@@ -36,7 +36,8 @@ Daniel-Constantin Mierla
 
         5. RPC Commands
 
-              5.1. app_jsrt.reload
+              5.1. app_jsdt.reload
+              5.2. app_jsdt.api_list
 
         6. Example of usage
 
@@ -71,7 +72,8 @@ Chapter 1. Admin Guide
 
    5. RPC Commands
 
-        5.1. app_jsrt.reload
+        5.1. app_jsdt.reload
+        5.2. app_jsdt.api_list
 
    6. Example of usage
 
@@ -194,12 +196,13 @@ if(!jsdt_runstring('KSR.dbg("Hello World from $fU\n")'))
 
 5. RPC Commands
 
-   5.1. app_jsrt.reload
+   5.1. app_jsdt.reload
+   5.2. app_jsdt.api_list
 
-5.1.  app_jsrt.reload
+5.1.  app_jsdt.reload
 
    Marks the need to reload the js script. The actual reload is done by
-   every working process when the next call to jsrt_run() function or KEMI
+   every working process when the next call to jsdt_run() function or KEMI
    config is executed.
 
    Name: app_jsdt.reload
@@ -208,7 +211,20 @@ if(!jsdt_runstring('KSR.dbg("Hello World from $fU\n")'))
 
    Example:
 ...
-kamcmd app_jsrt.reload
+kamcmd app_jsdt.reload
+...
+
+5.2.  app_jsdt.api_list
+
+   List the functions available via Kemi framework.
+
+   Name: app_jsdt.api_list
+
+   Parameters: none
+
+   Example:
+...
+kamcmd app_jsdt.api_list
 ...
 
 6. Example of usage

+ 66 - 51
src/modules/ctl/README

@@ -16,13 +16,14 @@ Andrei Pelinescu-Onciul
         3. Parameters
 
               3.1. binrpc (string)
-              3.2. mode (integer)
-              3.3. user (integer or string)
-              3.4. group (integer or string)
-              3.5. fifo (integer)
-              3.6. autoconversion (integer)
-              3.7. binrpc_max_body_size (integer)
-              3.8. binrpc_struct_max_body_size (integer)
+              3.2. binrpc_buffer_size (integer or string)
+              3.3. mode (integer)
+              3.4. user (integer or string)
+              3.5. group (integer or string)
+              3.6. fifo (integer)
+              3.7. autoconversion (integer)
+              3.8. binrpc_max_body_size (integer)
+              3.9. binrpc_struct_max_body_size (integer)
 
         4. RPC Functions
 
@@ -34,16 +35,17 @@ Andrei Pelinescu-Onciul
 
    1.1. kamcmd example usage
    1.2. Set binrpc parameter
-   1.3. Set mode parameter
-   1.4. Set user parameter
-   1.5. Set group parameter
-   1.6. Set fifo parameter
-   1.7. Set the autoconversion parameter
-   1.8. Set the binrpc_max_body_size parameter
-   1.9. Set the binrpc_struct_max_body_size parameter
-   1.10. print usage
-   1.11. ctl.connections usage
-   1.12. ctl.who usage
+   1.3. Set binrpc_buffer_size parameter
+   1.4. Set mode parameter
+   1.5. Set user parameter
+   1.6. Set group parameter
+   1.7. Set fifo parameter
+   1.8. Set the autoconversion parameter
+   1.9. Set the binrpc_max_body_size parameter
+   1.10. Set the binrpc_struct_max_body_size parameter
+   1.11. print usage
+   1.12. ctl.connections usage
+   1.13. ctl.who usage
 
 Chapter 1. Admin Guide
 
@@ -54,13 +56,14 @@ Chapter 1. Admin Guide
    3. Parameters
 
         3.1. binrpc (string)
-        3.2. mode (integer)
-        3.3. user (integer or string)
-        3.4. group (integer or string)
-        3.5. fifo (integer)
-        3.6. autoconversion (integer)
-        3.7. binrpc_max_body_size (integer)
-        3.8. binrpc_struct_max_body_size (integer)
+        3.2. binrpc_buffer_size (integer or string)
+        3.3. mode (integer)
+        3.4. user (integer or string)
+        3.5. group (integer or string)
+        3.6. fifo (integer)
+        3.7. autoconversion (integer)
+        3.8. binrpc_max_body_size (integer)
+        3.9. binrpc_struct_max_body_size (integer)
 
    4. RPC Functions
 
@@ -113,13 +116,14 @@ $ kamcmd ps
 3. Parameters
 
    3.1. binrpc (string)
-   3.2. mode (integer)
-   3.3. user (integer or string)
-   3.4. group (integer or string)
-   3.5. fifo (integer)
-   3.6. autoconversion (integer)
-   3.7. binrpc_max_body_size (integer)
-   3.8. binrpc_struct_max_body_size (integer)
+   3.2. binrpc_buffer_size (integer or string)
+   3.3. mode (integer)
+   3.4. user (integer or string)
+   3.5. group (integer or string)
+   3.6. fifo (integer)
+   3.7. autoconversion (integer)
+   3.8. binrpc_max_body_size (integer)
+   3.9. binrpc_struct_max_body_size (integer)
 
 3.1. binrpc (string)
 
@@ -156,7 +160,7 @@ loadmodule "ctl"
 # optional listen addresses, if no one is specified,
 # ctl will listen on unixs:/tmp/ser_ctl
 
-modparam("ctl", "binrpc", "unix:/tmp/kamailio_ctl") # default
+modparam("ctl", "binrpc", "unix:/var/run/kamailio/kamailio_ctl") # default
 modparam("ctl", "binrpc", "udp:localhost:2046")
 modparam("ctl", "binrpc", "tcp:localhost:2046")
 modparam("ctl", "binrpc", "unixd:/tmp/unix_dgram")  # unix datagram
@@ -167,38 +171,49 @@ modparam("ctl", "binrpc", "localhost:3000")         # udp
 modparam("ctl", "binrpc", "tcp:3012")               # tcp any , port 3012
 modparam("ctl", "binrpc", "udp:*:3012")             # udp any , port 3012
 
-3.2. mode (integer)
+3.2. binrpc_buffer_size (integer or string)
+
+   the size of the internal buffer.
+
+   Default: 1024.
+
+   Example 1.3. Set binrpc_buffer_size parameter
+            ...
+            modparam("ctl", "binrpc_buffer_size", 4096)
+            ...
+
+3.3. mode (integer)
 
    Permissions used for the created Unix sockets or for the fifo.
 
    Default: 0600.
 
-   Example 1.3. Set mode parameter
+   Example 1.4. Set mode parameter
 modparam("ctl", "mode", 0600) # permissions
 
-3.3. user (integer or string)
+3.4. user (integer or string)
 
    Username or uid used for the created Unix sockets or for the fifo.
 
    Default: not set (the user under which SER runs).
 
-   Example 1.4. Set user parameter
+   Example 1.5. Set user parameter
 ...
 modparam("ctl", "user", "andrei")
 ...
 
-3.4. group (integer or string)
+3.5. group (integer or string)
 
    Group name or gid used for the created Unix sockets or for the fifo.
 
    Default: not set (the group under which SER runs).
 
-   Example 1.5. Set group parameter
+   Example 1.6. Set group parameter
 ...
 modparam("ctl", "group", 100)
 ...
 
-3.5. fifo (integer)
+3.6. fifo (integer)
 
    fifo used for the obsolete fifo protocol. The fifo protocol can be run
    over a real fifo, over UDP or over TCP. Format:
@@ -210,7 +225,7 @@ modparam("ctl", "group", 100)
 
    Default: not set (no fifo will be used).
 
-   Example 1.6. Set fifo parameter
+   Example 1.7. Set fifo parameter
 ...
 # old fifo support
 modparam("ctl", "fifo", "fifo:/tmp/ser_fifo")      # clasic fifo
@@ -219,7 +234,7 @@ modparam("ctl", "fifo", "udp:*:2050")              # fifo protocol over udp
 modparam("ctl", "fifo", "tcp:*:2050")              # fifo over tcp
 ...
 
-3.6. autoconversion (integer)
+3.7. autoconversion (integer)
 
    Enable or disable automatic type conversion globally, for all the
    methods parameters. If on, a type mismatch in a method parameter will
@@ -233,31 +248,31 @@ modparam("ctl", "fifo", "tcp:*:2050")              # fifo over tcp
    or to modify the target rpc to accept any type (see the rpc scan '.'
    modifier).
 
-   Example 1.7. Set the autoconversion parameter
+   Example 1.8. Set the autoconversion parameter
 ...
 modparam("ctl", "autoconversion", 1)
 ...
 
-3.7. binrpc_max_body_size (integer)
+3.8. binrpc_max_body_size (integer)
 
    Set the size of binrpc buffer for RPC reply. Value represents
    kilobytes.
 
    Default: 32 (meaning 32KB);
 
-   Example 1.8. Set the binrpc_max_body_size parameter
+   Example 1.9. Set the binrpc_max_body_size parameter
 ...
 modparam("ctl", "binrpc_max_body_size", 16)
 ...
 
-3.8. binrpc_struct_max_body_size (integer)
+3.9. binrpc_struct_max_body_size (integer)
 
    Set the size of binrpc structure buffer for RPC reply. Value represents
    kilobytes.
 
    Default: 8 (meaning 8KB);
 
-   Example 1.9. Set the binrpc_struct_max_body_size parameter
+   Example 1.10. Set the binrpc_struct_max_body_size parameter
 ...
 modparam("ctl", "binrpc_struct_max_body_size", 4)
 ...
@@ -272,9 +287,9 @@ modparam("ctl", "binrpc_struct_max_body_size", 4)
 
    List all the sockets on which the ctl module listens.
 
-   Example 1.10. print usage
+   Example 1.11. print usage
  $ kamcmd -f"[%v] %v:%v %v\n" ctl.listen
-[binrpc] unix_stream:/tmp/kamailio_ctl
+[binrpc] unix_stream:/var/run/kamailio/kamailio_ctl
 
 # note: the above command is equivalent with kamcmd listen
 
@@ -282,7 +297,7 @@ modparam("ctl", "binrpc_struct_max_body_size", 4)
 
    Returns the number of open binrpc connections (to the ctl module).
 
-   Example 1.11. ctl.connections usage
+   Example 1.12. ctl.connections usage
  $ kamcmd ctl.connections
 1
 
@@ -290,8 +305,8 @@ modparam("ctl", "binrpc_struct_max_body_size", 4)
 
    List open binrpc connections (to the ctl module).
 
-   Example 1.12. ctl.who usage
+   Example 1.13. ctl.who usage
  $ kamcmd -f"[%v] %v: %v %v -> %v %v\n" ctl.who
-[binrpc] unix_stream: <anonymous unix socket>  -> /tmp/kamailio_ctl
+[binrpc] unix_stream: <anonymous unix socket>  -> /var/run/kamailio/kamailio_ctl
 
 # note the above command is equivalent to kamcmd who

+ 2 - 3
src/modules/dialog/README

@@ -1428,10 +1428,9 @@ redlg_setflag("1");
 
    Meaning of the parameters is as follows:
      * side - where to send the BYE. It can be: 'caller', 'callee', or
-       both.
+       'all' (send to both sides).
 
-   This function can be used from BRANCH_ROUTE, REQUEST_ROUTE,
-   ONREPLY_ROUTE and FAILURE_ROUTE.
+   This function can be used from ANY_ROUTE.
 
    Example 1.63. dlg_bye usage
 ...

+ 13 - 13
src/modules/dispatcher/README

@@ -326,7 +326,7 @@ Chapter 1. Admin Guide
 
 3.1. list_file (string)
 
-   Path to the file with destination sets.
+   Path to the file with destination sets (destination groups).
 
    Default value is “/etc/kamailio/dispatcher.list” or
    “/usr/local/etc/kamailio/dispatcher.list”.
@@ -338,7 +338,7 @@ modparam("dispatcher", "list_file", "/var/run/kamailio/dispatcher.list")
 
 3.2. db_url (string)
 
-   If you want to load the sets of gateways from the database you must set
+   If you want to load the list of gateways from the database you must set
    this parameter.
 
    Default value is “NULL” (disable DB support).
@@ -350,7 +350,7 @@ modparam("dispatcher", "db_url", "mysql://user:passwb@localhost/database")
 
 3.3. table_name (string)
 
-   If you want to load the sets of gateways from the database you must set
+   If you want to load the list of gateways from the database you must set
    this parameter as the database name.
 
    Default value is “dispatcher”.
@@ -362,7 +362,7 @@ modparam("dispatcher", "table_name", "my_dispatcher")
 
 3.4. setid_col (string)
 
-   The column's name in the database storing the gateway's group id.
+   The column's name in the database storing the gateway's set (group) id.
 
    Default value is “setid”.
 
@@ -1207,8 +1207,8 @@ kamcmd dispatcher.ping_active 0
 6.1. Destination List File
 
    Each destination point must be on one line. First token is the set id
-   (an integer value), followed by destination address (s string value in
-   SIP URI format).
+   (an integer value, also referenced by group id), followed by
+   destination address (string value in full SIP URI format).
 
    Optionally, these fields can be followed by:
      * flags (listed by index - can be bitwise mask of values): 0 (value
@@ -1259,21 +1259,21 @@ setid(int) destination(sip uri) flags(int,opt) priority(int,opt) attrs(str,opt)
 
    Example 1.42. dispatcher list file
 ...
-# $Id$
-# dispatcher destination sets
+#
+# dispatcher destination sets (groups)
 #
 
 # line format
-# setit(int) destination(sip uri) flags(int,opt) priority(int,opt) attributes(st
+# setid(int) destination(sip uri) flags(int,opt) priority(int,opt) attributes(st
 r,opt)
 
 # proxies
-2 sip:127.0.0.1:5080
-2 sip:127.0.0.1:5082
+2 sip:127.0.0.1:5080;transport=tcp 0 10 class=4;prefix=448;strip=2
+2 sip:127.0.0.1:5082;px=vx 0 5 duid=abc;socket=udp:192.168.0.125:5060;pipe=p10
 
 # gateways
-1 sip:127.0.0.1:7070
-1 sip:127.0.0.1:7072
+1 sip:127.0.0.1:7070 0 0 duid=xyz;maxload=20
+1 sip:127.0.0.1:7072 0 5
 1 sip:127.0.0.1:7074
 
 ...

+ 25 - 20
src/modules/domain/README

@@ -35,8 +35,8 @@ Juha Heinanen
 
               4.1. is_from_local()
               4.2. is_uri_host_local()
-              4.3. is_domain_local(pseudo_variable)
-              4.4. lookup_domain(domain[, prefix])
+              4.3. is_domain_local(domain)
+              4.4. lookup_domain(domain [, prefix])
 
         5. RPC Commands
 
@@ -89,8 +89,8 @@ Chapter 1. Admin Guide
 
         4.1. is_from_local()
         4.2. is_uri_host_local()
-        4.3. is_domain_local(pseudo_variable)
-        4.4. lookup_domain(domain[, prefix])
+        4.3. is_domain_local(domain)
+        4.4. lookup_domain(domain [, prefix])
 
    5. RPC Commands
 
@@ -223,8 +223,8 @@ modparam("domain", "register_myself", 1)
 
    4.1. is_from_local()
    4.2. is_uri_host_local()
-   4.3. is_domain_local(pseudo_variable)
-   4.4. lookup_domain(domain[, prefix])
+   4.3. is_domain_local(domain)
+   4.4. lookup_domain(domain [, prefix])
 
 4.1. is_from_local()
 
@@ -259,10 +259,10 @@ if (is_uri_host_local()) {
 };
 ...
 
-4.3. is_domain_local(pseudo_variable)
+4.3. is_domain_local(domain)
 
-   This function checks if the domain contained in the pseudo_variable is
-   local.
+   This function checks if the domain contained in the parameter is local.
+   The parameter can be a static string or contain pseduo-variables.
 
    This function is a generalized form of the is_from_local() and
    is_uri_host_local() functions, being able to completely replace them
@@ -278,28 +278,33 @@ if (is_uri_host_local()) {
 ...
 if (is_domain_local("$rd")) {
         ...
-};
+}
+if (is_domain_local("my.domain.com")) {
+        ...
+}
 if (is_domain_local("$fd")) {
         ...
-};
+}
 if (is_domain_local("$avp(some_avp_alias)")) {
         ...
-};
+}
 if (is_domain_local("$avp(i:850)")) {
         ...
-};
+}
 if (is_domain_local("$avp(s:some_avp)")) {
         ...
-};
+}
 ...
 
-4.4. lookup_domain(domain[, prefix])
+4.4. lookup_domain(domain [, prefix])
+
+   This function checks if domain given in domain argument is local and,
+   if so, adds attributes associated with domain's id (did) to AVPs. If
+   prefix argument (string) is given, names of attributes are prefixes by
+   it. In addition to attributes given in domain_attrs table, AVP named
+   did containing the did of domain is added.
 
-   This function checks if domain given in domain argument (pseudo
-   variable) is local and, if so, adds attributes associated with domain's
-   id (did) to AVPs. If prefix argument (string) is given, names of
-   attributes are prefixes by it. In addition to attributes given in
-   domain_attrs table, AVP did containing did of domain is added.
+   Both parameters can contain pseudo-variables.
 
    This function can be used from REQUEST_ROUTE, FAILURE_ROUTE,
    BRANCH_ROUTE, and LOCAL_ROUTE.

+ 21 - 15
src/modules/enum/README

@@ -27,9 +27,9 @@ Otmar Lendl
 
         4. Functions
 
-              4.1. enum_query(["suffix"[,"service"]])
-              4.2. enum_pv_query("pvar"[,"suffix"[,"service"]])
-              4.3. i_enum_query(["suffix"[,"service"]])
+              4.1. enum_query(["suffix" [,"service"]])
+              4.2. enum_pv_query("pvar" [,"suffix" [,"service"]])
+              4.3. i_enum_query(["suffix" [,"service"]])
               4.4. is_from_user_enum()
 
    List of Examples
@@ -61,9 +61,9 @@ Chapter 1. Admin Guide
 
    4. Functions
 
-        4.1. enum_query(["suffix"[,"service"]])
-        4.2. enum_pv_query("pvar"[,"suffix"[,"service"]])
-        4.3. i_enum_query(["suffix"[,"service"]])
+        4.1. enum_query(["suffix" [,"service"]])
+        4.2. enum_pv_query("pvar" [,"suffix" [,"service"]])
+        4.3. i_enum_query(["suffix" [,"service"]])
         4.4. is_from_user_enum()
 
 1. Overview
@@ -224,12 +224,12 @@ modparam("enum", "bl_algorithm", "txt")
 
 4. Functions
 
-   4.1. enum_query(["suffix"[,"service"]])
-   4.2. enum_pv_query("pvar"[,"suffix"[,"service"]])
-   4.3. i_enum_query(["suffix"[,"service"]])
+   4.1. enum_query(["suffix" [,"service"]])
+   4.2. enum_pv_query("pvar" [,"suffix" [,"service"]])
+   4.3. i_enum_query(["suffix" [,"service"]])
    4.4. is_from_user_enum()
 
-4.1.  enum_query(["suffix"[,"service"]])
+4.1.  enum_query(["suffix" [,"service"]])
 
    The function performs an enum query and rewrites the Request-URI with
    the result of the query. See Section 1, “Overview” for more
@@ -241,6 +241,8 @@ modparam("enum", "bl_algorithm", "txt")
      * service - Service string to be used in the service field. String
        may contain pseudo variables.
 
+   Parameters can include pseudo-variables.
+
    This function can be used from REQUEST_ROUTE.
 
    Example 1.8. enum_query usage
@@ -265,11 +267,11 @@ enum_query("e164.arpa.","voice");
 enum_query("e164.arpa.","+sip+voice:sip");
 ...
 
-4.2.  enum_pv_query("pvar"[,"suffix"[,"service"]])
+4.2.  enum_pv_query("pvar" [,"suffix" [,"service"]])
 
-   The function performs an enum query on E.164 number stored in its
-   pseudo variable argument and rewrites the Request-URI with the result
-   of the query. See Section 1, “Overview” for more information.
+   The function performs an enum query on E.164 number stored in its first
+   argument and rewrites the Request-URI with the result of the query. See
+   Section 1, “Overview” for more information.
 
    Meaning of the parameters is as follows:
      * pvar - Pseudo variable that holds an E.164 number on which enum
@@ -277,6 +279,8 @@ enum_query("e164.arpa.","+sip+voice:sip");
      * suffix - Suffix to be appended to the domain name.
      * service - Service string to be used in the service field.
 
+   Parameters can include pseudo-variables.
+
    This function can be used from REQUEST_ROUTE.
 
    Example 1.9. enum_pv_query usage
@@ -301,13 +305,15 @@ enum_pv_query("$avp(i:100)","e164.arpa.","voice");
 enum_pv_query("$avp(i:100)","e164.arpa.","+sip+voice:sip");
 ...
 
-4.3.  i_enum_query(["suffix"[,"service"]])
+4.3.  i_enum_query(["suffix" [,"service"]])
 
    The function performs an enum query and rewrites the Request-URI with
    the result of the query. This the Infrastructure-ENUM version of
    enum_query(). The only difference to enum_query() is in the calculation
    of the FQDN where NAPTR records are looked for.
 
+   Parameters can include pseudo-variables.
+
    See
    ftp://ftp.rfc-editor.org/in-notes/internet-drafts/draft-haberler-carrie
    r-enum-01.txt for the rationale behind this function.

+ 42 - 26
src/modules/nathelper/README

@@ -60,6 +60,7 @@ Ovidiu Sas
               4.12. keepalive_timeout (int)
               4.13. udpping_from_path (int)
               4.14. append_sdp_oldmediaip (int)
+              4.15. filter_server_id (int)
 
         5. Functions
 
@@ -104,19 +105,20 @@ Ovidiu Sas
    1.12. Set keepalive_timeout parameter
    1.13. Set udpping_from_path parameter
    1.14. Set append_sdp_oldmediaip parameter
-   1.15. fix_nated_contact usage
-   1.16. fix_nated_sdp usage
-   1.17. add_rcv_paramer usage
-   1.18. fix_nated_register usage
-   1.19. nat_uac_test usage
-   1.20. is_rfc1918 usage
-   1.21. add_contact_alias usage
-   1.22. handle_ruri_alias usage
-   1.23. set_contact_alias usage
-   1.24. $rr_count usage
-   1.25. $rr_top_count usage
-   1.26. nathelper.enable_ping usage
-   1.27. @nathelper.rewrite_contact usage
+   1.15. Set filter_server_id parameter
+   1.16. fix_nated_contact usage
+   1.17. fix_nated_sdp usage
+   1.18. add_rcv_paramer usage
+   1.19. fix_nated_register usage
+   1.20. nat_uac_test usage
+   1.21. is_rfc1918 usage
+   1.22. add_contact_alias usage
+   1.23. handle_ruri_alias usage
+   1.24. set_contact_alias usage
+   1.25. $rr_count usage
+   1.26. $rr_top_count usage
+   1.27. nathelper.enable_ping usage
+   1.28. @nathelper.rewrite_contact usage
 
 Chapter 1. Admin Guide
 
@@ -145,6 +147,7 @@ Chapter 1. Admin Guide
         4.12. keepalive_timeout (int)
         4.13. udpping_from_path (int)
         4.14. append_sdp_oldmediaip (int)
+        4.15. filter_server_id (int)
 
    5. Functions
 
@@ -242,6 +245,7 @@ Chapter 1. Admin Guide
    4.12. keepalive_timeout (int)
    4.13. udpping_from_path (int)
    4.14. append_sdp_oldmediaip (int)
+   4.15. filter_server_id (int)
 
 4.1. force_socket (string)
 
@@ -444,6 +448,18 @@ modparam("nathelper", "udpping_from_path", 1)
 modparam("nathelper", "append_sdp_oldmediaip", 1)
 ...
 
+4.15. filter_server_id (int)
+
+   Filter contacts by “server_id” core parameter. Use this parameter to
+   limit pinging. When set to “1”, only proxy instances which send packets
+   are those where core server_id matches server_id saved in usrloc.
+   Default value is “0” (disabled).
+
+   Example 1.15. Set filter_server_id parameter
+...
+modparam("nathelper", "filter_server_id", 1)
+...
+
 5. Functions
 
    5.1. fix_nated_contact()
@@ -464,7 +480,7 @@ modparam("nathelper", "append_sdp_oldmediaip", 1)
    This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
    BRANCH_ROUTE.
 
-   Example 1.15. fix_nated_contact usage
+   Example 1.16. fix_nated_contact usage
 ...
 if (search("User-Agent: Cisco ATA.*") {fix_nated_contact();};
 ...
@@ -494,7 +510,7 @@ if (search("User-Agent: Cisco ATA.*") {fix_nated_contact();};
    This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
    FAILURE_ROUTE, BRANCH_ROUTE.
 
-   Example 1.16. fix_nated_sdp usage
+   Example 1.17. fix_nated_sdp usage
 ...
 if (search("User-Agent: Cisco ATA.*") {fix_nated_sdp("3");};
 ...
@@ -516,7 +532,7 @@ if (search("User-Agent: Cisco ATA.*") {fix_nated_sdp("3");};
 
    This function can be used from REQUEST_ROUTE.
 
-   Example 1.17. add_rcv_paramer usage
+   Example 1.18. add_rcv_paramer usage
 ...
 add_rcv_param(); # add the parameter to the Contact header
 ....
@@ -536,7 +552,7 @@ add_rcv_param("1"); # add the parameter to the Contact URI
 
    This function can be used from REQUEST_ROUTE.
 
-   Example 1.18. fix_nated_register usage
+   Example 1.19. fix_nated_register usage
 ...
 fix_nated_register();
 ...
@@ -570,7 +586,7 @@ fix_nated_register();
    This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
    FAILURE_ROUTE, BRANCH_ROUTE.
 
-   Example 1.19. nat_uac_test usage
+   Example 1.20. nat_uac_test usage
 ...
 if(nat_uac_test("19")) {
     rtpproxy_manage("co");
@@ -584,7 +600,7 @@ if(nat_uac_test("19")) {
 
    This function can be used from ANY_ROUTE.
 
-   Example 1.20. is_rfc1918 usage
+   Example 1.21. is_rfc1918 usage
 ...
 if(is_rfc1918("$rd")) {
     # domain in r-uri is private address
@@ -601,7 +617,7 @@ if(is_rfc1918("$rd")) {
    This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
    BRANCH_ROUTE, and LOCAL_ROUTE.
 
-   Example 1.21. add_contact_alias usage
+   Example 1.22. add_contact_alias usage
 ...
     if (!is_present_hf("Record-Route")) {
         if (!add_contact_alias("$var(src_ip)", "$Rp", "tcp")) {
@@ -628,7 +644,7 @@ if(is_rfc1918("$rd")) {
    This function can be used from REQUEST_ROUTE, BRANCH_ROUTE, and
    LOCAL_ROUTE.
 
-   Example 1.22. handle_ruri_alias usage
+   Example 1.23. handle_ruri_alias usage
 ...
     if ($du == "") {
         handle_ruri_alias();
@@ -657,7 +673,7 @@ if(is_rfc1918("$rd")) {
    This function can be used from REQUEST_ROUTE, ONREPLY_ROUTE,
    BRANCH_ROUTE, and FAILURE_ROUTE.
 
-   Example 1.23. set_contact_alias usage
+   Example 1.24. set_contact_alias usage
 ...
     if (!is_present_hf("Record-Route")) {
         if (!set_contact_alias()) {
@@ -677,7 +693,7 @@ if(is_rfc1918("$rd")) {
 
    Number of Record Routes in received SIP request or reply.
 
-   Example 1.24. $rr_count usage
+   Example 1.25. $rr_count usage
 ...
     $avp(rr_count) = $rr_count;
 ...
@@ -689,7 +705,7 @@ if(is_rfc1918("$rd")) {
    value of $rr_top_count is 1. If there is no Record Route(s), value of
    $rr_top_count is 0.
 
-   Example 1.25. $rr_top_count usage
+   Example 1.26. $rr_top_count usage
 ...
     if ($rr_count == $avp(rr_count) + $rr_top_count) {
         route(ADD_CONTACT_ALIAS);
@@ -707,7 +723,7 @@ if(is_rfc1918("$rd")) {
 
    The function takes only one parameter - a number in decimal format.
 
-   Example 1.26. nathelper.enable_ping usage
+   Example 1.27. nathelper.enable_ping usage
 ...
 $ kamcmd nathelper.enable_ping 1
 ...
@@ -722,7 +738,7 @@ $ kamcmd nathelper.enable_ping 1
    counted from 1. Only IP:port is rewritten, remaining part are left
    unchanged. Full nameaddr is supported.
 
-   Example 1.27. @nathelper.rewrite_contact usage
+   Example 1.28. @nathelper.rewrite_contact usage
 ...
 $c = @nathelper.rewrite_contact[1];
 ...

+ 3 - 2
src/modules/pipelimit/README

@@ -351,7 +351,7 @@ kamcmd cfg.set_now_string pipelimit reply_reason "Limiting"
        ratelimit module for details on each algorithm.
      * limit - the integer or pseudovariable with the limit value.
 
-   This function can be used from REQUEST_ROUTE.
+   This function can be used from ANY_ROUTE.
 
    Example 1.12. pl_check usage
 ...
@@ -419,7 +419,8 @@ with unexpected retcode=$var(check_result)\n");
      * min - the minimum value of "Retry-After" header.
      * max - the maximum value of "Retry-After" header.
 
-   This function can be used from REQUEST_ROUTE.
+   This function can be used from
+   REQUEST_ROUTE|BRANCH_ROUTE|FAILURE_ROUTE|ONSEND_ROUTE.
 
    Example 1.13. pl_drop usage
 ...

+ 8 - 6
src/modules/presence/README

@@ -879,12 +879,14 @@ if(method=="SUBSCRIBE")
 
 4.3.  pres_auth_status(watcher_uri, presentity_uri)
 
-   The function checks if watcher is authorized to subscribe event
-   'presence' of presentity. Both watcher_uri and presentity_uri are
-   pseudo variables. Function returns ACTIVE_STATUS, if subscription is
-   allowed and PENDING_STATUS, TERMINATED_STATUS, or WAITING_STATUS
-   otherwise. See presence/subscribe.h for the corresponding integer
-   codes. In case of error, function returns -1.
+   The function checks if watcher URI is authorized to subscribe event
+   'presence' of presentity URI. Both watcher_uri and presentity_uri can
+   be static strings or contain pseudo variables.
+
+   The function returns ACTIVE_STATUS, if subscription is allowed, and
+   PENDING_STATUS, TERMINATED_STATUS, or WAITING_STATUS otherwise. See
+   presence/subscribe.h for the corresponding integer codes. In case of
+   error, function returns -1.
 
    This function can be used from REQUEST_ROUTE.
 

+ 12 - 31
src/modules/ratelimit/README

@@ -51,7 +51,7 @@ Hendrik Scholz
         6. Functions
 
               6.1. rl_check([pvar])
-              6.2. rl_check_pipe([pipe_no])
+              6.2. rl_check_pipe(pipe_no)
 
         7. RPC Commands
 
@@ -103,7 +103,7 @@ Chapter 1. Admin Guide
    6. Functions
 
         6.1. rl_check([pvar])
-        6.2. rl_check_pipe([pipe_no])
+        6.2. rl_check_pipe(pipe_no)
 
    7. RPC Commands
 
@@ -325,7 +325,7 @@ modparam("ratelimit", "pipe", "4:NETWORK:10000")
 6. Functions
 
    6.1. rl_check([pvar])
-   6.2. rl_check_pipe([pipe_no])
+   6.2. rl_check_pipe(pipe_no)
 
 6.1.  rl_check([pvar])
 
@@ -334,8 +334,7 @@ modparam("ratelimit", "pipe", "4:NETWORK:10000")
    type, and then the pipe will be identified based on the matched queue.
    If a pipe number is provided as a parameter, then the given pipe number
    will be used for identifying the ratelimit algorithm. The pipe number
-   must be provided via a pseudovariable. It is recommended to provide the
-   pipe number via an integer pseudovariable.
+   must be provided as number or via a pseudovariable.
 
    The method will return an error code if the limit for the matched
    algorithm is reached.
@@ -344,7 +343,7 @@ modparam("ratelimit", "pipe", "4:NETWORK:10000")
      * pvar - the pseudovariable holding the pipe id to be used by
        ratelimit.
 
-   This function can be used from REQUEST_ROUTE.
+   This function can be used from ANY_ROUTE.
 
    Example 1.4. rl_check usage
 ...
@@ -353,7 +352,7 @@ modparam("ratelimit", "pipe", "4:NETWORK:10000")
                 append_to_reply("Retry-After: 5\r\n");
                 sl_send_reply("503","Limiting");
                 exit;
-        };
+        }
 ...
         # use pipe no 1 for the current method
         # set int pvar to 1
@@ -362,25 +361,14 @@ modparam("ratelimit", "pipe", "4:NETWORK:10000")
                 append_to_reply("Retry-After: 5\r\n");
                 sl_send_reply("503","Limiting");
                 exit;
-        };
-...
-        # use pipe no 1 for the current method
-        # set str pvar to 1
-        $var(p) = "1";
-        if (!rl_check("$var(p)") {
-                append_to_reply("Retry-After: 5\r\n");
-                sl_send_reply("503","Limiting");
-                exit;
-        };
+        }
 ...
 
-6.2.  rl_check_pipe([pipe_no])
+6.2.  rl_check_pipe(pipe_no)
 
-   Check the current request against the matched ratelimit algorithm. If
-   no parameter is provided, the queue will be matched based on method
-   type, and then the pipe will be identified based on the matched queue.
-   If a pipe number is provided as a parameter, then the given pipe number
-   will be used for identifying the ratelimit algorithm.
+   Check the current request against the matched ratelimit algorithm of
+   the pipe provided as parameter. The parameter can be provided as number
+   or variable.
 
    The method will return an error code if the limit for the matched
    algorithm is reached.
@@ -391,20 +379,13 @@ modparam("ratelimit", "pipe", "4:NETWORK:10000")
    This function can be used from REQUEST_ROUTE.
 
    Example 1.5. rl_check_pipe usage
-...
-        # perform queue/pipe match for current method
-        if (!rl_check_pipe()) {
-                append_to_reply("Retry-After: 5\r\n");
-                sl_send_reply("503","Limiting");
-                exit;
-        };
 ...
         # use pipe no 1 for the current method
         if (!rl_check_pipe("1") {
                 append_to_reply("Retry-After: 5\r\n");
                 sl_send_reply("503","Limiting");
                 exit;
-        };
+        }
 ...
 
 7. RPC Commands

+ 1 - 1
src/modules/rtimer/README

@@ -123,7 +123,7 @@ modparam("rtimer", "timer", "name=ta;interval=10;mode=1;")
 modparam("rtimer", "exec", "timer=ta;route=8")
 
 route[8] {
-    xlog("timer routine: time is %TF\n");
+    xlog("timer routine: time is $TF\n");
     # delete from my sql cache table entries older than 2H
     sql_query("delete from kamailio_cache where last_updated<$TS-3600");
 }

+ 32 - 19
src/modules/rtpproxy/README

@@ -75,8 +75,8 @@ Carsten Bock
               5.7. rtpproxy_stream2uac(prompt_name, count),
               5.8. rtpproxy_stream2uas(prompt_name, count)
               5.9. rtpproxy_stop_stream2uac(),
-              5.10. start_recording()
-              5.11. rtpproxy_stop_stream2uas(prompt_name, count)
+              5.10. rtpproxy_stop_stream2uas()
+              5.11. start_recording()
 
         6. Exported Pseudo Variables
 
@@ -109,10 +109,11 @@ Carsten Bock
    1.16. rtpproxy_destroy usage
    1.17. rtpproxy_manage usage
    1.18. rtpproxy_stream2xxx usage
-   1.19. start_recording usage
-   1.20. $rtpstat-Usage
-   1.21. rtpproxy.enable usage
-   1.22. rtpproxy.list usage
+   1.19. rtpproxy_stop_stream2uas usage
+   1.20. start_recording usage
+   1.21. $rtpstat-Usage
+   1.22. rtpproxy.enable usage
+   1.23. rtpproxy.list usage
 
 Chapter 1. Admin Guide
 
@@ -150,8 +151,8 @@ Chapter 1. Admin Guide
         5.7. rtpproxy_stream2uac(prompt_name, count),
         5.8. rtpproxy_stream2uas(prompt_name, count)
         5.9. rtpproxy_stop_stream2uac(),
-        5.10. start_recording()
-        5.11. rtpproxy_stop_stream2uas(prompt_name, count)
+        5.10. rtpproxy_stop_stream2uas()
+        5.11. start_recording()
 
    6. Exported Pseudo Variables
 
@@ -415,8 +416,8 @@ xlog("L_INFO", "Chose rtpp instance $var(RTP_INSTANCE)\n");
    5.7. rtpproxy_stream2uac(prompt_name, count),
    5.8. rtpproxy_stream2uas(prompt_name, count)
    5.9. rtpproxy_stop_stream2uac(),
-   5.10. start_recording()
-   5.11. rtpproxy_stop_stream2uas(prompt_name, count)
+   5.10. rtpproxy_stop_stream2uas()
+   5.11. start_recording()
 
 5.1.  set_rtp_proxy_set(setid)
 
@@ -714,7 +715,23 @@ rtpproxy_manage();
 
    These functions can be used from REQUEST_ROUTE, ONREPLY_ROUTE.
 
-5.10.  start_recording()
+5.10.  rtpproxy_stop_stream2uas()
+
+   See function rtpproxy_stop_stream2uac().
+
+   Example 1.19. rtpproxy_stop_stream2uas usage
+...
+    if (is_method("INVITE")) {
+        rtpproxy_offer();
+        if (is_audio_on_hold()) {
+            rtpproxy_stream2uas("/var/rtpproxy/prompts/music_on_hold", "-1");
+        } else {
+            rtpproxy_stop_stream2uas();
+        };
+    };
+...
+
+5.11.  start_recording()
 
    This function will send a signal to the RTP-Proxy to record the RTP
    stream on the RTP-Proxy. This function is only supported by Sippy
@@ -722,15 +739,11 @@ rtpproxy_manage();
 
    This function can be used from REQUEST_ROUTE and ONREPLY_ROUTE.
 
-   Example 1.19. start_recording usage
+   Example 1.20. start_recording usage
 ...
 start_recording();
 ...
 
-5.11.  rtpproxy_stop_stream2uas(prompt_name, count)
-
-   See function rtpproxy_stop_stream2uac(prompt_name, count).
-
 6. Exported Pseudo Variables
 
    6.1. $rtpstat
@@ -742,7 +755,7 @@ start_recording();
    packet-counters. The statistics must be retrieved before the session is
    deleted (before unforce_rtpproxy()).
 
-   Example 1.20. $rtpstat-Usage
+   Example 1.21. $rtpstat-Usage
 ...
     append_hf("X-RTP-Statistics: $rtpstat\r\n");
 ...
@@ -765,7 +778,7 @@ start_recording();
    NOTE: if a rtpproxy is defined multiple times (in the same or different
    sets), all of its instances will be enabled/disabled.
 
-   Example 1.21.  rtpproxy.enable usage
+   Example 1.22.  rtpproxy.enable usage
 ...
 $ kamcmd rtpproxy.enable udp:192.168.2.133:8081 0
 ...
@@ -777,7 +790,7 @@ $ kamcmd rtpproxy.enable udp:192.168.2.133:8081 0
 
    No parameter.
 
-   Example 1.22.  rtpproxy.list usage
+   Example 1.23.  rtpproxy.list usage
 ...
 $ kamcmd rtpproxy.list
 ...

+ 20 - 0
src/modules/sdpops/README

@@ -298,6 +298,26 @@ if(sdp_with_active_media("video"))
    Remove the streams that match on 'm=type ...' line. The parameter can
    be static string or variable holding the media type.
 
+   Note: If this is executed on a request, the callee should reply without
+   the Media too. However, RFC 3264 mandates, that the reply should
+   contain the exact same number of "m=" lines as the request.
+
+
+     6 Generating the Answer
+
+     [...]
+
+     For each "m=" line in the offer, there MUST be a corresponding "m="
+     line in the answer. The answer MUST contain exactly the same number of
+     "m=" lines as the offer. This allows for streams to be matched up based
+     on their order. This implies that if the offer contained zero "m="
+     lines, the answer MUST contain zero "m=" lines.
+
+                                                                  --RFC 3264
+
+   So this may not work with all Endpoints, especially if they follow RFC
+   3264 precisely (e.g. JSSIP).
+
    This function can be used from ANY_ROUTE.
 
    Example 1.8. sdp_remove_media usage

+ 1 - 1
src/modules/sl/README

@@ -1,4 +1,4 @@
-The SL Module - Statless request handling
+The SL Module - Stateless request handling
 
 Bogdan Iancu
 

+ 1 - 1
src/modules/tm/README

@@ -1589,7 +1589,7 @@ modparam("tm", "dns_reuse_rcv_socket", 1)
 3.46. xavp_contact (string)
 
    The name of XAVP storing the attributes per contact. This must be the
-   same as the usrloc parameter xavp_contacts.
+   same as the usrloc parameter xavp_contact.
 
    Default value is “NULL”.
 

+ 1 - 1
src/modules/usrloc/README

@@ -816,7 +816,7 @@ modparam("usrloc", "timer_procs", 4)
 
    Example 1.34. Set xavp_contact parameter
 ...
-modparam("usrloc", "xavp_contact", "ulattrs")
+modparam("tm|usrloc", "xavp_contact", "ulattrs")
 ...
 
 3.35. db_ops_ruid (int)

+ 22 - 0
src/modules/xhttp/README

@@ -40,6 +40,10 @@ Alex Balashov
 
               5.1. xhttp_reply(code, reason, ctype, body)
 
+        6. Event Routes
+
+              6.1. xhttp:request
+
    List of Examples
 
    1.1. Set url_skip parameter
@@ -67,6 +71,10 @@ Chapter 1. Admin Guide
 
         5.1. xhttp_reply(code, reason, ctype, body)
 
+   6. Event Routes
+
+        6.1. xhttp:request
+
 1. Overview
 
    This module provides basic HTTP/1.0 server functionality inside
@@ -180,3 +188,17 @@ event_route[xhttp:request] {
         "<html><body>OK - [$si:$sp]</body></html>");
 }
 ...
+
+6. Event Routes
+
+   6.1. xhttp:request
+
+6.1.  xhttp:request
+
+   The event route is executed when a new HTTP request is received.
+...
+event_route[xhttp:request] {
+    xhttp_reply("200", "OK", "text/html",
+        "<html><body>OK - [$si:$sp]</body></html>");
+}
+...