[reSIProcate] Sending CANCEL to Callee has Transaction Error - (TIdnot found)
Scott Godin
slgodin at icescape.com
Tue Jan 23 08:28:29 CST 2007
There are many reasons it is dangerous to be re-using your appdialogset
for 2 different dialogsets, one of which it that dum controls the
lifetime of these objects (unless you override AppDialogSet::destroy).
Appdialogsets are only designed to be assigned to one Dialogset.
More comments inline...
Scott
From: resiprocate-devel-bounces at list.resiprocate.org
[mailto:resiprocate-devel-bounces at list.resiprocate.org] On Behalf Of
Pawan N
Sent: Tuesday, January 23, 2007 8:47 AM
To: resiprocate-devel at list.resiprocate.org
Subject: [reSIProcate] Sending CANCEL to Callee has Transaction Error -
(TIdnot found)
I've a B2BUA application which receives an Invite (generates
AppDialogSet)
and sends invite to callee (uses same mSampleAppData..)
So both the legs have same AppdialogSet's AppData...
Now when caller sends a CANCEL, a new CANCEL is generated using Callee's
INVITE..
But now Transaction for this internal sip message is not found, and a
481 is generated... How is this possible..Is the caller's CANCEL (same
AppData) destroying the callee transaction data..
[Scott] Despite my warning above - I don't think this is what is
happening here. The problem is at the stack level. How do you generate
the cancel? You should be using AppDialogSet::end() (but this is
clearly hairy given the way you use AppDialogSets ) or
DialogUsageManager::end().
Surprisingly it doesn't happen always... Sometimes it happens this way..
Also when I use SendBye() instead of CANCEL, everything works fine...
Can BYE be used anywhere during the call-session.. (I'm asking
specifically before receiving 200 OK)
[Scott] You can only send a bye if you have a dialog - ie. have received
a provisional response containing a to tag. Otherwise you must send a
CANCEL. CANCEL cancels the entire invite request. BYE only terminates
one leg of the invite (it might fork).
My logs error and sip messages are as under -
The error in Log says something like -
DEBUG | 20070123-162310.763 | b2bua | RESIP:TRANSPORT | 904 |
Transport.cxx:209 | Adding message to tx buffer to: [ V4
180.144.128.1:5060 UDP target domain=unspecified received on: Transport:
[ V4 0.0.0.0:5060 UDP target domain=unspecified connectionId=0 ]
connectionId=0 ]
STACK | 20070123-162310.763 | b2bua | RESIP:TRANSACTION | 904 |
TransactionState.cxx:296 | No matching transaction for SipReq: CANCEL
b2bua-9011 at 180.144.128.1:5060 tid=104e19061e3a343a cseq=CANCEL / 1
from(tu)
INFO | 20070123-162310.763 | b2bua | RESIP:TRANSACTION | 904 |
TransactionState.cxx:417 | No matching INVITE for incoming (from TU)
CANCEL to uac
DEBUG | 20070123-162310.763 | b2bua | RESIP | 904 | Helper.cxx:302 |
Helper::makeResponse(SipReq: CANCEL b2bua-9011 at 180.144.128.1:5060
tid=104e19061e3a343a cseq=CANCEL / 1 from(tu) code=481 reason=
DEBUG | 20070123-162310.763 | b2bua | RESIP:TRANSACTION | 904 |
TransactionState.cxx:1721 | Send to TU: TU: DialogUsageManager size=0
SIP/2.0 481 Call/Transaction Does Not ExistVia: SIP/2.0/
.
.
.
CALLEE's MSG =
msg=INVITE (trn-id = 104e19061e3a343a)
INVITE sip:b2bua-9011 at 180.144.128.1:5060 SIP/2.0
Via: SIP/2.0/ ;branch=z9hG4bK-d87543-104e19061e3a343a-1--d87543-;rport
Max-Forwards: 70
Contact: <sip:b2bua at 132.186.69.150>
To: <sip:9011 at 180.144.128.1:5060>
From: <sip:8004 at 180.144.128.1:5060>;tag=592d3733
Call-ID: MmMxZTdlMTEzZjU5YmZkZmNlODVkMzg3NWY1NzVmODE.
CSeq: 1 INVITE
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, INVITE
Content-Type: application/sdp
Content-Length: 339
sdp......
and the
CANCEL MSG =
CANCEL sip:b2bua-9011 at 180.144.128.1:5060 SIP/2.0
Via: SIP/2.0/ ;branch=z9hG4bK-d87543-104e19061e3a343a-1--d87543-;rport
To: <sip:9011 at 180.144.128.1:5060>
From: <sip:8004 at 180.144.128.1:5060>;tag=592d3733
Call-ID: MmMxZTdlMTEzZjU5YmZkZmNlODVkMzg3NWY1NzVmODE.
CSeq: 1 CANCEL
Content-Length: 0
Regards,
Pawan...
________________________________
Everyone is raving about the all-new Yahoo! Mail beta.
<http://us.rd.yahoo.com/evt=45083/*http:/advision.webevents.yahoo.com/ma
ilbeta>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20070123/04d0003c/attachment.htm>
More information about the resiprocate-devel
mailing list