[reSIProcate] Handling the case where one side Re-INVITE and other side BYE simutanesouly

kaiduan xie kaiduanx at yahoo.ca
Wed Sep 29 16:13:32 CDT 2004


Hi,

I suggested to add the processing for case where one
side Re-INVITE, for instance, HOLD a call, and the
othre side hangup the call simutanesouly in 
InviteSession.cxx:

  case ReInviting:
     ....
     else
     {
      ErrLog ( << "Spurious message sent to UAS " <<
msg );
      //xkd-2004-9-28
      if (msg.header(h_CSeq).method() == BYE)
      {
	if (msg.isResponse())
	{
	  mState = Terminated;
	 
mDum.mInviteSessionHandler->onTerminated(getSessionHandle(),msg);
	}
        else
	{
	// I am sending re-INVITE, other side send BYE
	  mState = Terminated;
	 
mDum.mInviteSessionHandler->onTerminated(getSessionHandle(),msg);
	  mDialog.makeResponse(mLastResponse, msg, 200);
          send(mLastResponse);
	}
      }//if (msg.header(h_CSeq).method() == BYE)
      // end xkd-2004-9-28

Any comments are welcome.

kaiduan


______________________________________________________________________ 
Post your free ad now! http://personals.yahoo.ca



More information about the resiprocate-devel mailing list