diff --git a/src/api/call.h b/src/api/call.h index d9f2cde1e8ce229f64ebd479ba4a46984ae7f3f8..94c9952683adaf033254eb77b74c9d5c4d57651f 100644 --- a/src/api/call.h +++ b/src/api/call.h @@ -134,6 +134,7 @@ struct Info bool isOutoging; bool audioMuted = false; bool videoMuted = false; + bool isAudioOnly = false; }; static inline bool diff --git a/src/newcallmodel.cpp b/src/newcallmodel.cpp index 0d55690ccaddc24e1aec344a3bbeaea9221f137f..a6703d005c31974e37c8e5283b0ee08dc448a56e 100644 --- a/src/newcallmodel.cpp +++ b/src/newcallmodel.cpp @@ -370,7 +370,8 @@ NewCallModelPimpl::slotIncomingCall(const std::string& accountId, const std::str { if (linked.owner.id != accountId) return; - qDebug() << "NewCallModelPimpl::slotIncomingCall"; + // do not use auto here (QDBusPendingReply<MapStringString>) + MapStringString callDetails = CallManager::instance().getCallDetails(callId.c_str()); auto callInfo = std::make_shared<call::Info>(); callInfo->id = callId; @@ -378,6 +379,7 @@ NewCallModelPimpl::slotIncomingCall(const std::string& accountId, const std::str callInfo->isOutoging = false; callInfo->status = call::Status::INCOMING_RINGING; callInfo->type = call::Type::DIALOG; + callInfo->isAudioOnly = callDetails["AUDIO_ONLY"] == "true" ? true : false; calls.emplace(callId, std::move(callInfo)); emit linked.newIncomingCall(fromId, callId);