加发送websocket api
parent
942f265592
commit
a4aadfd566
@ -0,0 +1,33 @@
|
||||
package com.baiye.api;
|
||||
|
||||
import com.baiye.http.CommonResponse;
|
||||
import com.baiye.model.dto.SendWebSocketDTO;
|
||||
import com.baiye.service.WebSocketService;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* @author wujingtao
|
||||
* @date 2021/12/30
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api")
|
||||
@Slf4j
|
||||
@Api(tags = "websocket消息")
|
||||
public class WebSocketController {
|
||||
@Resource
|
||||
private WebSocketService webSocketService;
|
||||
|
||||
@PostMapping("/websocket/message")
|
||||
@ApiOperation("发送消息")
|
||||
public CommonResponse<Object> sendWebSocket(@RequestBody SendWebSocketDTO sendWebSocketDTO) {
|
||||
return webSocketService.sendWebSocket(sendWebSocketDTO);
|
||||
}
|
||||
}
|
@ -0,0 +1,18 @@
|
||||
package com.baiye.service;
|
||||
|
||||
import com.baiye.http.CommonResponse;
|
||||
import com.baiye.model.dto.SendWebSocketDTO;
|
||||
|
||||
/**
|
||||
* @author wujingtao
|
||||
* @date 2021/12/30
|
||||
*/
|
||||
public interface WebSocketService {
|
||||
/**
|
||||
* 发送消息
|
||||
*
|
||||
* @param sendWebSocketDTO
|
||||
* @return
|
||||
*/
|
||||
CommonResponse<Object> sendWebSocket(SendWebSocketDTO sendWebSocketDTO);
|
||||
}
|
@ -0,0 +1,41 @@
|
||||
package com.baiye.service.impl;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import com.baiye.constant.DefaultNumberConstants;
|
||||
import com.baiye.http.CommonResponse;
|
||||
import com.baiye.model.dto.SendWebSocketDTO;
|
||||
import com.baiye.service.WebSocketService;
|
||||
import com.baiye.socket.WebSocketServer;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* @author wujingtao
|
||||
* @date 2021/12/30
|
||||
*/
|
||||
@Service
|
||||
@Slf4j
|
||||
public class WebSocketServiceImpl implements WebSocketService {
|
||||
@Resource
|
||||
private WebSocketServer webSocketServer;
|
||||
|
||||
@Override
|
||||
public CommonResponse<Object> sendWebSocket(SendWebSocketDTO sendWebSocketDTO) {
|
||||
try {
|
||||
if (CollUtil.isEmpty(sendWebSocketDTO.getUserIds())) {
|
||||
SendWebSocketDTO.SendMessage data = sendWebSocketDTO.getData();
|
||||
data.setCode(DefaultNumberConstants.TWO_HUNDRED);
|
||||
webSocketServer.broadCastInfo(JSONUtil.toJsonStr(data));
|
||||
} else {
|
||||
webSocketServer.sendMessage(sendWebSocketDTO.getData(), sendWebSocketDTO.getUserIds());
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error("Method 【sendWebSocket】发送 websocket 错误 :{}", e.getMessage());
|
||||
return CommonResponse.createByErrorMessage(e.getMessage());
|
||||
}
|
||||
return CommonResponse.createBySuccess();
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue