设备心跳调整 app新增增设备时绑定联网设备

This commit is contained in:
yuhaiming
2026-06-13 10:51:45 +08:00
parent c7f9df980a
commit c74363afa4
65 changed files with 1622 additions and 592 deletions

View File

@@ -31,11 +31,11 @@ public class PlusWebSocketHandler extends AbstractWebSocketHandler {
LoginUser loginUser = (LoginUser) session.getAttributes().get(LOGIN_USER_KEY);
if (ObjectUtil.isNull(loginUser)) {
session.close(CloseStatus.BAD_DATA);
log.info("[connect] invalid token received. sessionId: {}", session.getId());
log.info("[连接] 收到无效令牌会话ID={}", session.getId());
return;
}
WebSocketSessionHolder.addSession(loginUser.getUserId(), new ConcurrentWebSocketSessionDecorator(session, 10 * 1000, 64000));
log.info("[connect] sessionId: {},userId:{},userType:{}", session.getId(), loginUser.getUserId(), loginUser.getUserType());
log.info("[连接] 会话ID={}用户ID={},用户类型={}", session.getId(), loginUser.getUserId(), loginUser.getUserType());
}
/**
@@ -90,7 +90,7 @@ public class PlusWebSocketHandler extends AbstractWebSocketHandler {
*/
@Override
public void handleTransportError(WebSocketSession session, Throwable exception) throws Exception {
log.error("[transport error] sessionId: {} , exception:{}", session.getId(), exception.getMessage());
log.error("[传输错误] 会话ID={},异常={}", session.getId(), exception.getMessage());
}
/**
@@ -103,11 +103,11 @@ public class PlusWebSocketHandler extends AbstractWebSocketHandler {
public void afterConnectionClosed(WebSocketSession session, CloseStatus status) {
LoginUser loginUser = (LoginUser) session.getAttributes().get(LOGIN_USER_KEY);
if (ObjectUtil.isNull(loginUser)) {
log.info("[disconnect] invalid token received. sessionId: {}", session.getId());
log.info("[断开连接] 收到无效令牌会话ID={}", session.getId());
return;
}
WebSocketSessionHolder.removeSession(loginUser.getUserId());
log.info("[disconnect] sessionId: {},userId:{},userType:{}", session.getId(), loginUser.getUserId(), loginUser.getUserType());
log.info("[断开连接] 会话ID={}用户ID={},用户类型={}", session.getId(), loginUser.getUserId(), loginUser.getUserType());
}
/**

View File

@@ -54,7 +54,7 @@ public class PlusWebSocketInterceptor implements HandshakeInterceptor {
attributes.put(LOGIN_USER_KEY, loginUser);
return true;
} catch (NotLoginException e) {
log.error("WebSocket 认证失败'{}',无法访问系统资源", e.getMessage());
log.error("网络套接字认证失败'{}',无法访问系统资源", e.getMessage());
return false;
}
}

View File

@@ -26,7 +26,7 @@ public class WebSocketTopicListener implements ApplicationRunner, Ordered {
public void run(ApplicationArguments args) throws Exception {
// 订阅WebSocket消息
WebSocketUtils.subscribeMessage((message) -> {
log.info("WebSocket主题订阅收到消息session keys={} message={}", message.getSessionKeys(), message.getMessage());
log.info("网络套接字主题订阅收到消息 会话标识={} 消息={}", message.getSessionKeys(), message.getMessage());
// 如果key不为空就按照key发消息 如果为空就群发
if (CollUtil.isNotEmpty(message.getSessionKeys())) {
message.getSessionKeys().forEach(key -> {
@@ -40,7 +40,7 @@ public class WebSocketTopicListener implements ApplicationRunner, Ordered {
});
}
});
log.info("初始化WebSocket主题订阅监听器成功");
log.info("初始化网络套接字主题订阅监听器成功");
}
@Override

View File

@@ -69,7 +69,7 @@ public class WebSocketUtils {
broadcastMessage.setMessage(webSocketMessage.getMessage());
broadcastMessage.setSessionKeys(unsentSessionKeys);
RedisUtils.publish(WEB_SOCKET_TOPIC, broadcastMessage, consumer -> {
log.info(" WebSocket发送主题订阅消息topic:{} session keys:{} message:{}",
log.info("网络套接字发送主题订阅消息 主题={} 会话标识={} 消息={}",
WEB_SOCKET_TOPIC, unsentSessionKeys, webSocketMessage.getMessage());
});
}
@@ -84,7 +84,7 @@ public class WebSocketUtils {
WebSocketMessageDto broadcastMessage = new WebSocketMessageDto();
broadcastMessage.setMessage(message);
RedisUtils.publish(WEB_SOCKET_TOPIC, broadcastMessage, consumer -> {
log.info("WebSocket发送主题订阅消息topic:{} message:{}", WEB_SOCKET_TOPIC, message);
log.info("网络套接字发送主题订阅消息 主题={} 消息={}", WEB_SOCKET_TOPIC, message);
});
}
@@ -115,12 +115,12 @@ public class WebSocketUtils {
*/
private static void sendMessage(WebSocketSession session, WebSocketMessage<?> message) {
if (session == null || !session.isOpen()) {
log.warn("[send] session会话已经关闭");
log.warn("[发送] 会话已经关闭");
} else {
try {
session.sendMessage(message);
} catch (IOException e) {
log.error("[send] session({}) 发送消息({}) 异常", session, message, e);
log.error("[发送] 会话({}) 发送消息({}) 异常", session, message, e);
}
}
}