Hi, we use pretty recent kamailio: ``` version: kamailio 4.4.0-dev2 (x86_64/linux) 1a758d flags: STATS: Off, USE_TCP, USE_TLS, USE_SCTP, TLS_HOOKS, USE_RAW_SOCKS, DISABLE_NAGLE, USE_MCAST, DNS_IP_HACK, SHM_MEM, SHM_MMAP, PKG_MALLOC, F_MALLOC, DBG_F_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 8MB poll method support: poll, epoll_lt, epoll_et, sigio_rt, select. id: 1a758d compiled on 14:49:47 Jul 20 2015 with gcc 4.8.2 ```
The case: consider the mobile SIP agent which switches between networks (e.g. wifi -> mobile) during the call. It sends re-INVITE with its new location. We use keep-alives provided by dialog module. And it seems that keep-alives don't use new address and are always sent to initial address. Any thoughts? Thanks.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273
IIRC, the initial specs of SIP didn't allow updating the path for within dialog requests, so dialog module is likely not updating its structure with new contacts. Perhaps some C coding will be needed.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-127240046
The route set can't change, but the remote target - I.E. the contact may change in a reinvite. See section 12.2 of the good ol' RFC 3261.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-127243982
Thanks for pointing out, still need to look at the code what devs wrote there inside the module -- I commented here from what I remembered/thought to be happening there.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-127285432
Thank _you_ for working on this. I should have investigated it in code myself, but I lack time for this currently.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-127328797
Hi guys. Is there any progress on this issue?
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-132531371
I looked at code while traveling, but it was not something straightforward to change. Contact address is kept in a continuous block of memory with other attributes. To update it requires a bit more changes than just replacing old contact. It is in my short todo list.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-134074639
Can you test with git master branch? I just pushed some patches to get this fixed, but didn't have the environment to test it myself.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-134589079
I am closing this one, the patch has been pushed more than one month ago, with no follow up here.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-145242125
Closed #273.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#event-425942965
I just happen to test this and works perfectly as expected. The keep-alive OPTIONS are sent to the address in the contact header and the conversation continues as expected.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-163521524
Thanks for testing and providing feedback.
--- Reply to this email directly or view it on GitHub: https://github.com/kamailio/kamailio/issues/273#issuecomment-163526215