package cn.iocoder.yudao.module.iot.service.rule.scene.action;
|
|
import cn.iocoder.yudao.module.iot.core.mq.message.IotDeviceMessage;
|
import cn.iocoder.yudao.module.iot.dal.dataobject.rule.IotSceneRuleDO;
|
import cn.iocoder.yudao.module.iot.enums.rule.IotSceneRuleActionTypeEnum;
|
|
import javax.annotation.Nullable;
|
|
/**
|
* IoT 场景联动的执行器接口
|
*
|
* @author 芋道源码
|
*/
|
public interface IotSceneRuleAction {
|
|
/**
|
* 执行场景联动
|
*
|
* @param message 消息,允许空
|
* 1. 空的情况:定时触发
|
* 2. 非空的情况:设备触发
|
* @param rule 规则
|
* @param actionConfig 执行配置(实际对应规则里的哪条执行配置)
|
*/
|
void execute(@Nullable IotDeviceMessage message,
|
IotSceneRuleDO rule,
|
IotSceneRuleDO.Action actionConfig) throws Exception;
|
|
/**
|
* 获得类型
|
*
|
* @return 类型
|
*/
|
IotSceneRuleActionTypeEnum getType();
|
|
}
|