From c96ec4c44d31e4df6da3ce904fd3c6d8f3548c2d Mon Sep 17 00:00:00 2001
From: LAPTOP-SNT8I5JK\Boounion <Chenluhua@qq.com>
Date: 星期五, 11 七月 2025 08:33:21 +0800
Subject: [PATCH] 1.终端信息显示模拟测试;
---
SourceCode/Bond/EAPSimulator/CHsmsActive.cpp | 51 ++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 50 insertions(+), 1 deletions(-)
diff --git a/SourceCode/Bond/EAPSimulator/CHsmsActive.cpp b/SourceCode/Bond/EAPSimulator/CHsmsActive.cpp
index 8a60924..c5a6a1c 100644
--- a/SourceCode/Bond/EAPSimulator/CHsmsActive.cpp
+++ b/SourceCode/Bond/EAPSimulator/CHsmsActive.cpp
@@ -1,5 +1,6 @@
#include "pch.h"
#include "CHsmsActive.h"
+#include "Log.h"
CHsmsActive::CHsmsActive()
@@ -24,7 +25,6 @@
{
m_strIp = pszIp;
m_nPort = port;
- ++m_nSessionId;
auto onStatusChanged = [&](void* pFrom, ACTIVESTATE state) -> void {
if (m_listener.onStateChanged != nullptr) {
@@ -32,16 +32,21 @@
}
if (ACTIVESTATE::NOT_SELECTED == state) {
+ LOGI("Active state changed(NOT_SELECTED).");
hsmsSelectRequest();
}
else if (ACTIVESTATE::SELECTED == state) {
+ LOGI("Active state changed(SELECTED).");
hsmsEstablishCommunications();
}
else if (ACTIVESTATE::NOT_CONNECTED == state) {
+ LOGI("Active state changed(NOT_CONNECTED).");
m_pActive->disconnect();
}
};
auto onRecvSysMessage = [&](void* pFrom, IMessage* pMessage) -> void {
+ LOGI("onRecvSysMessage(sessionId:%d, sType:%d).",
+ pMessage->getHeader()->sessionId, pMessage->getHeader()->sType);
TRACE("sessionId:%d, sType:%d\n", pMessage->getHeader()->sessionId, pMessage->getHeader()->sType);
};
@@ -57,6 +62,7 @@
HEADER* pHeader = pMessage->getHeader();
TRACE("收到消息 S%dF%d================\n", pHeader->stream & 0x7F, pHeader->function);
TRACE("Body:%s\n", pMessage->toString());
+ LOGI("onRecvDataMessage(%s).", pMessage->toString());
};
ActiveListener listener;
@@ -113,3 +119,46 @@
return 0;
}
+
+int CHsmsActive::hsmsAreYouThere()
+{
+ IMessage* pMessage = nullptr;
+ int nRet = HSMS_Create1Message(pMessage, m_nSessionId, 1 | REPLY, 1, ++m_nSystemByte);
+ m_pActive->sendMessage(pMessage);
+ HSMS_Destroy1Message(pMessage);
+
+ return 0;
+}
+
+int CHsmsActive::hsmsDatetimeSync()
+{
+ CTime time = CTime::GetCurrentTime();
+ char szTime[256];
+ sprintf_s(szTime, 256, _T("%4d%02d%02d%02d%02d%02d00"), time.GetYear(),
+ time.GetMonth(), time.GetDay(), time.GetHour(), time.GetMinute(), time.GetSecond());
+
+ IMessage* pMessage = nullptr;
+ int nRet = HSMS_Create1Message(pMessage, m_nSessionId, 2 | REPLY, 31, ++m_nSystemByte);
+ ISECS2Item* pItem = pMessage->getBody();
+ pItem->setString((const char*)szTime, _T("Date time"));
+ m_pActive->sendMessage(pMessage);
+ HSMS_Destroy1Message(pMessage);
+
+ return 0;
+}
+
+int CHsmsActive::hsmsTerminalDisplay(BYTE tid, const char* pszText)
+{
+ char szTid[1];
+ szTid[0] = tid;
+
+ IMessage* pMessage = nullptr;
+ int nRet = HSMS_Create1Message(pMessage, m_nSessionId, 10 | REPLY, 3, ++m_nSystemByte);
+ ISECS2Item* pItem = pMessage->getBody();
+ pItem->addBinaryItem(szTid, 1, _T("TID"));
+ pItem->addItem(pszText, _T("TEXT"));
+ m_pActive->sendMessage(pMessage);
+ HSMS_Destroy1Message(pMessage);
+
+ return 0;
+}
--
Gitblit v1.9.3