Hello,
On 12/18/08 17:09, Andreas Granig wrote:
IƱaki Baz Castillo wrote:
Well, failure_route will not be called when
receiving a 200 OK in this
BYE transaction.
failure_route is only invoked for [3456]XX responses. 200 can only be
handled in on_reply_route, but I don't know if acc flag can be set in
on_reply_route.
Ah, yeah, you're right :)
I think I was discussing this with Daniel some time ago, and as far as I
remember,
AFAIK, we discussed about what happens if BYE comes in, proxy is
restarted and then 200OK. BYE transaction was not accounted. So I
suggested the usage of the acc_db_request(). A failed transaction (e.g.,
BYE with a negative reply) can be accounted.
But this one is a case that cannot be solved by using different flags
from acc module. For INVITE, using the t_check_trans() for reply in
onreply_route with latest kamailio version gives the possibility to drop
the reply if there is no ongoing transaction, therefore you can force
the call to fail.
For BYE is different, as you can lost the STOP event, while the call was
established.
he thought it was save to do so (although it's not
enabled for
reply route, so you could call a route block from within your reply
route to get around this instead of using failure route, but no
guarantees for that)...
The problem with this approach is that acc_*_request() is looking at
first line to get the method type. However, this can be extended to take
it from CSeq if it is reply not request.
Cheers,
Daniel
--
Daniel-Constantin Mierla
http://www.asipto.com