diff --git a/src/ruqolacore/ddpapi/ddpclient.cpp b/src/ruqolacore/ddpapi/ddpclient.cpp --- a/src/ruqolacore/ddpapi/ddpclient.cpp +++ b/src/ruqolacore/ddpapi/ddpclient.cpp @@ -252,7 +252,7 @@ { if (!mWebSocket) { if (!RuqolaTestWebSocket::_k_ruqola_webSocket) { - mWebSocket = new RuqolaWebSocket(this); + mWebSocket = new RuqolaWebSocket(mRocketChatAccount->ruqolaLogger(), this); } else { mWebSocket = RuqolaTestWebSocket::_k_ruqola_webSocket; } diff --git a/src/ruqolacore/ruqolawebsocket.h b/src/ruqolacore/ruqolawebsocket.h --- a/src/ruqolacore/ruqolawebsocket.h +++ b/src/ruqolacore/ruqolawebsocket.h @@ -24,11 +24,12 @@ #include "abstractwebsocket.h" class QWebSocket; +class RuqolaLogger; class RuqolaWebSocket : public AbstractWebSocket { Q_OBJECT public: - explicit RuqolaWebSocket(QObject *parent = nullptr); + explicit RuqolaWebSocket(RuqolaLogger *logger, QObject *parent = nullptr); ~RuqolaWebSocket() override; void openUrl(const QUrl &url) override; @@ -43,8 +44,11 @@ qint64 sendBinaryMessage(const QByteArray &data) override; void ignoreSslErrors() override; +private Q_SLOTS: + void slotTextMessageReceived(const QString &msg); private: QWebSocket *mWebSocket = nullptr; + RuqolaLogger *mLogger = nullptr; }; #endif // RUQOLAWEBSOCKET_H diff --git a/src/ruqolacore/ruqolawebsocket.cpp b/src/ruqolacore/ruqolawebsocket.cpp --- a/src/ruqolacore/ruqolawebsocket.cpp +++ b/src/ruqolacore/ruqolawebsocket.cpp @@ -20,16 +20,18 @@ #include "ruqolawebsocket.h" #include "ruqola_debug.h" +#include "ruqolalogger.h" #include -RuqolaWebSocket::RuqolaWebSocket(QObject *parent) - : AbstractWebSocket(parent) +RuqolaWebSocket::RuqolaWebSocket(RuqolaLogger *logger, QObject *parent) + : AbstractWebSocket(parent), + mLogger(logger) { mWebSocket = new QWebSocket; connect(mWebSocket, &QWebSocket::connected, this, &RuqolaWebSocket::connected); connect(mWebSocket, &QWebSocket::disconnected, this, &RuqolaWebSocket::disconnected); - connect(mWebSocket, &QWebSocket::textMessageReceived, this, &RuqolaWebSocket::textMessageReceived); + connect(mWebSocket, &QWebSocket::textMessageReceived, this, &RuqolaWebSocket::slotTextMessageReceived); connect(mWebSocket, &QWebSocket::sslErrors, this, &RuqolaWebSocket::sslErrors); } @@ -47,6 +49,9 @@ qint64 RuqolaWebSocket::sendTextMessage(const QString &message) { qCDebug(RUQOLA_LOG) << " qint64 RuqolaWebSocket::sendTextMessage(const QString &message)"<dataSent(message.toUtf8()); + } return mWebSocket->sendTextMessage(message); } @@ -94,3 +99,11 @@ { mWebSocket->ignoreSslErrors(); } + +void RuqolaWebSocket::slotTextMessageReceived(const QString &msg) +{ + if (mLogger) { + mLogger->dataReceived(msg.toUtf8()); + } + Q_EMIT textMessageReceived(msg); +}