ThinkingHome.Alice
ThinkingHome.Alice.Model.Capabilities Namespace
| Classes | |
|---|---|
| CapabilityActionParams<TParams> | Параметры способности в action-запросе с целевым состоянием конкретного вида. |
| CapabilityActionParamsBase | Базовый класс параметров способности в action-запросе; конкретный тип выбирается по дискриминатору "type" (devices.capabilities.*). |
| CapabilityActionResult<TInstance> | Результат операции над способностью с инстансом конкретного вида. |
| CapabilityActionResultBase | Базовый класс результата операции над способностью в ответе на action; конкретный тип выбирается по дискриминатору "type" (devices.capabilities.*). |
| CapabilityInfo<TParams> | Описание способности с параметрами конкретного вида. |
| CapabilityInfoBase | Базовое описание способности в discovery; конкретный тип выбирается по дискриминатору "type" (devices.capabilities.*). |
| CapabilityState<TParams> | Состояние способности с данными конкретного вида. |
| CapabilityStateActionResult<T> | Результат операции в ответе на action: инстанс способности и итог выполнения команды. |
| CapabilityStateBase | Базовое состояние способности (query/callback); конкретный тип выбирается по дискриминатору "type" (devices.capabilities.*). |
| CapabilityType | Строковые идентификаторы типов способностей Алисы (devices.capabilities.*) — значения дискриминатора "type". |
| ColorModels | Цветовые модели Алисы (поле "color_model" в color_setting). У Алисы их две — "rgb" и "hsv", но это взаимозаменяемые представления одного цвета: устройство объявляет одну. Берём "rgb" (значение — одно число 0xRRGGBB). "hsv" намеренно не реализован: функционально эквивалентен rgb, но его значение — объект {h,s,v}, что потребовало бы отдельной формы состояния без пользы для управления. |
| Units | Единицы измерения Алисы (поле "unit" у range/float). Единицу выбирает конкретная способность: яркость всегда в процентах. По мере добавления инстансов (температура, громкость) сюда добавляются новые константы, а нужную подставляет соответствующая ветка маппера. |