Hi Daniel,
On 09/14/2011 08:30 AM, Daniel-Constantine Mierla wrote:
Seems like the rr params value is not set properly. I
looked in rr module and such case can happen indeed, but for the case when uri in rr does
not match myself. Is this also in your case? I wonder anyhow why the callbacks are
executed in route header uri is not local address...
Indeed it happens when it doesn't match itself.
Btw, were all hops in the signaling performing loose
routing or some did strict routing?
Well, the use-case is this:
REGISTER sip:mydomain.com:5060
Route: <sip:mydomain.com;lr>
To: <sip:myuser@mydomain.com>
So it's an initial REGISTER with no to-tag but with a Route header (e.g.
pjsip loves to do that for some reason for every initial request). We're
using Kamailio as a load-balancer (this is where the error occurs) in
the SPCE, and we don't set any "alias" parameter there, so the Route is
not considered local.
Instead, we're doing something like this:
if(loose_route()) {
if(!has_totag()) {
$du = $null;
# send off to proxy using dispatcher
} else {
t_relay();
}
}
Then on the proxy we check again after loose_route() using
is_domain_local("$dd") to either silently consume routes which are in
our domain table or to reject them if not.
Thanks,
Andreas