From af2e8935b4f748399cdd9b77ecfebaeb5c63e8d6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=96=AF=E7=8B=82=E7=9A=84=E7=8B=AE=E5=AD=90Li?= <15040126243@163.com> Date: Thu, 18 Jan 2024 12:16:16 +0800 Subject: [PATCH] =?UTF-8?q?update=20=E4=BC=98=E5=8C=96=20=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E6=B6=88=E6=81=AF=20=E6=94=AF=E6=8C=81=E9=9B=86?= =?UTF-8?q?=E7=BE=A4=E5=8F=91=E9=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/dromara/resource/api/RemoteMessageService.java | 2 +- .../dromara/resource/api/RemoteMessageServiceStub.java | 4 ++-- .../org/dromara/auth/controller/TokenController.java | 2 +- .../resource/dubbo/RemoteMessageServiceImpl.java | 10 ++++++++-- 4 files changed, 12 insertions(+), 6 deletions(-) diff --git a/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageService.java b/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageService.java index 6b2ecb53..c6ea3f51 100644 --- a/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageService.java +++ b/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageService.java @@ -13,7 +13,7 @@ public interface RemoteMessageService { * @param sessionKey session主键 一般为用户id * @param message 消息文本 */ - void sendMessage(Long sessionKey, String message); + void publishMessage(Long sessionKey, String message); void publishAll(String message); } diff --git a/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageServiceStub.java b/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageServiceStub.java index 813fba63..3c9ec8bf 100644 --- a/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageServiceStub.java +++ b/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageServiceStub.java @@ -20,9 +20,9 @@ public class RemoteMessageServiceStub implements RemoteMessageService { * @param sessionKey session主键 一般为用户id * @param message 消息文本 */ - public void sendMessage(Long sessionKey, String message) { + public void publishMessage(Long sessionKey, String message) { try { - remoteMessageService.sendMessage(sessionKey, message); + remoteMessageService.publishMessage(sessionKey, message); } catch (Exception e) { log.warn("websocket 功能未开启或服务未找到"); } diff --git a/ruoyi-auth/src/main/java/org/dromara/auth/controller/TokenController.java b/ruoyi-auth/src/main/java/org/dromara/auth/controller/TokenController.java index 79018f82..f4ae3941 100644 --- a/ruoyi-auth/src/main/java/org/dromara/auth/controller/TokenController.java +++ b/ruoyi-auth/src/main/java/org/dromara/auth/controller/TokenController.java @@ -97,7 +97,7 @@ public class TokenController { Long userId = LoginHelper.getUserId(); scheduledExecutorService.schedule(() -> { - remoteMessageService.sendMessage(userId, "欢迎登录RuoYi-Cloud-Plus微服务管理系统"); + remoteMessageService.publishMessage(userId, "欢迎登录RuoYi-Cloud-Plus微服务管理系统"); }, 3, TimeUnit.SECONDS); return R.ok(loginVo); } diff --git a/ruoyi-modules/ruoyi-resource/src/main/java/org/dromara/resource/dubbo/RemoteMessageServiceImpl.java b/ruoyi-modules/ruoyi-resource/src/main/java/org/dromara/resource/dubbo/RemoteMessageServiceImpl.java index d8f6defe..f80dded3 100644 --- a/ruoyi-modules/ruoyi-resource/src/main/java/org/dromara/resource/dubbo/RemoteMessageServiceImpl.java +++ b/ruoyi-modules/ruoyi-resource/src/main/java/org/dromara/resource/dubbo/RemoteMessageServiceImpl.java @@ -3,10 +3,13 @@ package org.dromara.resource.dubbo; import lombok.RequiredArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.apache.dubbo.config.annotation.DubboService; +import org.dromara.common.websocket.dto.WebSocketMessageDto; import org.dromara.common.websocket.utils.WebSocketUtils; import org.dromara.resource.api.RemoteMessageService; import org.springframework.stereotype.Service; +import java.util.List; + /** * 短信服务 * @@ -25,8 +28,11 @@ public class RemoteMessageServiceImpl implements RemoteMessageService { * @param message 消息文本 */ @Override - public void sendMessage(Long sessionKey, String message) { - WebSocketUtils.sendMessage(sessionKey, message); + public void publishMessage(Long sessionKey, String message) { + WebSocketMessageDto dto = new WebSocketMessageDto(); + dto.setMessage(message); + dto.setSessionKeys(List.of(sessionKey)); + WebSocketUtils.publishMessage(dto); } /**