From 35c35a2657d4a0db8826bf0d190c995d06c9391a 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, 2 Nov 2023 14:22:13 +0800 Subject: [PATCH] =?UTF-8?q?add=20=E5=A2=9E=E5=8A=A0=20rpc=E6=B6=88?= =?UTF-8?q?=E6=81=AF=E6=8E=A8=E9=80=81=E6=8E=A5=E5=8F=A3=E4=B8=8E=E5=AE=9E?= =?UTF-8?q?=E7=8E=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../resource/api/RemoteMessageService.java | 19 +++++++++ .../dubbo/RemoteMessageServiceImpl.java | 42 +++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageService.java create mode 100644 ruoyi-modules/ruoyi-resource/src/main/java/org/dromara/resource/dubbo/RemoteMessageServiceImpl.java 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 new file mode 100644 index 00000000..6b2ecb53 --- /dev/null +++ b/ruoyi-api/ruoyi-api-resource/src/main/java/org/dromara/resource/api/RemoteMessageService.java @@ -0,0 +1,19 @@ +package org.dromara.resource.api; + +/** + * 消息服务 + * + * @author Lion Li + */ +public interface RemoteMessageService { + + /** + * 发送消息 + * + * @param sessionKey session主键 一般为用户id + * @param message 消息文本 + */ + void sendMessage(Long sessionKey, String message); + + void publishAll(String message); +} 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 new file mode 100644 index 00000000..d8f6defe --- /dev/null +++ b/ruoyi-modules/ruoyi-resource/src/main/java/org/dromara/resource/dubbo/RemoteMessageServiceImpl.java @@ -0,0 +1,42 @@ +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.utils.WebSocketUtils; +import org.dromara.resource.api.RemoteMessageService; +import org.springframework.stereotype.Service; + +/** + * 短信服务 + * + * @author Lion Li + */ +@Slf4j +@RequiredArgsConstructor +@Service +@DubboService +public class RemoteMessageServiceImpl implements RemoteMessageService { + + /** + * 发送消息 + * + * @param sessionKey session主键 一般为用户id + * @param message 消息文本 + */ + @Override + public void sendMessage(Long sessionKey, String message) { + WebSocketUtils.sendMessage(sessionKey, message); + } + + /** + * 发布订阅的消息(群发) + * + * @param message 消息内容 + */ + @Override + public void publishAll(String message) { + WebSocketUtils.publishAll(message); + } + +}