The reSIProcate web site indicates:
- To send a CANCEL to cancel for a UAC INVITE (for
which a dialog creating response has NOT yet been recieved) and cancel all
potential legs of the invite - use the InviteSessionHandle->getAppDialogSet()->end()
call.
- To send a BYE for one particular leg of an early
UAC INVITE (for which a 200 response has NOT yet been recieved) - use the
InviteSessionHandle->end() call.
WARNING - sending a BYE to an early dialog, does not cancel the original Invite Transaction
- if you are done with the invite entirely, then you MUST call AppDialogSet::end()
in order to properly dispose of the invite transaction state to avoid memory leaks
- To send a BYE for an established Invite Session (for
which a 200 response has been recieved) - use the
InviteSessionHandle->end() call.
My questions are:
- In the case of a
session for which NO response was received, (for example because receive
link failure or a fire wall filtering), and for which a subsequent
cancellation with pAppDialogSet()->end() was issued, is a 408 message
still expected ? – and if yes – is there any way to terminate
completely the resiprocate Dialog and release all the related resources ?
- What happens if one sends pAppDialogSet()->end()
to a session for which a 200 OK / ACK completed ?
Thank you
Michael Socaciu
Mutualink Inc.