| 
					
				 | 
			
			
				@@ -8,7 +8,9 @@ import com.corundumstudio.socketio.annotation.OnDisconnect; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.corundumstudio.socketio.annotation.OnEvent; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.corundumstudio.socketio.protocol.Packet; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.corundumstudio.socketio.protocol.PacketType; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.corundumstudio.socketio.store.pubsub.DispatchMessage; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.corundumstudio.socketio.store.pubsub.PubSubStore; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import com.corundumstudio.socketio.store.pubsub.PubSubType; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.google.common.collect.Lists; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.biz.service.WsConnectService; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import com.ym.mec.web.support.anno.NamespaceReference; 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -78,7 +80,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,12 +90,12 @@ 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); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				-            //pubSubStore.publish(PubSubType.DISPATCH, new DispatchMessage(roomId, packet, namespace)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            pubSubStore.publish(PubSubType.DISPATCH, new DispatchMessage(roomId, packet, namespace)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } catch (Exception e) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				             log.error("PubSubType.DISPATCH roomId={}, sid={}", roomId, client.getSessionId(), e); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				         } 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -166,7 +168,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 +233,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 +252,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 +271,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)); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } 
			 |