package com.ruoyi.system.core;

import com.ruoyi.system.core.domain.DeviceFunc;
import com.ruoyi.system.domain.SysDevice;
import com.ruoyi.system.domain.SysDeviceCommand;
import reactor.core.publisher.Mono;

public interface ClientExecute {
    void createClient(SysDevice device);

    boolean send(SysDevice device, DeviceFunc msg);

    boolean connection(SysDevice device);

    void close(SysDevice device);

    Mono<SysDeviceCommand> getInstruct(String receive, String deviceType);

    Mono<SysDeviceCommand> getByFunc(String funcId, String deviceType);
}
