running invite event for outgoing calls as well (does not respect connect session yet)

git-svn-id: http://svn.berlios.de/svnroot/repos/sems/trunk@1535 8eb893ce-cfd4-0310-b710-fb5ebe64c474
sayer/1.4-spce2.6
Stefan Sayer 16 years ago
parent 5a20859255
commit 1497095890

@ -99,6 +99,30 @@ void DSMDialog::onInvite(const AmSipRequest& req) {
AmB2BCallerSession::onInvite(req);
}
void DSMDialog::onOutgoingInvite(const string& headers) {
if (!process_invite) {
// re-INVITE sent out
return;
}
process_invite = false;
// TODO: construct correct request of outgoing INVITE
AmSipRequest req;
req.hdrs = headers;
bool run_session_invite = engine.onInvite(req, this);
if (DSMFactory::RunInviteEvent) {
if (!engine.init(this, startDiagName, DSMCondition::Invite))
run_session_invite =false;
if (checkVar(DSM_CONNECT_SESSION, DSM_CONNECT_SESSION_FALSE)) {
DBG("session choose to not connect media\n");
// TODO: set flag to not connect RTP on session start
run_session_invite = false; // don't accept audio
}
}
}
void DSMDialog::onSessionStart(const AmSipRequest& req)
{
if (process_sessionstart) {

@ -70,6 +70,7 @@ public:
~DSMDialog();
void onInvite(const AmSipRequest& req);
void onOutgoingInvite(const string& headers);
void onSessionStart(const AmSipRequest& req);
void onSessionStart(const AmSipReply& rep);
void startSession();

Loading…
Cancel
Save