diff --git a/ScreenPlaySDK/inc/public/ScreenPlaySDK/screenplaysdk.h b/ScreenPlaySDK/inc/public/ScreenPlaySDK/screenplaysdk.h index df394809..3631f9df 100644 --- a/ScreenPlaySDK/inc/public/ScreenPlaySDK/screenplaysdk.h +++ b/ScreenPlaySDK/inc/public/ScreenPlaySDK/screenplaysdk.h @@ -99,5 +99,4 @@ private: QString m_appID; QTimer m_pingAliveTimer; - QTimer m_firstConnectionTimer; }; diff --git a/ScreenPlaySDK/src/screenplaysdk.cpp b/ScreenPlaySDK/src/screenplaysdk.cpp index 6a7bf1da..4d088bea 100644 --- a/ScreenPlaySDK/src/screenplaysdk.cpp +++ b/ScreenPlaySDK/src/screenplaysdk.cpp @@ -29,14 +29,15 @@ void ScreenPlaySDK::start() global_sdkPtr = this; qInstallMessageHandler(ScreenPlaySDK::redirectMessageOutputToMainWindow); - m_socket.setServerName("ScreenPlay"); connect(&m_socket, &QLocalSocket::connected, this, &ScreenPlaySDK::connected); connect(&m_socket, &QLocalSocket::disconnected, this, &ScreenPlaySDK::disconnected); connect(&m_socket, &QLocalSocket::readyRead, this, &ScreenPlaySDK::readyRead); - connect(&m_firstConnectionTimer, &QTimer::timeout, this, &ScreenPlaySDK::disconnected); - // When we do not establish a connection in the first 5 seconds we abort. - m_firstConnectionTimer.start(5000); - m_socket.connectToServer(); + + m_socket.connectToServer("ScreenPlay"); + if (!m_socket.waitForConnected(1000)){ + emit disconnected(); + } + } ScreenPlaySDK::~ScreenPlaySDK() @@ -53,14 +54,14 @@ void ScreenPlaySDK::sendMessage(const QJsonObject& obj) void ScreenPlaySDK::connected() { - m_firstConnectionTimer.stop(); + if (m_appID.isEmpty() || m_type.isEmpty()) { qCritical() << "Unable to connect with empyt: " << m_appID << m_type; emit disconnected(); return; } - QByteArray welcomeMessage = QString(m_appID + "," + m_type).toUtf8(); + QByteArray welcomeMessage = QString("appID="+m_appID + "," + m_type).toUtf8(); m_socket.write(welcomeMessage); if (!m_socket.waitForBytesWritten()) { disconnected();