< Previous by Date Date Index Next by Date >
  Thread Index Next in Thread >

[reSIProcate] Ringing party then cancelling before they answer


Hi,

I have just about every aspect of the SIP stack working now.
I can initiate calls,  both incoming and outgoing, and I'm now
doing the loose ends,  like dealing with cancelling the call
under a number of conditions.   IE:  During the period the
phone is ringing...  During the period the call is in progress,
etc.  I got it to properly tear down the call after the call is
made (incoming or outgoing).  It's just the part where I
want to abort the call before the remote party answers.

I have this piece of code....  it gets executed when I CANCEL a call
while the other party is ringing...  myUAC is my handler.

           ClientInviteSessionHandle cis;

           cis = myUAC->GetCisHandle();
           cis->reject(488);
           NSLog(@"Outgoing call cancelled");

This eventually calls code in ClientInviteSession.cxx (approx line = 215)

     case UAC_Cancelled:
WarningLog (<< "Try to reject when in state=" << toData(mState)); <--- it gets here
        assert(0);
        break;

Try to reject when in state=UAC_Early     <--- log says...

What if I'm not in that state, then what is the proper procedure I use to cancel out on the call.... my onProvisional callback has just been called, the other party is ringing at this point. It stays in this state until the called party or sip server on remote end times out. Or, am I supposed to override the reject, and handle it my way....
John