为方便使用,我们针对 iOS 上的 Automation API 提供了一些简化版 trait。
简化版 trait 可替代标准 Home API trait,类似于 外观模式 的工作方式。简化版 trait 提供的命令可让某些设备类型更轻松地完成常见任务。简化版 trait 是 Home API trait,与其他 Home API trait 一样,它们适用于 Matter 和 Cloud-to-cloud 设备。
简化版 trait 提供了一组替代属性和命令,这些属性和命令比相应标准 trait 的属性和命令更具设备专用性。
例如,标准
LevelControlTrait
trait 是一种通用 trait,可用于任何具有可在一定数值范围内连续变化的
设置的设备。
BrightnessTrait 是一种
简化版 trait,可替代 LevelControlTrait,并且仅提供
DimmableLightDeviceType
设备所需的命令和属性。BrightnessTrait 具有一个
moveToBrightness
命令,该命令接受单个 brightnessPercent 实参,而
LevelControlTrait 具有多个 move 命令,其中大多数命令至少有
四个形参,以适应更广泛的用例。
下表显示了每个简化版 trait 及其底层标准 trait。每个 trait 名称都链接到相应的 API 文档:
| 简化版 trait | 标准 trait |
|---|---|
SimplifiedThermostatTrait
|
ThermostatTrait
|
BrightnessTrait
|
LevelControlTrait
|
SimplifiedOnOffTrait
|
OnOffTrait
|
VolumeTrait
|
LevelControlTraitOnOffTrait
|
简化版 trait 和 Discovery API
只要在应用的配置中将简化版 trait 和底层
标准 trait 正确配置为
ReferencedAutomationTypes,Discovery API 就会报告这些 trait。例如,如果
结构中存在
DimmableLightDeviceType 设备,并且
开发者注册了
LevelControlTrait
和
BrightnessTrait
trait,则 Discovery API 会指明这两个 trait 的存在。开发者可以选择在其自动化中使用任一 trait。
如需了解详情,请参阅住宅配置。