refactor(websocket): 优化websocket消息处理及状态检查逻辑

移除调试日志输出并优化微信账号状态检查逻辑
添加深拷贝工具函数并应用于客服列表处理
将状态检查改为间隔10秒的轮询方式
This commit is contained in:
超级老白兔
2025-09-02 10:18:25 +08:00
parent 20658c3ca5
commit e7b795f744
6 changed files with 54 additions and 12 deletions

View File

@@ -27,10 +27,9 @@ export const useCkChatStore = createPersistStore<CkChatState>(
// await kfUserService.createManyWithServerId(data);
},
// 获取客服列表
getkfUserList: async () => {
getkfUserList: () => {
const state = useCkChatStore.getState();
return state.kfUserList;
// return await kfUserService.findAll();
},
// 异步设置标签列表
asyncCountLables: async (data: ContactGroupByLabel[]) => {

View File

@@ -1,4 +1,5 @@
//消息管理器
import { deepCopy } from "@/utils/common";
import { WebSocketMessage } from "./websocket";
import { getkfUserList, asyncKfUserList } from "@/store/module/ckchat/ckchat";
// 消息处理器类型定义
@@ -8,9 +9,9 @@ type MessageHandler = (message: WebSocketMessage) => void;
const messageHandlers: Record<string, MessageHandler> = {
// 微信账号存活状态响应
CmdRequestWechatAccountsAliveStatusResp: message => {
console.log("微信账号存活状态响应", message);
// console.log("微信账号存活状态响应", message);
// 获取客服列表
const kfUserList = getkfUserList();
const kfUserList = deepCopy(getkfUserList());
const wechatAccountsAliveStatus = message.wechatAccountsAliveStatus || {};
// 遍历客服列表,更新存活状态
kfUserList.forEach(kfUser => {
@@ -59,8 +60,6 @@ export const getRegisteredMessageTypes = (): string[] => {
// 消息管理核心函数
export const msgManageCore = (message: WebSocketMessage) => {
console.log("获取消息---------------------");
const cmdType = message.cmdType;
if (!cmdType) {
console.warn("消息缺少cmdType字段", message);