diff --git a/spectrum/src/frontends/slack/SlackRTM.cpp b/spectrum/src/frontends/slack/SlackRTM.cpp index 1a5e72f0fc9c917df3d5499b8080d6274ad75e8b..3d1eff7bc81e6502c6712b3d3bc8370c0815b0ac 100644 --- a/spectrum/src/frontends/slack/SlackRTM.cpp +++ b/spectrum/src/frontends/slack/SlackRTM.cpp @@ -43,6 +43,8 @@ SlackRTM::SlackRTM(Component *component, StorageBackend *storageBackend, UserInf m_counter = 0; m_client = new WebSocketClient(component); m_client->onPayloadReceived.connect(boost::bind(&SlackRTM::handlePayloadReceived, this, _1)); + m_client->onWebSocketConnected.connect(boost::bind(&SlackRTM::handleWebSocketConnected, this)); + m_pingTimer = m_component->getNetworkFactories()->getTimerFactory()->createTimer(20000); m_pingTimer->onTick.connect(boost::bind(&SlackRTM::sendPing, this)); @@ -127,7 +129,9 @@ void SlackRTM::handleRTMStart(HTTPRequest *req, bool ok, rapidjson::Document &re m_client->connectServer(u); m_pingTimer->start(); +} +void SlackRTM::handleWebSocketConnected() { onRTMStarted(); }