[Serusers] t_check_status() - why it is checking for winning reply in failure_routes?

Klaus Darilion klaus.mailinglists at pernau.at
Tue Sep 6 10:04:59 CEST 2005


t_check_status uses the lowest response code (as suggested in RFC 3261).

regards
klaus


Arek Bekiersz wrote:
> Hello,
> 
> 
> I used re-routing on various failure codes for a long time, using
> t_on_failure() and t_check_status(). But until now I had only one
> failure_route[] per situation.
> 
> Everything worked fine, until I have two or more failure_routes, one
> after other. In example:
> 
> * in failure_route[2], I set t_on_failure("3")
> * in failure route[3], I t_check_status() for various codes, like:
> 
> if( !( (t_check_status("408") && !(uri==myself) && isflagset(8)) ||
> t_check_status("486") || t_check_status("487") || t_check_status("480")) 
> ) {
> 
> 
> Unfortunately, if failure_route[2] was entered because remote UA
> responded "404" and in failure_route[2] another UA responded with "486",
> I will be never able see this "486".
> 
> Status "404" will be reported as message status, making it impossible to
> perform proper t_check_status checking in failure_route[3]. Reason is
> because t_check_status() uses the status of the winning reply, i.e.
> "404" in this example.
> 
> What is the solution to have conditional routing in next
> failure_routes[] then ?
> 
> 
> Plz help guys,
> Thanks,
> 
> Arek
> 
> 
> _______________________________________________
> Serusers mailing list
> serusers at lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers
> 
> 




More information about the sr-users mailing list