Skip to content

ThinkingHome.DeviceModel.Drivers.Stubs

ThinkingHome.DeviceModel.Drivers.Stubs

StubFan Class

Заглушка вентилятора (OnOff + скорость fan_speed + осцилляция).

csharp
public sealed class StubFan : ThinkingHome.DeviceModel.IDevice

Inheritance System.Object → StubFan

Implements IDevice

Constructors

StubFan(string, StubDeviceConfig) Constructor

Заглушка вентилятора (OnOff + скорость fan_speed + осцилляция).

csharp
public StubFan(string id, ThinkingHome.DeviceModel.Drivers.Stubs.StubDeviceConfig config);

Parameters

id System.String

config StubDeviceConfig

Properties

StubFan.Id Property

Стабильный идентификатор устройства.

csharp
public string Id { get; }

Implements Id

Property Value

System.String

Methods

StubFan.Describe() Method

Описание устройства (discovery).

csharp
public ThinkingHome.DeviceModel.DeviceDescriptor Describe();

Implements Describe()

Returns

DeviceDescriptor

StubFan.ExecuteAsync(DeviceCommand, CancellationToken) Method

Исполнить команду (execute). Незнакомую команду вернуть как Unsupported.

csharp
public System.Threading.Tasks.Task<ThinkingHome.DeviceModel.CommandOutcome> ExecuteAsync(ThinkingHome.DeviceModel.Commands.DeviceCommand command, System.Threading.CancellationToken ct=default(System.Threading.CancellationToken));

Parameters

command DeviceCommand

ct System.Threading.CancellationToken

Implements ExecuteAsync(DeviceCommand, CancellationToken)

Returns

System.Threading.Tasks.Task<CommandOutcome>

StubFan.QueryAsync(CancellationToken) Method

Опросить текущее состояние (query).

csharp
public System.Threading.Tasks.Task<ThinkingHome.DeviceModel.State.DeviceSnapshot> QueryAsync(System.Threading.CancellationToken ct=default(System.Threading.CancellationToken));

Parameters

ct System.Threading.CancellationToken

Implements QueryAsync(CancellationToken)

Returns

System.Threading.Tasks.Task<DeviceSnapshot>

Events

StubFan.Changed Event

Изменение состояния (report/push).

csharp
public event Action<StateChange>? Changed;

Implements Changed

Event Type

System.Action<StateChange>

Опубликовано под лицензией MIT