diff --git a/src/blackcore/afv/clients/afvclient.h b/src/blackcore/afv/clients/afvclient.h index b15444458..b38ac57a5 100644 --- a/src/blackcore/afv/clients/afvclient.h +++ b/src/blackcore/afv/clients/afvclient.h @@ -8,8 +8,8 @@ //! \file -#ifndef BLACKCORE_AFV_CLIENT_AFVCLIENT_H -#define BLACKCORE_AFV_CLIENT_AFVCLIENT_H +#ifndef BLACKCORE_AFV_CLIENTS_AFVCLIENT_H +#define BLACKCORE_AFV_CLIENTS_AFVCLIENT_H #include "blackcore/context/contextownaircraft.h" #include "blackcore/afv/connection/clientconnection.h" @@ -68,10 +68,16 @@ namespace BlackCore //! Corresponding callsign QString callsign() const { return m_callsign; } + //! Is connected to network? bool isConnected() const { return m_connection->isConnected(); } + + //! Connection status ConnectionStatus getConnectionStatus() const; + //! Connect to network Q_INVOKABLE void connectTo(const QString &cid, const QString &password, const QString &callsign); + + //! Disconnect from network Q_INVOKABLE void disconnectFrom(); //! Audio devices @{ @@ -82,8 +88,11 @@ namespace BlackCore //! Enable/disable VHF simulation, true means effects are NOT used Q_INVOKABLE void setBypassEffects(bool value); + //! Client started? bool isStarted() const { return m_isStarted; } - QDateTime getStartDateTimeUt() const { return m_startDateTimeUtc; } + + //! When started + const QDateTime &getStartDateTimeUtc() const { return m_startDateTimeUtc; } //! Muted @{ bool isMuted() const; @@ -159,8 +168,10 @@ namespace BlackCore const BlackMisc::Audio::CAudioDeviceInfo &getOutputDevice() const; //! @} + //! Callsigns currently received @{ QString getReceivingCallsignsCom1(); QString getReceivingCallsignsCom2(); + //! @} signals: //! Receiving callsigns have been changed diff --git a/src/blackcore/afv/connection/apiserverconnection.h b/src/blackcore/afv/connection/apiserverconnection.h index fe87d6b45..65acda796 100644 --- a/src/blackcore/afv/connection/apiserverconnection.h +++ b/src/blackcore/afv/connection/apiserverconnection.h @@ -46,23 +46,32 @@ namespace BlackCore //! Constructor ApiServerConnection(const QString &address, QObject *parent = nullptr); + //! User authenticated? bool isAuthenticated() const { return m_isAuthenticated; } + + //! Connect to network bool connectTo(const QString &username, const QString &password, const QUuid &networkVersion); + //! Add callsign to network PostCallsignResponseDto addCallsign(const QString &callsign); + + //! Remove callsign from network void removeCallsign(const QString &callsign); + //! Update transceivers void updateTransceivers(const QString &callsign, const QVector &transceivers); + //! Force disconnect from network void forceDisconnect(); + //! All aliased stations QVector getAllAliasedStations(); private: template TResponse postNoRequest(const QString &resource) { - if (! m_isAuthenticated) + if (!m_isAuthenticated) { qDebug() << "Not authenticated"; return {}; @@ -147,15 +156,13 @@ namespace BlackCore static bool isShuttingDown(); const QString m_address; - QByteArray m_jwt; - QString m_username; - QString m_password; - QUuid m_networkVersion; - QDateTime m_expiryLocalUtc; - qint64 m_serverToUserOffsetMs; - - bool m_isAuthenticated = false; - + QByteArray m_jwt; + QString m_username; + QString m_password; + QUuid m_networkVersion; + QDateTime m_expiryLocalUtc; + qint64 m_serverToUserOffsetMs; + bool m_isAuthenticated = false; QElapsedTimer *m_watch = nullptr; }; } // ns diff --git a/src/blackmisc/network/user.cpp b/src/blackmisc/network/user.cpp index 991a0230a..4fe4607f3 100644 --- a/src/blackmisc/network/user.cpp +++ b/src/blackmisc/network/user.cpp @@ -73,7 +73,7 @@ namespace BlackMisc QString CUser::convertToQString(bool i18n) const { - Q_UNUSED(i18n); + Q_UNUSED(i18n) if (m_realname.isEmpty()) return QStringLiteral(""); QString s = m_realname; if (this->hasId())