前置新增了装置心跳传输流程,每30秒自动发送一次心跳报文
This commit is contained in:
@@ -398,6 +398,19 @@ void process_received_message(string mac, string id,const char* data, size_t len
|
||||
// 这里可以添加处理主动上报数据的逻辑
|
||||
break;
|
||||
|
||||
case DeviceState::HEART_BEAT:
|
||||
//接收到心跳报文应答
|
||||
if (udata[8] == static_cast<unsigned char>(MsgResponseType::Response_HeartBeat)) {
|
||||
std::cout << "heartbeat success" << mac << std::endl;
|
||||
//心跳设置成功,调整为空闲,处理后续工作。
|
||||
ClientManager::instance().change_device_state(id, DeviceState::IDLE);
|
||||
}
|
||||
else {
|
||||
// 装置答非所问异常
|
||||
// 接收心跳报文错误,调整为空闲状态,处理下一项工作。
|
||||
ClientManager::instance().change_device_state(id, DeviceState::IDLE);
|
||||
}
|
||||
|
||||
case DeviceState::READING_STATS:
|
||||
// 读取统计数据状态
|
||||
if (udata[8] == static_cast<unsigned char>(MsgResponseType::Response_Stat)) {
|
||||
|
||||
Reference in New Issue
Block a user