Skip to content

ThinkingHome.DeviceModel.Drivers.Stubs

ThinkingHome.DeviceModel.Drivers.Stubs

StubColorLamp Class

Заглушка лампы с полной цветопередачей (OnOff + яркость + RGB + цветовая температура). Держит один активный цветовой режим и отдаёт в снимке именно его — у color_setting остаётся одно состояние.

csharp
public sealed class StubColorLamp : ThinkingHome.DeviceModel.IDevice

Inheritance System.Object → StubColorLamp

Implements IDevice

Constructors

StubColorLamp(string, StubDeviceConfig) Constructor

Заглушка лампы с полной цветопередачей (OnOff + яркость + RGB + цветовая температура). Держит один активный цветовой режим и отдаёт в снимке именно его — у color_setting остаётся одно состояние.

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

Parameters

id System.String

config StubDeviceConfig

Properties

StubColorLamp.Id Property

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

csharp
public string Id { get; }

Implements Id

Property Value

System.String

Methods

StubColorLamp.Describe() Method

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

csharp
public ThinkingHome.DeviceModel.DeviceDescriptor Describe();

Implements Describe()

Returns

DeviceDescriptor

StubColorLamp.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>

StubColorLamp.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

StubColorLamp.Changed Event

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

csharp
public event Action<StateChange>? Changed;

Implements Changed

Event Type

System.Action<StateChange>

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