处理线程添加了错误通知

This commit is contained in:
zw
2025-09-11 15:25:57 +08:00
parent 5d20597993
commit 58ffb3a6aa

View File

@@ -706,8 +706,8 @@ void process_received_message(string mac, string id,const char* data, size_t len
<< ", Error: " << strerror(errno) << std::endl;
// <20>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>֪ͨ<CDA8>ƶ<EFBFBD>
on_device_response_minimal(static_cast<int>(ResponseCode::BAD_REQUEST),
id, 0, static_cast<int>(DeviceState::READING_EVENTFILE));
/*on_device_response_minimal(static_cast<int>(ResponseCode::BAD_REQUEST),
id, 0, static_cast<int>(DeviceState::READING_EVENTFILE));*/
}
//<2F><>ǰ<EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϣ<EFBFBD><CFA3><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD>д<EFBFBD><D0B4><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EEB9A4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD>أ<EFBFBD>һ<EFBFBD><D2BB><EFBFBD>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD>еȺ<D0B5><C8BA><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˣ<EFBFBD><CBA3><EFBFBD><EFBFBD>ɿ<EFBFBD><C9BF><EFBFBD>״̬<D7B4><CCAC>ֱ<EFBFBD>ӾͻῪʼ<E1BFAA><CABC><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ع<EFBFBD><D8B9><EFBFBD><EFBFBD><EFBFBD>
@@ -716,7 +716,7 @@ void process_received_message(string mac, string id,const char* data, size_t len
}
else {
// װ<>ô<EFBFBD><C3B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
on_device_response_minimal(static_cast<int>(ResponseCode::INTERNAL_ERROR), id, 0, static_cast<int>(DeviceState::READING_EVENTFILE));
//on_device_response_minimal(static_cast<int>(ResponseCode::INTERNAL_ERROR), id, 0, static_cast<int>(DeviceState::READING_EVENTFILE));
// <20><><EFBFBD>ղ<EFBFBD><D5B2><EFBFBD><EFBFBD>ļ<EFBFBD><C4BC><EFBFBD><EFBFBD>ݴ<EFBFBD><DDB4>󣬵<EFBFBD><F3A3ACB5><EFBFBD>Ϊ<EFBFBD><CEAA><EFBFBD><EFBFBD>״̬<D7B4><CCAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EEB9A4><EFBFBD><EFBFBD>
ClientManager::instance().change_device_state(id, DeviceState::IDLE);
}
@@ -848,6 +848,7 @@ void process_received_message(string mac, string id,const char* data, size_t len
}
else {
on_device_response_minimal(static_cast<int>(ResponseCode::INTERNAL_ERROR), id, 0, static_cast<int>(DeviceState::READING_FILEDATA));
std::cerr << "Failed to save file: " << file_path
<< ", Error: " << strerror(errno) << std::endl;
}
@@ -871,6 +872,7 @@ void process_received_message(string mac, string id,const char* data, size_t len
// ȷ<><C8B7><EFBFBD><EFBFBD><EFBFBD>ݳ<EFBFBD><DDB3><EFBFBD><EFBFBD><EFBFBD><E3B9BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if (parser.RecvData.size() < 1) {
std::cout << "Invalid fix value data length" << std::endl;
on_device_response_minimal(static_cast<int>(ResponseCode::INTERNAL_ERROR), id, 0, static_cast<int>(DeviceState::READING_FIXEDVALUE));
ClientManager::instance().change_device_state(id, DeviceState::IDLE);
break;
}
@@ -887,6 +889,7 @@ void process_received_message(string mac, string id,const char* data, size_t len
if (bufflen % structlen != 0) {
std::cout << "Invalid fix value data length: " << bufflen
<< " (not multiple of 4)" << std::endl;
on_device_response_minimal(static_cast<int>(ResponseCode::INTERNAL_ERROR), id, 0, static_cast<int>(DeviceState::READING_FIXEDVALUE));
ClientManager::instance().change_device_state(id, DeviceState::IDLE);
break;
}
@@ -950,6 +953,7 @@ void process_received_message(string mac, string id,const char* data, size_t len
if (bufflen == 0 || bufflen % structlen != 0) {
std::cerr << "Invalid fixdes data length: " << bufflen
<< " (expected multiple of " << structlen << ")" << std::endl;
on_device_response_minimal(static_cast<int>(ResponseCode::INTERNAL_ERROR), id, 0, static_cast<int>(DeviceState::READING_FIXEDVALUEDES));
ClientManager::instance().change_device_state(id, DeviceState::IDLE);
break;
}
@@ -1126,6 +1130,7 @@ void process_received_message(string mac, string id,const char* data, size_t len
std::cerr << "Invalid internal fixdes data length: " << bufflen
<< " (expected multiple of " << structlen << ")" << std::endl;
ClientManager::instance().change_device_state(id, DeviceState::IDLE);
on_device_response_minimal(static_cast<int>(ResponseCode::INTERNAL_ERROR), id, 0, static_cast<int>(DeviceState::READING_INTERFIXEDVALUEDES));
break;
}
else
@@ -1200,6 +1205,7 @@ void process_received_message(string mac, string id,const char* data, size_t len
if (bufflen == 0 || bufflen % structlen != 0) {
std::cerr << "Invalid control word data length: " << bufflen
<< " (expected multiple of " << structlen << ")" << std::endl;
on_device_response_minimal(static_cast<int>(ResponseCode::INTERNAL_ERROR), id, 0, static_cast<int>(DeviceState::READING_CONTROLWORD));
ClientManager::instance().change_device_state(id, DeviceState::IDLE);
break;
}