| | |
| | | |
| | | static unsigned short DATAID = 1; |
| | | |
| | | // Truncated SECS message logging to avoid overly long strings crashing UI/log |
| | | static void LogSecsMessageBrief(const char* tag, IMessage* pMessage, size_t maxLen = 1024) |
| | | { |
| | | if (pMessage == nullptr) return; |
| | | const char* msgStr = pMessage->toString(); |
| | | if (msgStr == nullptr) return; |
| | | std::string buf(msgStr); |
| | | if (buf.size() > maxLen) { |
| | | buf = buf.substr(0, maxLen) + "...<truncated>"; |
| | | } |
| | | LOGI("%s%s", tag, buf.c_str()); |
| | | } |
| | | |
| | | CHsmsActive::CHsmsActive() |
| | | { |
| | | m_listener = {}; |
| | |
| | | int nStream = (pHeader->stream & 0x7F); |
| | | |
| | | TRACE("收到消息 S%dF%d================\n", pHeader->stream & 0x7F, pHeader->function); |
| | | TRACE("Body:%s\n", pMessage->toString()); |
| | | LOGI("onRecvDataMessage(%s).", pMessage->toString()); |
| | | LogSecsMessageBrief("Body:", pMessage); |
| | | LogSecsMessageBrief("onRecvDataMessage:", pMessage); |
| | | |
| | | if (nStream == 5 && pHeader->function == 1) { |
| | | // S5F1 |
| | |
| | | return 0; |
| | | } |
| | | |
| | | int CHsmsActive::hsmsQueryAllStatusVariables() |
| | | { |
| | | IMessage* pMessage = nullptr; |
| | | int nRet = HSMS_Create1Message(pMessage, m_nSessionId, 1 | REPLY, 11, ++m_nSystemByte); |
| | | // Host sends L:0 (empty list) to request all SVIDs. |
| | | pMessage->getBody()->addItem(); // empty list |
| | | m_pActive->sendMessage(pMessage); |
| | | HSMS_Destroy1Message(pMessage); |
| | | return 0; |
| | | } |
| | | |
| | | int CHsmsActive::hsmsQueryAllCollectionEvents() |
| | | { |
| | | IMessage* pMessage = nullptr; |
| | | int nRet = HSMS_Create1Message(pMessage, m_nSessionId, 1 | REPLY, 23, ++m_nSystemByte); |
| | | // Host sends L:0 (empty list) to request all CEIDs. |
| | | pMessage->getBody()->addItem(); // empty list |
| | | m_pActive->sendMessage(pMessage); |
| | | HSMS_Destroy1Message(pMessage); |
| | | return 0; |
| | | } |
| | | |
| | | int CHsmsActive::hsmsQueryPPIDList() |
| | | { |
| | | IMessage* pMessage = nullptr; |