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