[Kamailio-Users] t_relay("0x02")

Juha Heinanen jh at tutpro.com
Sat Oct 18 18:27:51 CEST 2008


tm readme on t_relay flag "0x02" says:

  0x02 - do not internally send a negative reply in case of forward
  failure (due internal error, bad RURI, bad message, etc). When a forward
  failure occurs, no SIP request is relayed and therefore no negative
  reply or timeout will show up on the failure_route (if one is set). It
  applies only when the transaction is created. By default one negative
  reply is sent. Useful if you want to implement a serial forking in case
  of failure.

i don't quite understand the statement:

  It applies only when the transaction is created.

what does "It" refer to?

i did some experiments with new lcr implementation and if, for example,
tcp connection to a gw cannot be established, then t_relay without
"0x02" flag generates 477 reply to caller and, indeed, failure route is
not executed.  

so i need test if t_relay("0x02") failed due to "send failed" and handle
selection of next gw in the same route block where t_relay("0x02") was
called.  this is inconvenient, because there already exists a failure
route block that does all that and now its code needs to be at least
partially duplicated.

or am i missing something and it is somehow possible to get a failure
route block executed also on this kind of internally generated negative
reply?

-- juha




More information about the Users mailing list