feat: 增加socket通知并调整数据结构

dev
huangfeng 9 months ago
parent 27278845b9
commit 5bc859e5f4

@ -25,7 +25,7 @@ public class TestController extends BaseController {
@GetMapping("sendMsg") @GetMapping("sendMsg")
@ApiOperation("发送消息") @ApiOperation("发送消息")
public void sendMsg(String msg) { public void sendMsg(String msg) {
webSocketServer.sendMessage(msg); webSocketServer.sendNotice(msg);
} }
@GetMapping("test") @GetMapping("test")

@ -0,0 +1,9 @@
package com.shxy.xymanager_common.model;
import lombok.Data;
@Data
public class MessageModel {
int type;
String content;
}

@ -1,5 +1,7 @@
package com.shxy.xymanager_framework.socket; package com.shxy.xymanager_framework.socket;
import com.shxy.xymanager_common.model.MessageModel;
import com.shxy.xymanager_common.util.JSONUtil;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
@ -29,12 +31,31 @@ public class WebSocketServer {
log.info("剩余socket连接数" + sessionPools.size()); log.info("剩余socket连接数" + sessionPools.size());
} }
public void sendMessage(String message) { public void sendWarning(String message) {
MessageModel msg = new MessageModel();
msg.setType(1);
msg.setContent(message);
String json = JSONUtil.object2Json(msg);
Iterator<Session> it = sessionPools.listIterator(); Iterator<Session> it = sessionPools.listIterator();
while (it.hasNext()) { while (it.hasNext()) {
Session session = it.next(); Session session = it.next();
try { try {
session.getBasicRemote().sendText(message); session.getBasicRemote().sendText(json);
} catch (Exception ignore) {
}
}
}
public void sendNotice(String message) {
MessageModel msg = new MessageModel();
msg.setType(2);
msg.setContent(message);
String json = JSONUtil.object2Json(msg);
Iterator<Session> it = sessionPools.listIterator();
while (it.hasNext()) {
Session session = it.next();
try {
session.getBasicRemote().sendText(json);
} catch (Exception ignore) { } catch (Exception ignore) {
} }
} }

@ -29,7 +29,7 @@ public class AlertTask {
if (shutdown == 0 && DingTalkPushUtil.alertYW.size() > 0) { if (shutdown == 0 && DingTalkPushUtil.alertYW.size() > 0) {
String str = DingTalkPushUtil.alertYW.get(0); String str = DingTalkPushUtil.alertYW.get(0);
DingTalkPushUtil.alertYW.remove(0); DingTalkPushUtil.alertYW.remove(0);
webSocketServer.sendMessage(str); webSocketServer.sendWarning(str);
DingTalkPushUtil.pushText("运维", str); DingTalkPushUtil.pushText("运维", str);
} }
} }

Loading…
Cancel
Save