|
@@ -158,6 +158,13 @@ public class MyWebSocketHandler extends TextWebSocketHandler {
|
|
|
} else {
|
|
|
_b = false;
|
|
|
}
|
|
|
+
|
|
|
+ //消息发送到redis
|
|
|
+ boolean flag = getSendOtherFlag(bson);
|
|
|
+ if(!flag) {
|
|
|
+ return ;
|
|
|
+ }
|
|
|
+
|
|
|
Map maps = new HashMap<>();
|
|
|
//执行其他操作成功后,可调用消息发送给窗口
|
|
|
String returnMessage = "error";
|
|
@@ -175,7 +182,6 @@ public class MyWebSocketHandler extends TextWebSocketHandler {
|
|
|
}
|
|
|
map.put("data", contentReal);
|
|
|
String param = obj.writeValueAsString(map);
|
|
|
- //消息发送到redis
|
|
|
redisMessagePublish.publishMessage(new RedisMessageModel(ipAndPort, wsUserModel.getGridKey(), param));
|
|
|
sendMessageToUserByCurrent(wsUserModel, param);
|
|
|
} else {
|
|
@@ -212,6 +218,31 @@ public class MyWebSocketHandler extends TextWebSocketHandler {
|
|
|
closeConn(session, false);
|
|
|
}
|
|
|
|
|
|
+ /**
|
|
|
+ * 是否通知其他用户
|
|
|
+ *
|
|
|
+ * @param bjson
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private boolean getSendOtherFlag(JSONObject bjson) {
|
|
|
+ boolean flag = true;
|
|
|
+
|
|
|
+ //筛选的
|
|
|
+ if(bjson.containsKey("k") &&
|
|
|
+ ("filter_select".equals(bjson.getString("k"))
|
|
|
+ || "zoomRatio".equals(bjson.getString("k"))
|
|
|
+ )
|
|
|
+ ) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ if("fsc".equals(bjson.getString("t")) || "fsr".equals(bjson.getString("t"))) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ return flag;
|
|
|
+ }
|
|
|
+
|
|
|
private void openConn(WebSocketSession session) {
|
|
|
//创建一个连接窗口,并加入的队列中
|
|
|
WSUserModel ws = new WSUserModel(session);
|