diff --git a/src/ebusd/baseloop.cpp b/src/ebusd/baseloop.cpp index 1a027b3f..21ccf129 100644 --- a/src/ebusd/baseloop.cpp +++ b/src/ebusd/baseloop.cpp @@ -242,11 +242,11 @@ string BaseLoop::decodeMessage(const string& data) istringstream input; result_t ret = message->prepareMaster(m_ownAddress, master, input); if (ret != RESULT_OK) { - L.log(bas, error, " prepare message: %s", getResultCode(ret)); + L.log(bas, error, " prepare read: %s", getResultCode(ret)); result << getResultCode(ret); break; } - L.log(bas, event, " msg: %s", master.getDataStr().c_str()); + L.log(bas, event, " read msg: %s", master.getDataStr().c_str()); // send message SymbolString slave; @@ -257,7 +257,7 @@ string BaseLoop::decodeMessage(const string& data) ret = message->decode(pt_slaveData, slave, result); // decode data } if (ret != RESULT_OK) { - L.log(bas, error, " %s", getResultCode(ret)); + L.log(bas, error, " read: %s", getResultCode(ret)); result << getResultCode(ret); } @@ -280,11 +280,11 @@ string BaseLoop::decodeMessage(const string& data) istringstream input(cmd[3]); result_t ret = message->prepareMaster(m_ownAddress, master, input); if (ret != RESULT_OK) { - L.log(bas, error, " prepare message: %s", getResultCode(ret)); + L.log(bas, error, " prepare write: %s", getResultCode(ret)); result << getResultCode(ret); break; } - L.log(bas, event, " msg: %s", master.getDataStr().c_str()); + L.log(bas, event, " write msg: %s", master.getDataStr().c_str()); // send message SymbolString slave; @@ -300,7 +300,7 @@ string BaseLoop::decodeMessage(const string& data) } } if (ret != RESULT_OK) { - L.log(bas, error, " %s", getResultCode(ret)); + L.log(bas, error, " write: %s", getResultCode(ret)); result << getResultCode(ret); } @@ -347,7 +347,7 @@ string BaseLoop::decodeMessage(const string& data) msg << hex << setw(2) << setfill('0') << static_cast(m_ownAddress); msg << cmd[1]; SymbolString master(msg.str()); - L.log(bas, event, " msg: %s", master.getDataStr().c_str()); + L.log(bas, event, " hex msg: %s", master.getDataStr().c_str()); // send message SymbolString slave; @@ -360,7 +360,7 @@ string BaseLoop::decodeMessage(const string& data) result << slave.getDataStr(); } if (ret != RESULT_OK) { - L.log(bas, error, " %s", getResultCode(ret)); + L.log(bas, error, " hex: %s", getResultCode(ret)); result << getResultCode(ret); } @@ -368,31 +368,38 @@ string BaseLoop::decodeMessage(const string& data) break; - /*case ct_scan: + case ct_scan: if (cmd.size() == 1) { - m_busloop->scan(); - result << "done"; + result_t ret = m_busHandler->startScan(); + if (ret != RESULT_OK) { + L.log(bas, error, " scan: %s", getResultCode(ret)); + result << getResultCode(ret); + } + else + result << "scan initiated"; break; } if (strcasecmp(cmd[1].c_str(), "FULL") == 0) { - m_busloop->scan(true); - result << "done"; + result_t ret = m_busHandler->startScan(true); + if (ret != RESULT_OK) { + L.log(bas, error, " full scan: %s", getResultCode(ret)); + result << getResultCode(ret); + } + else + result << "done"; break; } if (strcasecmp(cmd[1].c_str(), "RESULT") == 0) { - // TODO format scan results - for (size_t i = 0; i < m_commands->sizeScanDB(); i++) - result << m_commands->getScanData(i) << endl; - + m_busHandler->formatScanResult(result); break; } result << "usage: 'scan'" << endl << " 'scan full'" << endl << " 'scan result'"; - break;*/ + break; case ct_log: if (cmd.size() != 3 ) {