diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f3ecabc5..88aef28f0 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,9 +4,15 @@ All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## 5.3.0 - undefined +## 6.0 - undefined +### Added +- Screen Sharing + +## 5.3.0 - undefined ### Fixed +- Update SDK to 5.4 +- Urls (Privacy policy, terms, file transfer, update check) - Blinking on resize or Ui updates on screen that have low frame rates. - Timezones and Windows fix. - Download the correct version of openH264 (2.2.0) diff --git a/linphone-app/assets/linphonerc-factory b/linphone-app/assets/linphonerc-factory index 95a48025c..9dccb9a41 100644 --- a/linphone-app/assets/linphonerc-factory +++ b/linphone-app/assets/linphonerc-factory @@ -1,6 +1,3 @@ -[misc] -log_collection_upload_server_url=https://www.linphone.org:444/lft.php - [sound] ec_filter=MSWebRTCAEC diff --git a/linphone-app/src/components/core/CoreManager.cpp b/linphone-app/src/components/core/CoreManager.cpp index f65508eea..238cf70b9 100644 --- a/linphone-app/src/components/core/CoreManager.cpp +++ b/linphone-app/src/components/core/CoreManager.cpp @@ -336,9 +336,9 @@ void CoreManager::migrate () { bool setLimeServerUrl = false; for(const auto &account : getAccountList()){ auto params = account->getParams(); + auto newParams = params->clone(); + QString accountIdentity = (newParams->getIdentityAddress() ? newParams->getIdentityAddress()->asString().c_str() : "no-identity"); if( params->getDomain() == Constants::LinphoneDomain) { - auto newParams = params->clone(); - QString accountIdentity = (newParams->getIdentityAddress() ? newParams->getIdentityAddress()->asString().c_str() : "no-identity"); if( rcVersion < 1) { newParams->setContactParameters(Constants::DefaultContactParameters); newParams->setExpires(Constants::DefaultExpires); @@ -372,19 +372,51 @@ void CoreManager::migrate () { newParams->setPublishExpires(Constants::DefaultPublishExpires); qInfo() << "Migrating" << accountIdentity << "for version 6. publish expires =" << Constants::DefaultPublishExpires; } + if (rcVersion < 7) { // First 6.x / 5.3.0 + // 6.x reg_route added to use/create-app-sip-account.rc files on 6.x + if (newParams->getRoutesAddresses().empty()) { + std::list> routes; + routes.push_back(Utils::interpretUrl(Constants::DefaultRouteAddress)); + newParams->setRoutesAddresses(routes); + qInfo() << "Migrating" << accountIdentity + << "for version 7. Setting route to: " << Constants::DefaultRouteAddress; + } + // File transfer server URL modified to use/create-app-sip-account.rc files on 6.x + auto logServer = mCore->getLogCollectionUploadServerUrl(); + if (logServer.empty() || logServer == Constants::RetiredUploadLogsServer) { + mCore->setLogCollectionUploadServerUrl(Constants::DefaultUploadLogsServer); + qInfo() << "Migrating" << accountIdentity + << "for version 7. Setting Log collection upload server rul to: " + << Constants::DefaultUploadLogsServer; + } + } if(newParams->getLimeServerUrl().empty()){ if(!oldLimeServerUrl.empty()) newParams->setLimeServerUrl(oldLimeServerUrl); else if( setLimeServerUrl) newParams->setLimeServerUrl(Constants::DefaultLimeServerURL); } - - account->setParams(newParams); } + if (rcVersion < 7) { // 6.x lime algo c25519 added to all 6.x rc files + newParams->setLimeAlgo("c25519"); + qInfo() << "Migrating" << accountIdentity << "for version 7. lime algo = c25519"; + } + account->setParams(newParams); } if( oldLimeServerUrl.empty() && setLimeServerUrl) { mCore->enableLimeX3Dh(true); } + if (rcVersion < 7) { // 6.x / 5.3.0 + // Video policy added to all 6.x rc files - done via config as API calls only saves config for + // these when core is ready. + if (!config->hasEntry("video", "automatically_accept")) config->setInt("video", "automatically_accept", 1); + if (!config->hasEntry("video", "automatically_initiate")) config->setInt("video", "automatically_initiate", 0); + if (!config->hasEntry("video", "automatically_accept_direction")) + config->setInt("video", "automatically_accept_direction", 2); + if (config->hasEntry("misc", "version_check_url_root")) + config->setString("misc", "version_check_url_root", Constants::VersionCheckReleaseUrl); + qInfo() << "Migrating Video Policy for version 7."; + } config->setInt(SettingsModel::UiSection, Constants::RcVersionName, Constants::RcVersionCurrent); } diff --git a/linphone-app/src/utils/Constants.cpp b/linphone-app/src/utils/Constants.cpp index 5ae225db2..710717fe6 100644 --- a/linphone-app/src/utils/Constants.cpp +++ b/linphone-app/src/utils/Constants.cpp @@ -73,6 +73,7 @@ constexpr qint64 Constants::FileSizeLimit; constexpr char Constants::DefaultXmlrpcUri[]; constexpr char Constants::DefaultUploadLogsServer[]; +constexpr char Constants::RetiredUploadLogsServer[]; constexpr char Constants::DefaultConferenceURI[]; constexpr char Constants::DefaultVideoConferenceURI[]; constexpr char Constants::DefaultLimeServerURL[]; @@ -81,6 +82,7 @@ constexpr char Constants::RemoteProvisioningURL[]; constexpr char Constants::DefaultAssistantRegistrationUrl[]; constexpr char Constants::DefaultAssistantLoginUrl[]; constexpr char Constants::DefaultAssistantLogoutUrl[]; +constexpr char Constants::DefaultRouteAddress[]; constexpr char Constants::RemoteProvisioningBasicAuth[]; constexpr char Constants::OAuth2AuthorizationUrl[]; diff --git a/linphone-app/src/utils/Constants.hpp b/linphone-app/src/utils/Constants.hpp index aae1c9292..c8e526655 100644 --- a/linphone-app/src/utils/Constants.hpp +++ b/linphone-app/src/utils/Constants.hpp @@ -55,25 +55,26 @@ public: #endif // ifdef ENABLE_UPDATE_CHECK static constexpr char DefaultXmlrpcUri[] = "https://subscribe.linphone.org:444/wizard.php"; - static constexpr char DefaultUploadLogsServer[] = "https://www.linphone.org:444/lft.php"; + static constexpr char DefaultUploadLogsServer[] = "https://files.linphone.org/http-file-transfer-server/hft.php"; + static constexpr char RetiredUploadLogsServer[] = "https://www.linphone.org:444/lft.php"; static constexpr char DefaultContactParameters[] = "message-expires=2419200"; static constexpr char DefaultContactParametersOnRemove[] = "message-expires=0"; static constexpr int DefaultExpires = 600; static constexpr int DefaultPublishExpires = 120; - static constexpr char DownloadUrl[] = "https://www.linphone.org/technical-corner/linphone"; - static constexpr char VersionCheckReleaseUrl[] = "https://linphone.org/releases"; - static constexpr char VersionCheckNightlyUrl[] = "https://linphone.org/snapshots"; + static constexpr char DownloadUrl[] = "https://www.linphone.org/en/technical-corner/linphone"; + static constexpr char VersionCheckReleaseUrl[] = "https://download.linphone.org/releases"; + static constexpr char VersionCheckNightlyUrl[] = "https://download.linphone.org/snapshots"; static constexpr char PasswordRecoveryUrl[] = "https://subscribe.linphone.org/login/email"; - static constexpr char CguUrl[] = "https://www.linphone.org/general-terms"; - static constexpr char PrivatePolicyUrl[] = "https://www.linphone.org/privacy-policy"; - static constexpr char ContactUrl[] = "https://www.linphone.org/contact"; - static constexpr char TranslationUrl[] = "https://weblate.linphone.org/projects/linphone-desktop/"; + static constexpr char CguUrl[] = "https://www.linphone.org/en/terms-of-use"; + static constexpr char PrivatePolicyUrl[] = "https://linphone.org/en/privacy-policy"; + static constexpr char ContactUrl[] = "https://www.linphone.org/en/contact"; + static constexpr char TranslationUrl[] = "https://weblate.linphone.org/projects/linphone/linphone-desktop-6-0/"; static constexpr int MaxMosaicParticipants = 6; // From 7, the mosaic quality will be limited to avoid useless computations - static constexpr char LinphoneBZip2_exe[] = "https://www.linphone.org/releases/windows/tools/bzip2/bzip2.exe"; - static constexpr char LinphoneBZip2_dll[] = "https://www.linphone.org/releases/windows/tools/bzip2/bzip2.dll"; + static constexpr char LinphoneBZip2_exe[] = "https://download.linphone.org/releases/windows/tools/bzip2/bzip2.exe"; + static constexpr char LinphoneBZip2_dll[] = "https://download.linphone.org/releases/windows/tools/bzip2/bzip2.dll"; static constexpr char DefaultRlsUri[] = "sips:rls@sip.linphone.org"; static constexpr char DefaultLogsEmail[] = "linphone-desktop@belledonne-communications.com"; @@ -101,6 +102,8 @@ public: static constexpr char DefaultAssistantRegistrationUrl[] = "https://subscribe.linphone.org/register"; static constexpr char DefaultAssistantLoginUrl[] = "https://subscribe.linphone.org/login"; static constexpr char DefaultAssistantLogoutUrl[] = "https://subscribe.linphone.org/logout"; + static constexpr char DefaultRouteAddress[] = "sip:sip.linphone.org;transport=tls"; + //-------------- // Max image size in bytes. (1Mb) @@ -172,11 +175,12 @@ public: static constexpr char VcardScheme[] = EXECUTABLE_NAME "-desktop:/"; static constexpr int CbsCallInterval = 20; static constexpr char RcVersionName[] = "rc_version"; - static constexpr int RcVersionCurrent = 6; // 2 = Conference URI + static constexpr int RcVersionCurrent = 7; // 2 = Conference URI // 3 = CPIM on basic chat rooms // 4 = RTP bundle mode // 5 = Video Conference URI // 6 = Publish expires + // 7 = Lime algo + Video Policy + Routes + Log upload URL //-------------------------------------------------------------------------------- // CISCO //--------------------------------------------------------------------------------