On 2012-02-14 at 11:38, Daniel-Constantin Mierla wrote:
can you create the transaction with t_newtran() somewhere before calling dlg manage? It should absorb retransmissions before going into dialog processing. After creating the transaction, use either send_reply() or t_reply() instead of sl_send_reply().
Can try that, but as the problem with duplicates only occur for less than 1% of our conversations, it is not that easy to test in our testrig.
what version are you using? REGISTER requests should not create any dialog and that is fixed starting wit 3.2.1, iirc.
# kamailio -V version: kamailio 3.2.1 (i386/linux) 31c991 flags: STATS: Off, USE_IPV6, USE_TCP, USE_TLS, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, DBG_QM_MALLOC, USE_FUTEX, FAST_LOCK-ADAPTIVE_WAIT, USE_DNS_CACHE, USE_DNS_FAILOVER, USE_NAPTR, USE_DST_BLACKLIST, HAVE_RESOLV_RES ADAPTIVE_WAIT_LOOPS=1024, MAX_RECV_BUFFER_SIZE 262144, MAX_LISTEN 16, MAX_URI_SIZE 1024, BUF_SIZE 65535, DEFAULT PKG_SIZE 4MB poll method support: poll, epoll_lt, epoll_et, sigio_rt, select. id: 31c991 compiled on 08:08:06 Dec 6 2011 with gcc 4.1.2
Willing to upgrade to a later git, if needed.