After the transaction was suspended, 1st user registered, got INVITE message, there is 2nd user wakes up and send REGISTER.
Kamailio check if transaction suspended (for 2nd user, it is not suspended anymore), and checks if there is stored transaction. So, for 2nd user we have stored transaction, then it should append new branch. ts_append failed.
if ($var(suspended) == 0) { if ($var(stored)) { # no suspended INVITE (i.e. there was at least one # registered contact for target) and 'stored' set # (i.e. ongoing transaction) -> this newly just # registered contact needs alerting. ts_append("location", "sip:$avp(extension)@LOCALVIRTUALIP"); xinfo("appending branches for sip:$avp(extension)@LOCALVIRTUALIP, result $rc"); } else { xinfo("no suspended transactions for $tu"); } return; }
Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: INFO: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1339] <script>: -----------122583d4102d400d8565c6f48d217b8d Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: INFO: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1348] <script>: var(suspended)=0, tsilo=>suspended::122583d4102d400d8565c6f48d217b8d Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: INFO: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1349] <script>: var(stored)=1, tsilo=>stored::122583d4102d400d8565c6f48d217b8d Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: ERROR: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1357] tsilo [ts_append.c:152]: ts_append_to(): transaction 11743:1310842517: error updating dset (-1) Mar 10 21:07:11 stage-webrtc-kama-01 /usr/sbin/kamailio[4067482]: INFO: [t3jutj5k1na4eir1o8pvk9 REGISTER WAKE_SUSPENDED:1:1359] <script>: appending branches for sip:1000@10.160.201.190, result 1
At this moment we have active transaction `{ cell: 0x7f313d43cda8 tindex: 11743 tlabel: 1310842517 method: INVITE from: From: "9988" sip:9988@10.156.0.6;tag=as081c0936
to: To: sip:1000@10.160.201.190:5070
callid: Call-ID: 66d9dace125df36915783fb379f4e3dd@10.156.0.6:5060
cseq: CSeq: 102 uas_request: yes tflags: 69 outgoings: 3 ref_count: 1 lifetime: 5402832 } `
This issue is stale because it has been open 6 weeks with no activity. Remove stale label or comment or this will be closed in 2 weeks.
Closed #3782 as completed.
Hello The issue was related to that fact that ts_append(), ts_append_to() and ts_append_by_contact() are trying to locate user in location table always. It is trying to find contact address anyway. In my scenario, address and R-URI do not match.
For example, I m dialing to sip:1000@IP (specific SIP extension at specific PBX), but when this mobile device awoke, it registers with dynamic AOR (UUID). I m using separate hash table (+mysql) for mapping UUID user and specific SIP extension address. To fix the issue with appending branch, I had to fix that part.