im客服问题修改

This commit is contained in:
liyj 2025-11-13 18:47:03 +08:00
parent 06a34dd59a
commit a049277ea0

View File

@ -1,11 +1,9 @@
package com.suisung.mall.im.common.websocket.service.onchat; package com.suisung.mall.im.common.websocket.service.onchat;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.convert.Convert; import cn.hutool.core.convert.Convert;
import cn.hutool.core.util.IdUtil; import cn.hutool.core.util.IdUtil;
import cn.hutool.json.JSONUtil; import cn.hutool.json.JSONUtil;
import com.suisung.mall.common.feignService.AccountService; import com.suisung.mall.common.feignService.AccountService;
import com.suisung.mall.common.utils.CheckUtil;
import com.suisung.mall.im.common.websocket.service.DistributedMessageService; import com.suisung.mall.im.common.websocket.service.DistributedMessageService;
import com.suisung.mall.im.common.websocket.service.DistributedSessionService; import com.suisung.mall.im.common.websocket.service.DistributedSessionService;
import com.suisung.mall.im.common.websocket.service.LocalSessionManager; import com.suisung.mall.im.common.websocket.service.LocalSessionManager;
@ -65,6 +63,8 @@ public class MallsuiteImSocketHandler implements WebSocketHandler {
// 存储到本地会话管理 // 存储到本地会话管理
localSessionManager.addUserSession(loginUserId, session); localSessionManager.addUserSession(loginUserId, session);
logger.info("添加会话到本地成功:{}", localSessionManager.userSessions.values());
// 注册到分布式会话服务 // 注册到分布式会话服务
Map<String, Object> attributes = new HashMap<>(); Map<String, Object> attributes = new HashMap<>();
attributes.put("user_id", session.getAttributes().get("user_id")); attributes.put("user_id", session.getAttributes().get("user_id"));
@ -306,7 +306,7 @@ public class MallsuiteImSocketHandler implements WebSocketHandler {
// 获取本地所有用户会话 // 获取本地所有用户会话
for (List<WebSocketSession> sessions : localSessionManager.userSessions.values()) { for (List<WebSocketSession> sessions : localSessionManager.userSessions.values()) {
for (WebSocketSession session : sessions) { for (WebSocketSession session : sessions) {
if (session.isOpen()) { if (session!=null&&session.isOpen()) {
try { try {
session.sendMessage(new TextMessage(message.toString())); session.sendMessage(new TextMessage(message.toString()));
} catch (IOException e) { } catch (IOException e) {