package com.fuyuanshen.global.mqtt.service;


import com.fuyuanshen.global.mqtt.base.MqttMessage;

/**
 * MQTT消息处理服务接口
 */
public interface MqttMessageService {

    /**
     * 处理下发指令的响应消息
     * @param tenantCode 租户编码
     * @param deviceType 设备类型
     * @param imei 设备IMEI
     * @param message 响应消息
     */
    void handleCommandResponse(String tenantCode, String deviceType, String imei, MqttMessage message);
    
    /**
     * 处理设备主动上报的数据
     * @param tenantCode 租户编码
     * @param deviceType 设备类型
     * @param imei 设备IMEI
     * @param message 上报消息
     */
    void handleDeviceReport(String tenantCode, String deviceType, String imei, MqttMessage message);
    
    /**
     * 发送指令到设备
     * @param tenantCode 租户编码
     * @param deviceType 设备类型
     * @param imei 设备IMEI
     * @param message 指令消息
     */
    void sendCommand(String tenantCode, String deviceType, String imei, MqttMessage message);
}