Re: [reSIProcate-users] differentiating multiple dialogs
Thanks.
One thing that is yet not clear to me is why there is AppDialog and
AppDialogSet. At first guess I would think that there may be several
AppDialog objects related to an AppDialogSet object, but the examples
all have a 1:1 mapping.
Also I found out that the makeRegistration() method does not take an
AppDialog, but an AppDialogSet as parameter, which also lets me think
that a REGISTER creates an DialogSet which maybe relates to several
dialogs. Or am I completely wrong?
Thanks
Klaus
Am 28.06.2010 15:46, schrieb Scott Godin:
...inline...
On Mon, Jun 28, 2010 at 8:44 AM, Klaus Darilion
<klaus.mailinglists@xxxxxxxxx <mailto:klaus.mailinglists@xxxxxxxxx>> wrote:
Hi Scott!
I have some problems to understand how the AppDialog concept works.
What if I have different kinds of dialogs, e.g. INVITE dialogs and
SUBSCRIBE dialog - is it possible to different classes, e.g
InvAppDialog class and SubAppDialog Class to support different user
data depending on the dialog type?
Yes it is possible. For outbound dialogs just pass whatever AppDialog
Subclass you want to the makeXXXX calls. For inbound dialogs you need
to look at the message used to create the Dialog in your
AppDialogSetFactory and then create the appropriate class of your
choosing. Have a look at the UserAgentAppDialogSetFactory class in the
recon project (/resip/recon).
Further, is it possible to bind user data to a registration and have
this user data available in the UAS INVITE session handler? (= how
do I map incoming calls to the respective registration?)
You can create a RegistrationAppDialogSet and pass it to your
makeRegistration call for this purpose. If you want to map incoming
INVITES to a particular registration the easiest way is to use the same
UserProfile for the registration and the calls. You will need logic to
assign a profile to an incoming call (by matching the To header to your
UserProfile AOR, or request line to your registration contacts). Once
again, check out the recon project, in particular:
RemoteParticipantDialogSet::selectUASUserProfile
(http://www.resiprocate.org/Dealing_with_Multiple_User_Profiles),
and UserAgent::getIncomingConversationProfile.
Thanks
Klaus
Am 09.06.2010 18:09, schrieb Scott Godin:
You need to use AppDialogSets - check out:
http://www.resiprocate.org/DUM_Associating_Application_Data_with_DialogSets_and_Dialogs
<http://www.resiprocate.org/DUM_Associating_Application_Data_with_DialogSets_and_Dialogs>The
recon application is good example of how to use this.
Scott
On Wed, Jun 9, 2010 at 11:49 AM, Klaus Darilion
<klaus.mailinglists@xxxxxxxxx
<mailto:klaus.mailinglists@xxxxxxxxx>
<mailto:klaus.mailinglists@xxxxxxxxx
<mailto:klaus.mailinglists@xxxxxxxxx>>> wrote:
Hi!
I wonder what is the best way to identify concurrent dialogs.
For example the application registers and receives 2
incoming calls
concurrently. Somehow in my application I have to represent
the 2
calls, and in the inviteHandler I have to correlate the
onXXXevent
to one of the calls. How is this usually done? How should my
application hold reference to the dialog? Or is there a way to
associate some "userdata" with a dialog and access the
userdata in
the callback?
Is there somewhere a sample code which I should read?
thanks
Klaus
_______________________________________________
resiprocate-users mailing list
resiprocate-users@xxxxxxxxxxxxxxx
<mailto:resiprocate-users@xxxxxxxxxxxxxxx>
<mailto:resiprocate-users@xxxxxxxxxxxxxxx
<mailto:resiprocate-users@xxxxxxxxxxxxxxx>>
List Archive:
http://list.resiprocate.org/archive/resiprocate-users/