Am 14.01.2011 16:52, schrieb Prelle, Stefan:
Hi folks,

I have a problem with a scenario where an incoming INVITE is forwarded to a 
redirect server
which responds with 302 and a new target in the Contact header (B). The call is 
being forwarded
to the new contact correctly. All responses from B that are either provisional 
or a 200 OK
are being routed back to the caller. If B responds with any code>=400 the 302 
from the
redirect server is being returned to the caller instead of the received code.

A          B          C
|--INVITE->|          |
|          |--INVITE->|
|          |<---302---|   D
|          |----INVITE--->|
|          |<-----404-----|
|<---302---|

Is this intended? And if so, is there any way to change this behaviour so the 
latest received
response is returned?

Yes - it is intended. The lowest response code of all branches will used (RFC conform).

You can change this behavior by either (I think b is what you look for).

a) load another failure route in the existing failure route. in the new failure route use t_reply() to set a proper failure route

b) play around with tm module parameters, especially failure_reply_mode():
http://www.kamailio.org/docs/modules/3.1.x/modules/tm.html#failure_reply_mode

regards
klaus

_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users@lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users

Reply via email to