Hello Alex and Daniel,
Thank you for your answers.
This happened when a client had some network problems and couldn't received
my packets. The problem is that after some time and the transaction is
dead,since Kamailio does a new dispatcher, my accounting system counts this
as two calls and that's the behaviour i want to avoid.
Since in this case the client has network issues and won't probably get the
SIP replies, i don't think raising the timers will be very helpfull.
Also, i already use Dialog module for other functionalities so i don't
think there's a need to go to hash tables.
Thanks for the help.
A terça, 12/05/2020, 17:15, Duarte Rocha <duarterocha91(a)gmail.com> escreveu:
Greetings,
I have an issue where a client doesn't get the responses to the INVITE
sent and as such keeps sending me retransmissions of the INVITE.
While the transaction is still up, Kamailio does its job. However, when
the transaction is closed Kamailio processes the request again as a first
request (Doing Routing and Dispatcher operations again).
In order to avoid the issue i've made the following code :
// If it's the first INVITE
if( is_method("INVITE") && !has_totag() )
{
if(t_check_trans()) {
xnotice("TRANS - INVITE Retransmission");
}
else if ( is_known_dlg()) {
xerr("KamTAG: INVITE in dialog without To Tag ");
exit;
}
}
Is this a good solution and still compliant with the SIP rules?
Best Regards