name mode size
..
doc 040000
Makefile 100644 367B
README 100644 11.65kB
core_stats.c 100644 12.25kB
core_stats.h 100644 2.05kB
flags.c 100644 2.99kB
flags.h 100644 1.26kB
kex_mod.c 100644 5.61kB
km_core.c 100644 3kB
km_core.h 100644 1.18kB
mi_core.c 100644 8.37kB
mi_core.h 100644 1.08kB
pkg_stats.c 100644 5.44kB
pkg_stats.h 100644 1.17kB
README
KEx Module Daniel-Constantin Mierla asipto.com <miconda@gmail.com> Edited by Daniel-Constantin Mierla <miconda@gmail.com> Copyright � 2009 Daniel-Constantin Mierla __________________________________________________________________ Table of Contents 1. Admin Guide 1. Overview 2. Dependencies 2.1. Kamailio Modules 2.2. External Libraries or Applications 3. Functions 3.1. setsflag(flag) 3.2. issflagset(flag) 3.3. resetsflag(flag) 3.4. setbflag(flag [, branch]) 3.5. isbflagset(flag [, branch]) 3.6. resetbflag(flag [, branch]) 3.7. setdsturi(uri) 3.8. resetdsturi() 3.9. isdsturiset() 3.10. pv_printf(var, str) 3.11. is_myself(uri) 3.12. setdebug(level) 3.13. resetdebug() 3.14. km_append_branch([uri]) 4. MI Commands 4.1. arg 4.2. kill 4.3. pwd 4.4. uptime 4.5. version 4.6. which 4.7. get_statistics 4.8. reset_statistics 4.9. clear_statistics 5. RPC Commands 5.1. pkg.stats List of Examples 1.1. setsflag usage 1.2. issflagset usage 1.3. resetsflag usage 1.4. setbflag usage 1.5. isbflagset usage 1.6. resetbflag usage 1.7. setdsturi usage 1.8. resetdsturi usage 1.9. isdsturiset usage 1.10. pv_printf usage 1.11. is_myself usage 1.12. setdebug usage 1.13. resetdebug usage Chapter 1. Admin Guide Table of Contents 1. Overview 2. Dependencies 2.1. Kamailio Modules 2.2. External Libraries or Applications 3. Functions 3.1. setsflag(flag) 3.2. issflagset(flag) 3.3. resetsflag(flag) 3.4. setbflag(flag [, branch]) 3.5. isbflagset(flag [, branch]) 3.6. resetbflag(flag [, branch]) 3.7. setdsturi(uri) 3.8. resetdsturi() 3.9. isdsturiset() 3.10. pv_printf(var, str) 3.11. is_myself(uri) 3.12. setdebug(level) 3.13. resetdebug() 3.14. km_append_branch([uri]) 4. MI Commands 4.1. arg 4.2. kill 4.3. pwd 4.4. uptime 4.5. version 4.6. which 4.7. get_statistics 4.8. reset_statistics 4.9. clear_statistics 5. RPC Commands 5.1. pkg.stats 1. Overview This module collects extensions from Kamailio core. Kamailio Core CookBook is available at: http://kamailio.org/dokuwiki/ 2. Dependencies 2.1. Kamailio Modules 2.2. External Libraries or Applications 2.1. Kamailio Modules The following modules must be loaded before this module: * No dependencies on other Kamailio modules. 2.2. External Libraries or Applications The following libraries or applications must be installed before running Kamailio with this module loaded: * None. 3. Functions 3.1. setsflag(flag) 3.2. issflagset(flag) 3.3. resetsflag(flag) 3.4. setbflag(flag [, branch]) 3.5. isbflagset(flag [, branch]) 3.6. resetbflag(flag [, branch]) 3.7. setdsturi(uri) 3.8. resetdsturi() 3.9. isdsturiset() 3.10. pv_printf(var, str) 3.11. is_myself(uri) 3.12. setdebug(level) 3.13. resetdebug() 3.14. km_append_branch([uri]) 3.1. setsflag(flag) Set the script flag. Meaning of the parameters is as follows: * flag - the index of the script flag to be set. Can be integer or pseudo-variable with integer value. This function can be used from ANY_ROUTE. Example 1.1. setsflag usage ... setsflag("1"); ... $var(flag) = 11; setsflag("$var(flag)"); ... 3.2. issflagset(flag) Return true of the script flag is set. Meaning of the parameters is as follows: * flag - the index of the script flag to be tested. Can be integer or pseudo-variable with integer value. This function can be used from ANY_ROUTE. Example 1.2. issflagset usage ... if(issflagset("1")) { ... } ... 3.3. resetsflag(flag) Reset the script flag. Meaning of the parameters is as follows: * flag - the index of the script flag to be reset. Can be integer or pseudo-variable with integer value. This function can be used from ANY_ROUTE. Example 1.3. resetsflag usage ... resetsflag("1"); ... 3.4. setbflag(flag [, branch]) Set the branch flag. Meaning of the parameters is as follows: * flag - the index of the branch flag to be set. Can be integer or pseudo-variable with integer value. * branch - the index of the branch whose flag to be set. Can be integer or pseudo-variable with integer value. If omitted, then branch 0 is used (R-URI). This function can be used from ANY_ROUTE. Example 1.4. setbflag usage ... setbflag("1"); ... $var(flag) = 11; setbflag("$var(flag)", "1"); ... 3.5. isbflagset(flag [, branch]) Return true of the branch flag is set. Meaning of the parameters is as follows: * flag - the index of the branch flag to be tested. Can be integer or pseudo-variable with integer value. * branch - the index of the branch whose flag to be set. Can be integer or pseudo-variable with integer value. If omitted, then branch 0 is used (R-URI). This function can be used from ANY_ROUTE. Example 1.5. isbflagset usage ... if(isbflagset("1")) { ... } ... 3.6. resetbflag(flag [, branch]) Reset the branch flag. Meaning of the parameters is as follows: * flag - the index of the branch flag to be reset. Can be integer or pseudo-variable with integer value. * branch - the index of the branch whose flag to be set. Can be integer or pseudo-variable with integer value. If omitted, then branch 0 is used (R-URI). This function can be used from ANY_ROUTE. Example 1.6. resetbflag usage ... resetbflag("1"); ... 3.7. setdsturi(uri) Set the destination address URI (outbound proxy address). Meaning of the parameters is as follows: * uri - Valid SIP URI representing the address where to send the request. It must be a static string, no variables are evaluated at runtime. If you need to set outbound proxy address via a variable, use assginment to $du. This function can be used from ANY_ROUTE. Example 1.7. setdsturi usage ... setdsturi("sip:10.0.0.10"); ... 3.8. resetdsturi() Reset the destination address URI (outbound proxy address). This function can be used from ANY_ROUTE. Example 1.8. resetdsturi usage ... resetdsturi(); ... 3.9. isdsturiset() Check if the destination address URI (outbound proxy address) is set. This function can be used from ANY_ROUTE. Example 1.9. isdsturiset usage ... if(isdsturiset()) { ... } ... 3.10. pv_printf(var, str) Evalues the str and sets the resulting value to variable var. For backward compatibility reasons, the same function can be executed via 'avp_printf(var, str)'. Meaning of the parameters is as follows: * var - name of a writable variable * str - string that may contain variables which will be evaluated at runtime. This function can be used from ANY_ROUTE. Example 1.10. pv_printf usage ... pv_printf("$ru", "sip:$rU@$fd"); pv_printf("$avp(x)", "From: $fU - To: $tU"); ... 3.11. is_myself(uri) Check if the parameter matches the 'myself' condition (i.e., is a local IP or domain). Meaning of the parameters is as follows: * uri - Valid SIP URI or IP address to check against the list of local IP addresses or domains. The parameter value can contain pseudo-variables. This function can be used from ANY_ROUTE. Example 1.11. is_myself usage ... if(is_myself("$fu")) { ... } ... 3.12. setdebug(level) Set the debug log level per process. Meaning of the parameters is as follows: * level - the debug log level to be set. Can be integer or pseudo-variable with integer value. This function can be used from ANY_ROUTE. Example 1.12. setdebug usage ... setdebug("1"); ... $var(level) = 2; setdebug("$var(level)"); ... 3.13. resetdebug() Reset the local debug log level back to the value of core parameter 'debug'. This function can be used from ANY_ROUTE. Example 1.13. resetdebug usage ... resetdebug(); ... 3.14. km_append_branch([uri]) This function was replaced by append_branch() from corex module, starting with version 4.0.0. 4. MI Commands 4.1. arg 4.2. kill 4.3. pwd 4.4. uptime 4.5. version 4.6. which 4.7. get_statistics 4.8. reset_statistics 4.9. clear_statistics 4.1. arg Print command line arguments. Name: arg Parameters: none. MI FIFO Command Format: :arg:_reply_fifo_file_ _empty_line_ 4.2. kill Kill the application. Name: kill Parameters: none. MI FIFO Command Format: :kill:_reply_fifo_file_ _empty_line_ 4.3. pwd Print working directory. Name: pwd Parameters: none. MI FIFO Command Format: :pwd:_reply_fifo_file_ _empty_line_ 4.4. uptime Print uptime. Name: uptime Parameters: none. MI FIFO Command Format: :uptime:_reply_fifo_file_ _empty_line_ 4.5. version Print version information. Name: version Parameters: none. MI FIFO Command Format: :version:_reply_fifo_file_ _empty_line_ 4.6. which Print list of available MI commands. Name: which Parameters: none. MI FIFO Command Format: :which:_reply_fifo_file_ _empty_line_ 4.7. get_statistics Print the list of available internal statistics. Name: get_statistics Parameters: statsid - which statistics to be printed. If set to 'all' then all statistics are printed; if set to 'statsgroup:' then all statistics in the group are printed; if set to 'statsname' then the statistics identified by the name is printed. MI FIFO Command Format: :get_statistics:_reply_fifo_file_ _statsid_ _empty_line_ 4.8. reset_statistics Reset internal statistics. Name: reset_statistics Parameters: statsid - which statistics to be reset, give as name. MI FIFO Command Format: :reset_statistics:_reply_fifo_file_ _statsid_ _empty_line_ 4.9. clear_statistics Return statistics and reset their value in one command. Name: get_statistics Parameters: statsid - same as for get_statistics. MI FIFO Command Format: :clear_statistics:_reply_fifo_file_ _statsid_ _empty_line_ 5. RPC Commands 5.1. pkg.stats 5.1. pkg.stats Print private memory (pkg) usage statistics per process. It can take optinally a filter to print statistics only for a specific process or set of processes. If no filter is given, it prints statistics for all processes. The filter can be: * pid value - print statistics for specific process pid. * rank value - print statistics for specific process rank. * index value - print statistics for specific index in process table. Examples: kamcmd pkg.stats kamcmd pkg.stats pid 1234 kamcmd pkg.stats rank 1 kamcmd pkg.stats index 10