| | |
| | | package com.dji.sample.manage.service.impl; |
| | | |
| | | import com.dji.sample.component.mqtt.model.TopicStateReceiver; |
| | | import com.dji.sample.component.mqtt.model.CommonTopicReceiver; |
| | | import com.dji.sample.component.redis.RedisOpsUtils; |
| | | import com.dji.sample.component.websocket.config.ConcurrentWebSocketSession; |
| | | import com.dji.sample.component.websocket.model.BizCodeEnum; |
| | | import com.dji.sample.component.websocket.model.CustomWebSocketMessage; |
| | | import com.dji.sample.component.websocket.model.WebSocketManager; |
| | | import com.dji.sample.component.websocket.service.ISendMessageService; |
| | | import com.dji.sample.component.websocket.service.IWebSocketManageService; |
| | | import com.dji.sample.manage.model.dto.DeviceDTO; |
| | | import com.dji.sample.manage.model.dto.TelemetryDTO; |
| | | import com.dji.sample.manage.model.enums.UserTypeEnum; |
| | | import com.dji.sample.manage.service.ITSAService; |
| | | import com.fasterxml.jackson.core.JsonProcessingException; |
| | | import com.fasterxml.jackson.databind.JsonNode; |
| | | import com.fasterxml.jackson.databind.ObjectMapper; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | |
| | | import java.util.Collection; |
| | |
| | | |
| | | protected AbstractTSAService tsaService; |
| | | |
| | | @Autowired |
| | | protected ObjectMapper mapper; |
| | | |
| | | @Autowired |
| | | protected RedisOpsUtils redisOps; |
| | | |
| | | @Autowired |
| | | private IWebSocketManageService webSocketManageService; |
| | | |
| | | public AbstractTSAService(AbstractTSAService tsaService) { |
| | | this.tsaService = tsaService; |
| | | } |
| | |
| | | @Override |
| | | public void pushTelemetryData(String workspaceId, Object osdData, String sn) { |
| | | // All connected accounts on the pilot side of this workspace. |
| | | Collection<ConcurrentWebSocketSession> pilotSessions = WebSocketManager |
| | | .getValueWithWorkspaceAndUserType( |
| | | workspaceId, UserTypeEnum.PILOT.getVal()); |
| | | Collection<ConcurrentWebSocketSession> pilotSessions = webSocketManageService |
| | | .getValueWithWorkspaceAndUserType(workspaceId, UserTypeEnum.PILOT.getVal()); |
| | | |
| | | TelemetryDTO telemetry = TelemetryDTO.builder() |
| | | .sn(sn) |
| | |
| | | public abstract void pushTelemetryData(Collection<ConcurrentWebSocketSession> sessions, |
| | | CustomWebSocketMessage<TelemetryDTO> message, Object Object); |
| | | |
| | | protected abstract void handleOSD(TopicStateReceiver receiver, String sn, String workspaceId, JsonNode hostNode, |
| | | Collection<ConcurrentWebSocketSession> webSessions, CustomWebSocketMessage wsMessage) |
| | | throws JsonProcessingException; |
| | | public abstract void handleOSD(CommonTopicReceiver receiver, DeviceDTO device, |
| | | Collection<ConcurrentWebSocketSession> webSessions, CustomWebSocketMessage<TelemetryDTO> wsMessage); |
| | | } |