Strange!
Nevertheless there is no need to drop 100 as 100 is never relayed.
klaus
Aurelien Grimaud wrote:
Daniel-Constantin Mierla a écrit :
Hello,
On 12/18/08 13:18, Aurelien Grimaud wrote:
Hi, In my openser, I had to not relay any provisional which is < 180. I used drop in reply route to do this. No provisional < 180 is sent to caller.
Unfortunately, dropping 100 seems to make the transaction module not disarming its fr_timer.
100 is disabling the retransmission timer. fr_timer is the duration to wait until a final response is received, not related to retransmission and 100 reply.
- fr_timer is armed when INVITE is t_relayed and disarmed *only* when a
final response is received.
- fr_inv_timer is armed whenever a provisional (100 - 199) is received,
disarmed on final response . Well, fr_timer also has to be disarmed when fr_inv_timer is armed right ?
So any provisional (100-199) disarm fr_timer and arm fr_inv_timer. But you have not to drop it in reply_route.
In my case, the reply_route I set drops any provisional < 180. This means that the 100 response will not make tm module switch fr_timer to fr_inv_timer as it would be if not dropped.
Well this is not a problem, I only dropped provisional from 101 to 180, and all went back to normal. Since 100 is not forwarded (because of t_relay already generated one), this makes no difference for end users.
I did not expect drop() statement to change anything for timers.
Thanks. Aurelien
Cheers, Daniel
The 180 has been waited for more time than my fr_timer so request failed and failure_route was called. In fact, there is no 180, only a 200 ok.
Can anyone confirm that disarming timer is *not* done if 100 is dropped ?
This is openser 1.2.1
Regards. Aurelien
Devel mailing list Devel@lists.kamailio.org http://lists.kamailio.org/cgi-bin/mailman/listinfo/devel
Devel mailing list Devel@lists.kamailio.org http://lists.kamailio.org/cgi-bin/mailman/listinfo/devel