/*------------------------------------------------------- Downstream MQTTPubAck -------------------------------------------------------*/ void GatewayControlTask::handlePuback(Event* ev, ClientNode* clnode, MQTTMessage* msg){ MQTTPubAck* mqMsg = static_cast<MQTTPubAck*>(msg); MQTTSnPubAck* snMsg = clnode->getWaitedPubAck(); if(snMsg){ printf(BLUE_FORMAT1, currentDateTime(), "PUBACK", RIGHTARROW, clnode->getNodeId()->c_str(), msgPrint(snMsg)); if(snMsg->getMsgId() == mqMsg->getMessageId()){ clnode->setWaitedPubAck(0); clnode->setClientSendMessage(snMsg); Event* ev1 = new Event(); ev1->setClientSendEvent(clnode); _res->getClientSendQue()->post(ev1); } } }