Hi,
may there is a routing-issue in rr-module, that causes some problems with sip-spirals:
If is_myself("$ru") is true (in-dialog), kamailio rewrites the $ru to the $route_uri (strict routing). That is usually correct.
loose.c 944 if (is_myself(&_m->parsed_uri)) { 945 return after_strict(_m);
This includes the case if is_myself("$route_uri") is also true - but(!) $route_uri and $ru can still be different, and this can be very relevant. rfc3261 says:
16.4 Route Information Preprocessing
The proxy MUST inspect the Request-URI of the request. If the Request-URI of the request contains a value this proxy previously placed into a Record-Route header field (see Section 16.6 item 4), the proxy MUST replace the Request-URI in the request with the last value from the Route header field, and remove that value from the Route header field. The proxy MUST then proceed as if it received this modified request.
It says " If the Request-URI of the request contains a value this proxy previously placed into a Record-Route header field ". This means $route_uri == $ru Then - indeed - it does not matter to replace the $ru (even: does it really change something?)
I do not see a sign to decide for strict routing instead of loose routing, if (in-dialog) is_myself("$ru") AND is_myself("$route_uri") in general, and especially not if $ru == $route_uri
Or is there any reason to process the request like it is now?
Cheers Jasmin