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