diff --git a/plugins/channelrx/demodadsb/adsbdemodgui.cpp b/plugins/channelrx/demodadsb/adsbdemodgui.cpp index 9f54f4116..462124b47 100644 --- a/plugins/channelrx/demodadsb/adsbdemodgui.cpp +++ b/plugins/channelrx/demodadsb/adsbdemodgui.cpp @@ -5935,9 +5935,6 @@ void ADSBDemodGUI::applyImportSettings() void ADSBDemodGUI::import() { QString urlString = "https://"; - if (!m_settings.m_importUsername.isEmpty() && !m_settings.m_importPassword.isEmpty()) { - urlString = urlString + m_settings.m_importUsername + ":" + m_settings.m_importPassword + "@"; - } urlString = urlString + m_settings.m_importHost + "/api/states/all"; QChar join = '?'; if (!m_settings.m_importParameters.isEmpty()) @@ -5965,7 +5962,13 @@ void ADSBDemodGUI::import() urlString = urlString + join + "lomax=" + m_settings.m_importMaxLongitude; join = '&'; } - m_networkManager->get(QNetworkRequest(QUrl(urlString))); + QNetworkRequest request = QNetworkRequest(QUrl(urlString)); + if (!m_settings.m_importUsername.isEmpty() && !m_settings.m_importPassword.isEmpty()) + { + QByteArray encoded = (m_settings.m_importUsername + ":" + m_settings.m_importPassword).toLocal8Bit().toBase64(); + request.setRawHeader("Authorization", "Basic " + encoded); + } + m_networkManager->get(request); } // Handle opensky-network API call reply diff --git a/plugins/channelrx/demodadsb/readme.md b/plugins/channelrx/demodadsb/readme.md index 5b89a0e1c..b8396dc4b 100644 --- a/plugins/channelrx/demodadsb/readme.md +++ b/plugins/channelrx/demodadsb/readme.md @@ -133,7 +133,7 @@ As a server: The Beast binary and Hex formats are as detailed here: https://wiki.jetvision.de/wiki/Mode-S_Beast:Data_Output_Formats When Enable import is checked, aircraft data for aircraft anywhere in the world can be imported from OpenSky Network. -A username and password are not required, but when specified, this allows the update period to be reduced to 5 seconds instead of 10 seconds. +A username and password are not required, but when specified, this allows the update period to be reduced to 5 seconds instead of 10 seconds, and 4000 API calls per day instead of 400. To limit network traffic and processing power requirements, a geographical region can be set via the minimum and maximum latitude and longitude fields.