package com.ard.tianyu.websocket.handler; import com.alibaba.fastjson2.JSON; import com.ard.tianyu.websocket.domain.BaseMessage; import com.ard.tianyu.websocket.domain.UavControlMessage; import com.ard.tianyu.websocket.utils.WebSocketUtil; import org.springframework.stereotype.Service; @Service public class UavControlManager { /** * 发送控制请求 */ public void sendControlRequest(Long controllerId, String boxSn, String type, Long requester) { UavControlMessage message = new UavControlMessage(boxSn, type, requester,null); BaseMessage baseMessage = new BaseMessage<>("control", message); WebSocketUtil.sendMessage(controllerId, JSON.toJSONString(baseMessage)); } /** * 发送控制同意通知 */ public void sendControlApproval(Long requesterId, String boxSn, String type) { UavControlMessage message = new UavControlMessage(boxSn, type, null,true); BaseMessage baseMessage = new BaseMessage<>("control", message); WebSocketUtil.sendMessage(requesterId, JSON.toJSONString(baseMessage)); } /** * 发送控制拒绝通知 */ public void sendControlRejection(Long requesterId, String boxSn, String type) { UavControlMessage message = new UavControlMessage(boxSn, type, null,false); BaseMessage baseMessage = new BaseMessage<>("control", message); WebSocketUtil.sendMessage(requesterId, JSON.toJSONString(baseMessage)); } /** * 发送控制释放通知 */ public void sendControlRelease(String boxSn, String type) { UavControlMessage message = new UavControlMessage(boxSn, type, null,null); BaseMessage baseMessage = new BaseMessage<>("control", message); WebSocketUtil.sendMessageAll(JSON.toJSONString(baseMessage)); } }