Selaa lähdekoodia

fix调整socket事件分发

Eric 2 vuotta sitten
vanhempi
commit
72040c743f

+ 6 - 6
mec-websocket/src/main/java/com/ym/mec/web/handler/WhiteboardHandler.java

@@ -78,7 +78,7 @@ public class WhiteboardHandler {
      * @param eventName 事件名称
      * @param data      发送数据
      */
-    public void dispatchMessage(SocketIOClient client, String roomId, String eventName, List<Object> data) {
+    public void dispatchMessage(SocketIOClient client, String roomId, String eventName, PacketType subType, List<Object> data) {
 
         // 分发消息(当前服务不会向client推送自己分发出去的消息)
         try {
@@ -88,7 +88,7 @@ public class WhiteboardHandler {
 
             // 发送数据包
             Packet packet = new Packet(PacketType.MESSAGE);
-            packet.setSubType(PacketType.EVENT);
+            packet.setSubType(subType);
             packet.setName(eventName);
             packet.setNsp(namespace);
             packet.setData(data);
@@ -166,7 +166,7 @@ public class WhiteboardHandler {
             }
 
             // 消息分发
-            dispatchMessage(client, roomId, EVENT_ROOM_USER_CHANGE, Collections.singletonList(collect));
+            dispatchMessage(client, roomId, EVENT_ROOM_USER_CHANGE, PacketType.EVENT, Collections.singletonList(collect));
         }
 
         if (StringUtils.isNoneBlank(roomId, userId, clientType)) {
@@ -231,7 +231,7 @@ public class WhiteboardHandler {
         }
 
         // 消息分发
-        dispatchMessage(client, roomId, EVENT_JOIN_ROOM, Collections.singletonList(roomId));
+        dispatchMessage(client, roomId, EVENT_JOIN_ROOM, PacketType.EVENT, Collections.singletonList(roomId));
     }
 
     /**
@@ -250,7 +250,7 @@ public class WhiteboardHandler {
         roomOperations.sendEvent(EVENT_CLIENT_BROADCAST, encryptedData, iv);
 
         // 消息分发
-        dispatchMessage(client, roomId, EVENT_CLIENT_BROADCAST, Arrays.asList(encryptedData, iv));
+        dispatchMessage(client, roomId, EVENT_CLIENT_BROADCAST, PacketType.BINARY_EVENT, Arrays.asList(encryptedData, iv));
     }
 
     /**
@@ -269,6 +269,6 @@ public class WhiteboardHandler {
         roomOperations.sendEvent(EVENT_CLIENT_BROADCAST, encryptedData, iv);
 
         // 消息分发
-        dispatchMessage(client, roomId, EVENT_CLIENT_BROADCAST, Arrays.asList(encryptedData, iv));
+        dispatchMessage(client, roomId, EVENT_CLIENT_BROADCAST, PacketType.BINARY_EVENT, Arrays.asList(encryptedData, iv));
     }
 }