diff --git a/linphone-app/assets/linphonerc-factory b/linphone-app/assets/linphonerc-factory index 9289dbc06..7b3b4e8e5 100644 --- a/linphone-app/assets/linphonerc-factory +++ b/linphone-app/assets/linphonerc-factory @@ -20,4 +20,8 @@ update_presence_model_timestamp_before_publish_expires_refresh=1 max_conference_size=vga [ui] -use_qrcode=0 \ No newline at end of file + +use_qrcode=0 + +[account_creator] +backend=1 diff --git a/linphone-app/src/components/calls/CallsListModel.cpp b/linphone-app/src/components/calls/CallsListModel.cpp index 47830ac14..05bb92250 100644 --- a/linphone-app/src/components/calls/CallsListModel.cpp +++ b/linphone-app/src/components/calls/CallsListModel.cpp @@ -262,13 +262,20 @@ bool CallsListModel::createSecureChat (const QString& subject, const QString &pa std::shared_ptr localAddress; participants.push_back(address); params->enableEncryption(true); - params->setSubject(Utils::appStringToCoreString(subject)); params->enableEncryption(true); params->enableGroup(true); qInfo() << "Create secure ChatRoom: " << subject << ", from " << QString::fromStdString(localAddress->asString()) << " and with " < chatRoom = core->createChatRoom(params, localAddress, participants); + + if(chatRoom) { + int ephemeralTime = CoreManager::getInstance()->getSettingsModel()->getCreateEphemeralChatRooms(); + if( ephemeralTime>0){ + chatRoom->setEphemeralLifetime(ephemeralTime); + chatRoom->enableEphemeral(true); + } + } // Still needed? // if( chatRoom != nullptr){ // auto timelineList = CoreManager::getInstance()->getTimelineListModel(); @@ -366,6 +373,13 @@ QVariantMap CallsListModel::createChatRoom(const QString& subject, const int& se } if( !chatRoom) qWarning() << "Chat room cannot be created"; + else if(securityLevel > 0) { + int ephemeralTime = CoreManager::getInstance()->getSettingsModel()->getCreateEphemeralChatRooms(); + if( ephemeralTime>0){ + chatRoom->setEphemeralLifetime(ephemeralTime); + chatRoom->enableEphemeral(true); + } + } result["created"] = (chatRoom != nullptr); return result;