[OpenSER-Users] Why can't I "append_branch()" in FAILURE_ROUTE if reply is 6XX ??

Bogdan-Andrei Iancu bogdan at voice-system.ro
Wed May 21 13:20:59 CEST 2008


Hi Iñaki,

because it is against RFC3261 - 6xx reply means global failure and no 
further forking is allowed.

Regards,
Bogdan

Iñaki Baz Castillo wrote:
> Hi, when I receive a 480 or 603 from a local user I run "on_failure_route" and 
> create new branch to forward the INVITE to a media server in which I reply an 
> early-media "The number you are calling is not available now...".
>
> It works perfectly if the error is 4XX but it doesn't work if it's a 6XX. I 
> get this error:
>
> ---------------------
>   ## onreply_route[ON_REPLY_TO_USER]:
>   603: Decline
>
>   ## failure_route[ON_FAILURE_TO_USER]
>   --- TO_MEDIA_SERVER: Destino user_not_available
>   May 21 12:25:25 [8502] ERROR:tm:t_forward_nonack: discarding fwd for a
>   cancelled/6xx transaction
>   May 21 12:25:25 [8502] ERROR:tm:w_t_relay: t_forward_nonack failed
> ----------------------
>
>
> My code is very simple:
>
> ----------------------
> failure_route[ON_FAILURE_TO_USER] {
>
> 	if (t_check_status("480|603")) {
> 		$rU = "user_not_available";
> 		route(ROUTE_TO_MEDIA_SERVER);
> 		exit;
> 	}
> }
>
>
> route[ROUTE_TO_MEDIA_SERVER] {
> 	rewritehostport("MEDIA_SERVER_IP:MEDIA_SERVER_PORT");
> 	append_branch();
> 	t_relay();
> }
> ---------------------
>
>
>
> It seems that if the reply is a 6XX then OpenSer can't generate a new_branch 
> in failure_route.
>   May 21 12:25:25 [8502] ERROR:tm:t_forward_nonack: discarding fwd for a
>   cancelled/6xx transaction
>
> Why? doesn't it make sense to forward to some destination even if the negative 
> reply is a 4XX or 6XX?
>
> Thanks a lot for any help.
>
>
>
>   





More information about the sr-users mailing list