You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

35 lines
1.2 KiB

package com.dji.sample.manage.controller;
import com.dji.sample.component.mqtt.model.ChannelName;
import com.dji.sample.manage.model.receiver.DeviceBasicReceiver;
import com.dji.sample.manage.service.IDevicePayloadService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.integration.annotation.ServiceActivator;
import org.springframework.messaging.MessageHeaders;
import org.springframework.web.bind.annotation.RestController;
/**
* @author sean.zhou
* @date 2021/11/19
* @version 0.1
*/
@RestController
public class DevicePayloadController {
@Autowired
private IDevicePayloadService devicePayloadService;
/**
* Handles messages in the state topic about basic drone data.
*
* Note: Only the data of the drone payload is handled here. You can handle other data from the drone
* according to your business needs.
* @param deviceBasic basic drone data
* @param headers
*/
@ServiceActivator(inputChannel = ChannelName.INBOUND_STATE_BASIC)
public void stateBasic(DeviceBasicReceiver deviceBasic, MessageHeaders headers) {
devicePayloadService.saveDeviceBasicPayload(deviceBasic.getPayloads(), headers.getTimestamp());
}
}