User Tools

Site Tools


cookbooks:devel:pseudovariables

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
cookbooks:devel:pseudovariables [2020/01/14 10:32]
linuxmaniac [tcpops module variable]
cookbooks:devel:pseudovariables [2020/04/01 15:44]
miconda [$xavp(id) - XAVPs]
Line 639: Line 639:
 **$env(NAME)** - value of the environment variable named NAME **$env(NAME)** - value of the environment variable named NAME
  
 +Example:
 +
 +<code c>
 +xdbg("PATH environment variable:  $env(PATH)\n");
 +</code>
 ===== $avp(id) - AVPs ===== ===== $avp(id) - AVPs =====
  
Line 754: Line 759:
  
 xavps are read and write variables. You can create multilevel xavps, as xavps may contain xavps. xavps are read and write variables. You can create multilevel xavps, as xavps may contain xavps.
 +
 +===== $xavu(id) - XAVUs =====
 +
 +Similar to XAVPs, but with single value items, therefore there are no indexes in the naming format. XAVUs are also stored in transaction context and destroyed when the transaction is terminated.
 +
 +Examples:
 +
 +<code c>
 +$xavu(x) = 123; # <- set the value
 +$xavu(x) = 234; # <- update to the value, not adding to a list like for xavps
 +$xavu(x) = $null; # <- delete the xavu
 +$xavu(a=>b) = "xyz"; # <- two level naming supported
 +</code>
  
 ===== $hdr(name) - Headers ===== ===== $hdr(name) - Headers =====
Line 994: Line 1012:
 </code> </code>
  
-===== Benchmark module Pseudo-Variables =====+===== SIPDUMP Module ===== 
 + 
 +==== $sipdump(name) ==== 
 + 
 +**$sipdump(name)** return attributes of the message handled in the event_route[sipdump:msg]. 
 + 
 +The name can be: 
 + 
 +  * tag - the tag of processing (rcv or snd) 
 +  * buf - entire message buffer as string 
 +  * len - length of the message (length of above buf) 
 +  * af - address family 
 +  * src_ip - source IP address 
 +  * dst_ip - destination IP address 
 +  * src_port - port of source address 
 +  * dst_port - port of source address 
 +  * proto - transport protocol 
 + 
 +Example: 
 + 
 +<code c> 
 + 
 +event_route[sipdump:msg] { 
 +  if($sipdump(len) > 1024) { 
 +    ... 
 +  } 
 +
 +</code> 
 + 
 + 
 +===== Benchmark Module =====
  
 ==== $BM_time_diff ==== ==== $BM_time_diff ====
 $BM_time_diff - the time difference elapsed between calls of bm_start_timer(name) and bm_log_timer(name). The value is 0 if no bm_log_timer() was called.  $BM_time_diff - the time difference elapsed between calls of bm_start_timer(name) and bm_log_timer(name). The value is 0 if no bm_log_timer() was called. 
  
-===== Dialog module Pseudo-Variables =====+===== Dialog Module =====
  
 ==== $dlg(attr) ==== ==== $dlg(attr) ====
Line 1055: Line 1103:
 The 'key' can be any string. The 'key' can be any string.
  
-===== Erlang module Pseudo-Variables =====+===== Erlang Module =====
  
-==== Erlang pseudo-variable attributes ===+==== Attributes ===
  
 * type - get variable type. Possible types are: atom, integer, list, string, tuple, pid and ref. * type - get variable type. Possible types are: atom, integer, list, string, tuple, pid and ref.
Line 1066: Line 1114:
  
 ==== $erl_atom(name) ==== ==== $erl_atom(name) ====
 +
 //$erl_atom(name)// pseudo variable allows create analog to Erlang atom data type. //$erl_atom(name)// pseudo variable allows create analog to Erlang atom data type.
 Erlang atom is a literal, a constant with name. Formatted output pseudo variable Erlang atom is a literal, a constant with name. Formatted output pseudo variable
Line 1125: Line 1174:
 module. module.
  
-===== HTable module Pseudo-Variables =====+===== HTable Module =====
  
 ==== $sht(htable=>key) ==== ==== $sht(htable=>key) ====
Line 1278: Line 1327:
 } }
 </code> </code>
-===== Memcached module Pseudo-Variables =====+===== Memcached Module =====
  
 ==== $mct(key) ==== ==== $mct(key) ====
Line 1355: Line 1404:
 </code> </code>
  
-===== http_async_client module Pseudo-Variables =====+===== http_async_client Module =====
  
 ==== $http_req_id ==== ==== $http_req_id ====
Line 1430: Line 1479:
 </code> </code>
  
-===== TMX module Pseudo-Variables =====+===== TMX Module =====
  
 ==== $T_branch_idx ==== ==== $T_branch_idx ====
Line 1519: Line 1568:
  
  
-===== UAC module Pseudo-Variables =====+===== UAC Module =====
  
 ==== $uac_req(key) ==== ==== $uac_req(key) ====
Line 1555: Line 1604:
 } }
 </code> </code>
-===== Nathelper module Pseudo-Variables =====+===== Nathelper Module =====
  
 ==== $rr_count ==== ==== $rr_count ====
Line 1565: Line 1614:
   * If topmost Record Route in received SIP request or reply is a double Record Route, value of $rr_top_count is 2. If it a single Record Route, value of $rr_top_count is 1. If there is no Record Route(s), value of $rr_top_count is 0.   * If topmost Record Route in received SIP request or reply is a double Record Route, value of $rr_top_count is 2. If it a single Record Route, value of $rr_top_count is 1. If there is no Record Route(s), value of $rr_top_count is 0.
  
-===== MQueue module Pseudo-Variables =====+===== MQueue Module =====
  
 ==== $mqk(q) ==== ==== $mqk(q) ====
Line 1698: Line 1747:
 </code> </code>
  
-===== TLS module Pseudo-Variables =====+===== TLS Module =====
  
 ==== $tls_version ==== ==== $tls_version ====
Line 1827: Line 1876:
   * $msg(fline) - sip message first line   * $msg(fline) - sip message first line
  
-===== XHTTP module Pseudo-Variables =====+===== XHTTP Module =====
  
 ==== $hu ==== ==== $hu ====
Line 1833: Line 1882:
   * URL of http request.   * URL of http request.
  
-===== MSRP Module Pseudo Variables =====+===== MSRP Module =====
  
 This class of pseudo-variables is exported by MSRP module and give access to attributes of MSRP frames. This class of pseudo-variables is exported by MSRP module and give access to attributes of MSRP frames.
Line 1902: Line 1951:
 The internal integer id for TCP/TLS connection. The internal integer id for TCP/TLS connection.
  
-===== SIPT module Pseudo-Variables =====+===== SIPT Module =====
  
 ==== $sipt(calling_party_number.presentation) / $sipt_presentation ==== ==== $sipt(calling_party_number.presentation) / $sipt_presentation ====
Line 2117: Line 2166:
   * body - the body of the JSONRPC response   * body - the body of the JSONRPC response
  
-===== Presence Module Pseudo-Variables =====+===== Presence Module =====
  
 ==== $subs(key) - Subscription Attributes ==== ==== $subs(key) - Subscription Attributes ====
Line 2126: Line 2175:
   * uri - subscription URI. Useful in particular for subscriptions within the dialog, when the request URI in SUBSCRIBE is the Contact address from the initial subscription.   * uri - subscription URI. Useful in particular for subscriptions within the dialog, when the request URI in SUBSCRIBE is the Contact address from the initial subscription.
  
-===== Registrar Module Pseudo-Variables =====+===== Registrar Module =====
  
 ==== $ulc(profile=>attr) - Registered Contact Attributes ==== ==== $ulc(profile=>attr) - Registered Contact Attributes ====
Line 2134: Line 2183:
 It must be used after a call of “reg_fetch_contacts()”. It must be used after a call of “reg_fetch_contacts()”.
  
-===== sipcapture Module Pseudo-Variables =====+===== Sipcapture Module =====
  
 ==== $hep(key) - HEP Packet Attributes ==== ==== $hep(key) - HEP Packet Attributes ====
Line 2198: Line 2247:
 ===== pv_headers module variables ===== ===== pv_headers module variables =====
  
-  * $x_hdr +  * $x_hdr(//header_name//): //header_name// header value 
-  * $x_fu +  * $x_fu: Full From header 
-  * $x_fU +  * $x_fU: From header user part 
-  * $x_fd +  * $x_fd: From header domain part 
-  * $x_fn +  * $x_fn: From header Display Name part 
-  * $x_ft +  * $x_ft: From header Tag 
-  * $x_tu +  * $x_tu: Full To header 
-  * $x_tU +  * $x_tU: To header user part 
-  * $x_td +  * $x_td: To header domain part 
-  * $x_tn +  * $x_tn: To header Display Name part 
-  * $x_tt +  * $x_tt: To header Tag 
-  * $x_rs +  * $x_rs 
-  * $x_rr+  * $x_rr:
  
 ===== $C(xy) - Foreground and background colors ===== ===== $C(xy) - Foreground and background colors =====
cookbooks/devel/pseudovariables.txt · Last modified: 2022/04/11 15:24 by henningw