From 59ed757f4b810415eb2c6f9104f2ea3607af713a Mon Sep 17 00:00:00 2001 From: Ronan Abhamon Date: Fri, 3 Feb 2017 14:44:17 +0100 Subject: [PATCH] feat(src/components/call/CallModel): accept incoming video call --- .../src/components/call/CallModel.cpp | 31 ++++++++++++------- 1 file changed, 20 insertions(+), 11 deletions(-) diff --git a/linphone-desktop/src/components/call/CallModel.cpp b/linphone-desktop/src/components/call/CallModel.cpp index fd3286d54..41d3f3d13 100644 --- a/linphone-desktop/src/components/call/CallModel.cpp +++ b/linphone-desktop/src/components/call/CallModel.cpp @@ -62,9 +62,7 @@ CallModel::CallModel (shared_ptr linphone_call) { m_paused_by_user = false; break; - case linphone::CallStateUpdatedByRemote: { - shared_ptr core = CoreManager::getInstance()->getCore(); - + case linphone::CallStateUpdatedByRemote: if ( !m_linphone_call->getCurrentParams()->videoEnabled() && m_linphone_call->getRemoteParams()->videoEnabled() @@ -72,9 +70,8 @@ CallModel::CallModel (shared_ptr linphone_call) { CoreManager::getInstance()->getCore()->deferCallUpdate(m_linphone_call); emit videoRequested(); } - } - break; + break; default: break; @@ -99,11 +96,21 @@ void CallModel::setRecordFile (shared_ptr &call_params) { // ----------------------------------------------------------------------------- void CallModel::accept () { - CoreManager::getInstance()->getCore()->acceptCall(m_linphone_call); + shared_ptr core = CoreManager::getInstance()->getCore(); + shared_ptr params = core->createCallParams(m_linphone_call); + params->enableVideo(false); + setRecordFile(params); + + core->acceptCallWithParams(m_linphone_call, params); } void CallModel::acceptWithVideo () { - // TODO + shared_ptr core = CoreManager::getInstance()->getCore(); + shared_ptr params = core->createCallParams(m_linphone_call); + params->enableVideo(true); + setRecordFile(params); + + core->acceptCallWithParams(m_linphone_call, params); } void CallModel::terminate () { @@ -115,10 +122,11 @@ void CallModel::transfer () { } void CallModel::acceptVideoRequest () { - shared_ptr params = CoreManager::getInstance()->getCore()->createCallParams(m_linphone_call); + shared_ptr core = CoreManager::getInstance()->getCore(); + shared_ptr params = core->createCallParams(m_linphone_call); params->enableVideo(true); - CoreManager::getInstance()->getCore()->acceptCallUpdate(m_linphone_call, params); + core->acceptCallUpdate(m_linphone_call, params); } void CallModel::rejectVideoRequest () { @@ -274,10 +282,11 @@ void CallModel::setVideoEnabled (bool status) { if (status == getVideoEnabled()) return; - shared_ptr params = CoreManager::getInstance()->getCore()->createCallParams(m_linphone_call); + shared_ptr core = CoreManager::getInstance()->getCore(); + shared_ptr params = core->createCallParams(m_linphone_call); params->enableVideo(status); - CoreManager::getInstance()->getCore()->updateCall(m_linphone_call, params); + core->updateCall(m_linphone_call, params); } bool CallModel::getUpdating () const {