[reSIProcate] Managing multiple UA registrations with single DUM
Kovar, William (Bill)
bkovar at avaya.com
Wed Apr 19 09:04:59 CDT 2006
In the test program BasicCall.cpp, the following 2 different UA's are
created on 2 different Dum's
TestUac uac;
dumUac->setInviteSessionHandler(&uac);
dumUac->setClientRegistrationHandler(&uac);
dumUac->addOutOfDialogHandler(OPTIONS, &uac);
TestUas uas(&bHangupAt);
dumUas->setClientRegistrationHandler(&uas);
dumUas->setInviteSessionHandler(&uas);
dumUas->addOutOfDialogHandler(OPTIONS, &uas);
Then there's some User specific credential stuff set just before
creating a Register message.
If I'm only using 1 DUM and I want to register/unregister multiple UA's
and manage them, how would I do it??
- Do I have to persist every ClientRegisterHandle that comes back from
ClientRegistrationHandler::onSuccess(...)
- Do I also have to persist authorization stuff?
Basically, what from the lines below need to be reset to some persisted,
user specifc data on the same UA before I can send a message out, i.e.
uacAuth, uacMasterProfile, uac_dsf and all of the pDum-> calls.
I seem to be at a loss as to what parts of one UA and one DUM need to
change for each message sent/received for a particular URI I've
registered as a UA
SharedPtr<MasterProfile> uacMasterProfile(new MasterProfile);
auto_ptr<ClientAuthManager> uacAuth(new ClientAuthManager);
pDum->setMasterProfile(uacMasterProfile);
pDum->setClientAuthManager(uacAuth);
pDum->setInviteSessionHandler(&uac);
pDum->setClientRegistrationHandler(&uac);
pDum->addOutOfDialogHandler(OPTIONS, &uac);
auto_ptr<AppDialogSetFactory> uac_dsf(new ICAppDialogSetFactory);
pDum->setAppDialogSetFactory(uac_dsf);
// set the proxy/registrar
pDum->getMasterProfile()->setOutboundProxy(proxyURI);
// set registration expiration time
pDum->getMasterProfile()->setDefaultRegistrationTime(70);
pDum->getMasterProfile()->setDigestCredential(uaAor.uri().host(),
res->Id, res->pwd);
SharedPtr<SipMessage> regMessage = pDum->makeRegistration(uaAor,
new testAppDialogSet(*pDum, "UA(Registration)"));
The various dumUa(sc)-setXXXXHandler() methods seem to only manage one
instance of each of these handlers, meaning they need to be reset when I
am acting as a different UA.
Bill Kovar
bkovar at avaya.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.resiprocate.org/pipermail/resiprocate-devel/attachments/20060419/e31dc53e/attachment.htm>
More information about the resiprocate-devel
mailing list