On Thursday 12 July 2007 09:26:37 Martin Hoffmann wrote:
Nils Ohlmeier wrote:
On Wednesday 11 July 2007 21:57:15 Martin Hoffmann wrote:
In most cases this is what you want, because the presence of Routes indicates an in-dialog message which you want to treat differently (In practice, most UAs just forward the message to the outgoing proxy without adding a Route header, which is perfectly legal as well). The proper test for this, of course, is to check for the presence of a To tag. But it seems to be common to all SER configs I have seen to misuse loose_route() in this way.
The realization of the fact that the presence or absence of To-tag is not enough to decide if a request belongs to a dialog or not. The big exception here is the ACK for negative replies. It has a To-tag but a dialog was not established.
That is a non-issue. This ACK needs special treatment anyways -- it is to be consumed by tm.
Is there any argument against putting a
if (method == "ACK") { t_relay(); drop(); }
somewhere way up in your config?
And how do you distinguish between in-dialog ACKs and out-of-dialog ACKs? Note: they both have a To-tag and even worse if the original INVITE contained a pre-loaded Route header (for outbound proxy) the ACK has to contain this Route as well!
Nils