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 [2018/07/20 18:03]
miconda [$hdr(name) - Headers]
cookbooks:devel:pseudovariables [2019/02/22 10:43]
miconda [kex module variables]
Line 1: Line 1:
 {{ :cookbooks:devel:pseudovariables.png?200|}} {{ :cookbooks:devel:pseudovariables.png?200|}}
-====== Kamailio SIP Server v5.2.x (devel): Pseudo-Variables ======+====== Kamailio SIP Server v5.3.x (devel): Pseudo-Variables ======
  
 ===== Introduction ===== ===== Introduction =====
Line 1490: Line 1490:
 ==== $TV(name) ==== ==== $TV(name) ====
  
-Seconds and microseconds taken from struct timeval.+Seconds and microseconds taken from struct timeval. The time at that moment is represented by **seconds.microseconds**.
  
   * $TV(s) - seconds (cached at first call per sip message)   * $TV(s) - seconds (cached at first call per sip message)
   * $TV(u) - microseconds (cached at first call per sip message)   * $TV(u) - microseconds (cached at first call per sip message)
-  * $TV(sn) - seconds (not cached) +  * $TV(sn) - seconds (not cached, taken at that moment
-  * $TV(un) - microseconds (not cached+  * $TV(un) - microseconds (corresponding to the moment $TV(sn) is retrieved
-  * $TV(Sn) - string representation seconds.microseconds (not cached) +  * $TV(Sn) - string representation seconds.microseconds (not cached, taken at that moment)
 ===== Next hop address ===== ===== Next hop address =====
  
Line 1510: Line 1509:
   * $nh(P) - transport protocol (upper case p)   * $nh(P) - transport protocol (upper case p)
  
-===== GeoIP module Pseudo-Variables =====+===== NDB_REDIS Module ===== 
 + 
 +==== $redis(res=>key) ==== 
 + 
 +Access the attributes of the Redis response. 
 + 
 +The key can be: 
 + 
 +  * type type of the reply (as in hiredis.h) 
 +  * value - the value returned by REDIS server; 
 +  * info - in case of error from REDIS, it will contain an info message. 
 + 
 +If reply type is an array (as in hiredis.h), there are other keys available: 
 + 
 +  * size - returns number of elements in the array. 
 + 
 +  * type[n] - returns the type of the nth element in the array. type - returns array type. 
 + 
 +  * value[n] - returns value of the nth element. value - returns null for an array. You need to get each element by index. 
 + 
 +In case one of the members of the array is also an array (for example calling SMEMBERS in a MULTI/EXEC transaction), the members of the array can be accessed by adding any of the above keys, after a value[n] key. The first value[n] references the element in the first array, while the next key references an element of the referenced array. 
 + 
 +Example: 
 + 
 +<code> 
 +redis_cmd("srvN", "GET foo", "r"); 
 +xlog("===== result type: $redis(r=>type) * value: $redis(r=>value)\n"); 
 +</code> 
 + 
 +==== $redisd(key) ==== 
 + 
 +Return the corresponding value for various defines from hiredis library. 
 + 
 +The key can be: 
 + 
 +  * rpl_str - return REDIS_REPLY_STRING 
 +  * rpl_arr - return REDIS_REPLY_ARRAY 
 +  * rpl_int - return REDIS_REPLY_INTEGER 
 +  * rpl_nil - return REDIS_REPLY_NIL 
 +  * rpl_sts - return REDIS_REPLY_STATUS 
 +  * rpl_err - return REDIS_REPLY_ERROR 
 + 
 +$redisd(rpl_XYZ) can be compared with $redis(r=>type). 
 + 
 +Example: 
 + 
 +<code> 
 +redis_cmd("srvN", "GET foo", "r"); 
 +if ($redis(r=>type) == $redisd(rpl_int)) { 
 +
 +</code> 
 + 
 +===== GeoIP Module =====
  
 ==== $gip(pvc=>key) ==== ==== $gip(pvc=>key) ====
Line 2012: Line 2063:
 </code> </code>
  
 +
 +===== sdpops module variables =====
 +
 +  *  $sdp(body) - full SDP body (read only)
 +  * $sdp(sess_version) - sess-version -attribute from SDP o= -line. When set to special value -1, current value is incremented. (read + write)
 +
 +===== $sruid - Unique ID =====
 +
 +  * $sruid - return unique ID generated internally Kamailio
 ===== $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