On Feb 25, 2004 at 18:56, Klaus Darilion
<klaus.mailinglists(a)pernau.at>
wrote:
I'm still confused. I try to write it down in
my own words as far as I
understand it and hope that somebody will confirm or correct my
statements:
So, loose_route does the rewritting of the req-URI (strict routing) and
removing of route headers if there are Route: headers in the request.
After that, the request should be routable by t_relay.
The loose_route function will rewrite the req-URI of "strict_routing"
messages. So the if(uri==myself) statement shouldn't be TRUE anymore, or
does this statement checks the original req-URI?
No, it checks the "new" uri, so in the strict router case you are right,
it won't match (of course assuming the new uri!= proxy).
In the loose router case, the message will be sent to the loose route
uri (not to the request uri) and the request uri will not be changed,
so your uri==myself could match although the message will be sent
elsewhere.
I'm still confused ... the BYE request from Windows Messenger with a
route-set will be handled be the if(loose_route()){...} block, but not
the BYE request from Xlite with a route-set. But shouldn't also the BYE
from Xlite be processed in the if(loose_route()){...} block? I don't
want to care about in-dialog requests in my routing logic which deals
with voicemail, hunt groups ...
An other possibility would be to remove the t_relay in the loose_route
block, so that all in-dialog requests (Messenger and xlite) are
processed by the following routing logic.
thanks,
klaus