void AmB2BCallerSession::createCalleeSession() { AmB2BCalleeSession* callee_session = newCalleeSession(); if (NULL == callee_session) return; AmSipDialog& callee_dlg = callee_session->dlg; other_id = AmSession::getNewId(); callee_dlg.local_tag = other_id; callee_dlg.callid = AmSession::getNewId() + "@" + AmConfig::LocalIP; callee_dlg.local_party = dlg.remote_party; callee_dlg.remote_party = dlg.local_party; callee_dlg.remote_uri = dlg.local_uri; if (AmConfig::LogSessions) { INFO("Starting B2B callee session %s app %s\n", callee_session->getLocalTag().c_str(), invite_req.cmd.c_str()); } MONITORING_LOG5(other_id.c_str(), "app", invite_req.cmd.c_str(), "dir", "out", "from", callee_dlg.local_party.c_str(), "to", callee_dlg.remote_party.c_str(), "ruri", callee_dlg.remote_uri.c_str()); callee_session->start(); AmSessionContainer* sess_cont = AmSessionContainer::instance(); sess_cont->addSession(other_id,callee_session); }
void AmB2BCallerSession::createCalleeSession() { AmB2BCalleeSession* callee_session = newCalleeSession(); AmSipDialog& callee_dlg = callee_session->dlg; other_id = AmSession::getNewId(); callee_dlg.local_tag = other_id; callee_dlg.callid = AmSession::getNewId() + "@" + AmConfig::LocalIP; callee_dlg.local_party = dlg.remote_party; callee_dlg.remote_party = dlg.local_party; callee_dlg.remote_uri = dlg.local_uri; callee_session->start(); AmSessionContainer* sess_cont = AmSessionContainer::instance(); sess_cont->addSession(other_id,callee_session); }
void AmB2BCallerSession::createCalleeSession() { AmB2BCalleeSession* callee_session = newCalleeSession(); if (NULL == callee_session) return; AmSipDialog* callee_dlg = callee_session->dlg; setOtherId(AmSession::getNewId()); callee_dlg->setLocalTag(getOtherId()); if (callee_dlg->getCallid().empty()) callee_dlg->setCallid(AmSession::getNewId()); callee_dlg->setLocalParty(dlg->getRemoteParty()); callee_dlg->setRemoteParty(dlg->getLocalParty()); callee_dlg->setRemoteUri(dlg->getLocalUri()); if (AmConfig::LogSessions) { INFO("Starting B2B callee session %s\n", callee_session->getLocalTag().c_str()); } MONITORING_LOG4(getOtherId().c_str(), "dir", "out", "from", callee_dlg->getLocalParty().c_str(), "to", callee_dlg->getRemoteParty().c_str(), "ruri", callee_dlg->getRemoteUri().c_str()); try { initializeRTPRelay(callee_session); } catch (...) { delete callee_session; throw; } AmSessionContainer* sess_cont = AmSessionContainer::instance(); sess_cont->addSession(getOtherId(),callee_session); callee_session->start(); }