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); + } + +}