[reSIProcate] Dum multi-call design

Scott Godin slgodin at icescape.com
Thu May 12 12:48:06 CDT 2005


Juston,

 

Some possible approaches are:

1.	Store the AppDialog when onNewSession is called.
2.	Assume is gone after onTerminated is called and/or when you call
end(), reject(), etc..  It actually may be destroyed a little later - ie.
When 200 to BYE is received.
3.	Put code in AppDialog and/or AppDialogSet destructors to clean up
your application stored mappings.

 

Scott

 

  _____  

From: Justin Matthews [mailto:justin.matthews at ivr.com] 
Sent: Thursday, May 12, 2005 1:24 PM
To: 'sachin ahire'; slgodin at icescape.com;
resiprocate-devel at list.sipfoundry.org
Subject: RE: [reSIProcate] Dum multi-call design

 

Hi,

 

I have been thinking about this implementation and am confused on exactly
how to manage the AppDialogSet and AppDialog pointers.

 

The ultimate goal is to be able to cancel an outbound invite if there is no
response from the UAS.  When creating an Invite with
DUM::makeInviteSession(...,myAppDialogSet), I clearly have a way of mapping
a user-defined key (integer or whatever) to myAppDialogSet.  I can use this
user-defined key to get a pointer to myAppDialogSet for this call.  Where I
am confused is what I really want is a myAppDialog pointer to call
myAppDialog->getInviteSession().  To do this I need a pointer to
myAppDialog.  I suppose this could be done in
myAppDialogSet::createAppDialog() (maybe this won't work; when does a
AppDialog get created?) by adding another mapping from a user-defined key to
myAppDialog.  If I do this, how do I know when myAppDialog is deleted by
resip?  AppDialogSet gives a virtual destroy() method, but AppDialog does
not.

 

Thanks,

 

-Justin

 

  _____  

From: resiprocate-devel-bounces at list.sipfoundry.org
[mailto:resiprocate-devel-bounces at list.sipfoundry.org] On Behalf Of sachin
ahire
Sent: Friday, April 01, 2005 4:11 PM
To: slgodin at icescape.com; resiprocate-devel at list.sipfoundry.org
Subject: RE: [reSIProcate] Dum multi-call design

 

Hi Scott,

Thanks for the pointers. The website link was helpful since that site
contains quite a lot of other useful documentation also. 

i also understand what you meant by not getting response from the UAS side.
i was expecting to get the OnFailure or OnTerminated Callback since my uas
wasnt setup to send any response, but never got it. i guess the app needs to
maintain the timer for such cases and send the cancel. 

Sachin

>From: Scott Godin <slgodin at icescape.com> 

>To: 'sachin ahire' <sachinahire at hotmail.com>,
resiprocate-devel at list.sipfoundry.org 

>Subject: RE: [reSIProcate] Dum multi-call design 

>Date: Thu, 31 Mar 2005 14:53:35 -0500 

> 

>That will probably work - but you won't know the Invite Session Handle on 

>placed calls until a dialog is created.  I store an array of AppDialog and 

>AppDialogSet pointers.  This allows you to end/cancel a call if you don't 

>receive any response from the far end.  You can get at the InviteSession 

>from these pointers. 

> 

> 

> 

>Check out: 

>http://warsaw.sjc.purplecomm.com/wiki/index.php?title=Associating_Applicati
o 

>n_Data_with_Dialogs/DialogSets 

><http://warsaw.sjc.purplecomm.com/wiki/index.php?title=Associating_Applicat
i 

>on_Data_with_Dialogs/DialogSets> 

> 

> 

> 

>Just be careful to remove references from your array before the Dialogs are


>destroyed - since DUM will delete the AppDialog/AppDialogSet objects. 

> 

> 

> 

>   _____ 

> 

>From: sachin ahire [mailto:sachinahire at hotmail.com] 

>Sent: Thursday, March 31, 2005 11:36 AM 

>To: resiprocate-devel at list.sipfoundry.org 

>Subject: [reSIProcate] Dum multi-call design 

> 

> 

> 

> 

>Hi, 

> 

>I want to develop an application based on basiccall.cpp  in the dum/test to


>enable sending multiple calls/invites and also an ability to receive 

>multiple calls. 

> 

>The way i was going to do it was to have an array of lines that contains a 

>pointer to the InviteSessionHandler and everytime the app receives a 

>OnNewsession i grab one of the "unallocated" lines and copy the handle and 

>use it to keep track of invitesessions. 

> 

>Is this a right way to do it or if not, can somebody give me some pointers 

>as to how it can be done. Thanks. 

> 

>Sachin 

> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20050512/4bf5334e/attachment.htm>


More information about the resiprocate-devel mailing list