package com.ruoyi.device.mqtt.handler.encoder.json;

import com.alibaba.fastjson2.JSONObject;
import com.ruoyi.device.domain.model.TsbUserDeviceBind;
import com.ruoyi.device.mqtt.domain.BaseJsonBody;
import com.ruoyi.device.mqtt.enums.CmdTypeEnum;

/**
 * JSON Body 按 cmdDownType 分发的业务处理器
 *
 * @author lwm
 */
public interface IJsonCmdDownHandler
{
    /**
     * @param bind      绑定信息
     * @param data      业务数据
     * @param cmd       已匹配的下行命令枚举
     */
    BaseJsonBody handle(TsbUserDeviceBind bind, JSONObject data, CmdTypeEnum cmd);
}
