2008/7/17 Jerry Richards <[EMAIL PROTECTED]>: > Question on an issue I am facing. I have a case where I will reject a > re-INVITE under certain circumstances. The scenario follows: > > 1) Receive: re-INVITE > 2) Callback: nua_i_invite event (100 Trying) > 3) Send: 403 Forbidden (nua_respond) > 4) Callback: nua_i_state event nua_callstate_ > received (100 Trying) > 5) Callback: nua_i_state event nua_callstate_ > ready (403 Forbidden) > 6) Receive: ACK for response > 7) Callback: nua_i_active event 403 Call Active > > My question is: What is the best way to associate the asynchronous Callback > event in step 4) with the Callback event in step 2)? That is, I want to > discard Callback event 4) in this scenario.
When you receive an incoming INVITE, you can store its state in your call (e.g., no invite, invite received, responded, waiting-for-ack). When you respond with status code >= 300, you just move the incoming INVITE state to no invite and ignore the nua_i_state events with call states related to incoming invite (received, early, completed). (Please note that for status code >= 300, the ACK is hop-by-hop and it will not be seen by the application.) -- Pekka.Pessi mail at nokia.com ------------------------------------------------------------------------- This SF.Net email is sponsored by the Moblin Your Move Developer's challenge Build the coolest Linux based applications with Moblin SDK & win great prizes Grand prize is a trip for two to an Open Source event anywhere in the world http://moblin-contest.org/redirect.php?banner_id=100&url=/ _______________________________________________ Sofia-sip-devel mailing list Sofia-sip-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel