Procházet zdrojové kódy

框架内dev插件增加webscoket封装,增加api接口

zhaosongshan před 7 měsíci
rodič
revize
83b0a8088e

+ 23 - 0
snowy-plugin/snowy-plugin-dev/snowy-plugin-dev-api/src/main/java/vip/xiaonuo/dev/api/DevWebScoketApi.java

@@ -0,0 +1,23 @@
+package vip.xiaonuo.dev.api;
+
+import com.alibaba.fastjson.JSONObject;
+
+/**
+ * webscoket 接口
+ */
+public interface DevWebScoketApi {
+    /**
+     * 发送消息
+     * @param message
+     * @param clientId
+     * @return
+     */
+    JSONObject sendMessage(String message, String clientId);
+
+    /**
+     * 群发消息
+     * @param message
+     * @return
+     */
+    JSONObject sendMessageAll(String message);
+}

+ 72 - 0
snowy-plugin/snowy-plugin-dev/snowy-plugin-dev-func/src/main/java/vip/xiaonuo/dev/modular/config/provider/DevWebScoketApiProvider.java

@@ -0,0 +1,72 @@
+package vip.xiaonuo.dev.modular.config.provider;
+
+import com.alibaba.fastjson.JSONObject;
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.stereotype.Service;
+import vip.xiaonuo.dev.api.DevWebScoketApi;
+import vip.xiaonuo.dev.core.websocket.WebSocketServer;
+
+import javax.annotation.Resource;
+
+/**
+ * @PackageName:vip.xiaonuo.dev.modular.config.provider
+ * @ClassName:DevWebScoketApiProvider
+ * @Author ZSS
+ * @Date 2025-07-25 09:04
+ * @Note: WebSocketApi接口实现类
+ **/
+@Slf4j
+@Service("DevWebScoketApiProvider")
+public class DevWebScoketApiProvider implements DevWebScoketApi {
+    @Resource
+    private WebSocketServer webSocketServer;
+
+    /**
+     * 发送消息
+     *
+     * @param message
+     * @param clientId
+     * @return
+     */
+    @Override
+    public JSONObject sendMessage(String message, String clientId) {
+        JSONObject jsonObject = new JSONObject();
+        try {
+            webSocketServer.sendMessage(message,clientId);
+            jsonObject.put("code",200);
+            jsonObject.put("message","发送成功");
+            jsonObject.put("data","");
+            return jsonObject;
+        } catch (Exception e) {
+            log.error("发送消息异常:{}",e.getMessage());
+            jsonObject.put("code",500);
+            jsonObject.put("message","发送失败");
+            jsonObject.put("data",e.getMessage());
+            return jsonObject;
+        }
+    }
+
+    /**
+     * 群发消息
+     *
+     * @param message
+     * @return
+     */
+    @Override
+    public JSONObject sendMessageAll(String message) {
+        JSONObject jsonObject = new JSONObject();
+        try {
+            webSocketServer.sendMessageAll(message);
+            jsonObject.put("code",200);
+            jsonObject.put("message","群发成功");
+            jsonObject.put("data","");
+            return jsonObject;
+        } catch (Exception e) {
+            log.error("群发消息异常:{}",e.getMessage());
+            jsonObject.put("code",500);
+            jsonObject.put("message","群发失败");
+            jsonObject.put("data",e.getMessage());
+            return jsonObject;
+        }
+    }
+}