[Kamailio-Devel] new features: $T_req(pv) and $T_rpl(pv)

Daniel-Constantin Mierla miconda at gmail.com
Tue Dec 9 10:34:22 CET 2008


Hello,

the TM module introduces two new features:
- access to SIP request attributes while processing a reply belonging to 
same transaction
- access to SIP reply attributes while processing a request belonging to 
same transaction

Functionalities come as pseudo-variables, $T_req(pv) and $T_rpl(pv) - 
where pv can be any pseudo-variable, check documents at:
http://www.kamailio.org/dokuwiki/doku.php/pseudovariables:devel#tm_module_pseudo-variables

The new pseudo-variables can be used:
- in failure_route to get the attributes of the reply causing the 
failure route. You can take decisions what to do with the request based 
on reply details
- in onreply_route to get the attributes of the request. you can take 
decision what to do with the reply based on request attributes.
- in acc to store data from reply
- in C code (modules)

Note that couple of PV are disabled for these cases (PV will return 
null) - these are the PV that alter/depend on the context of the 
processed message, like $Ts, $Tf (but you can use $TS and $TF), $time, 
destination set attributes. The $avp() will be  current avps, as they 
are stored in a global list. Also, in case there is a timeout or other 
reply generated by kamailio itself, $T_rpl(pv) will return null as there 
is no real reply structure behind.

Example, print the source ip of the reply in failure route:

failure_route[1] {
    xlog("reply received from: $T_rpl($si)\n");
}

Cheers,
Daniel

-- 
Daniel-Constantin Mierla
http://www.asipto.com




More information about the Devel mailing list