Traits simplifiés

Pour faciliter l'utilisation, des versions simplifiées de certaines caractéristiques sont disponibles pour l'API Automation.

Un trait simplifié remplace un trait d'API Home standard, comme le fait le modèle de façade. Les traits simplifiés fournissent des commandes qui facilitent les tâches courantes pour certains types d'appareils. Les traits simplifiés sont des traits de l'API Home. Comme les autres traits de l'API Home, ils fonctionnent à la fois pour les appareils Matter et Cloud-to-cloud.

Un trait simplifié propose un sous-ensemble d'attributs et de commandes plus spécifique à l'appareil que ceux du trait standard correspondant. Par exemple, la caractéristique standard LevelControl est une caractéristique générique qui peut être utilisée pour tout appareil dont le paramètre varie de manière continue sur une plage de valeurs numériques. Brightness est un trait simplifié qui remplace LevelControl et ne fournit que les commandes et les attributs dont un appareil DimmableLight a besoin. Brightness dispose d'une commande moveToBrightness qui accepte un seul argument brightnessPercent, tandis que LevelControl dispose de plusieurs commandes move, dont la plupart comportent au moins quatre paramètres afin de s'adapter à un plus grand nombre de cas d'utilisation.

Le tableau suivant présente chaque trait simplifié et le ou les traits standards sous-jacents. Chaque nom de trait renvoie à la documentation de l'API correspondante:

Tableau: Caractéristiques simplifiées
Trait simplifié Trait standard
SimplifiedThermostat Thermostat
Brightness LevelControl
SimplifiedOnOff OnOff
Volume LevelControl
OnOff

Caractéristiques simplifiées et API Discovery

L'API Discovery signale les caractéristiques simplifiées ainsi que leurs caractéristiques standards sous-jacentes, à condition que les deux caractéristiques aient été enregistrées dans FactoryRegistry. Par exemple, si un appareil DimmableLight est présent dans la structure et que le développeur a enregistré à la fois les traits LevelControl et Brightness dans le FactoryRegistry, l'API Discovery indique la présence des deux traits. Le développeur peut choisir d'utiliser l'une ou l'autre de ces caractéristiques dans son automatisation.

Pour en savoir plus, consultez la page API Discovery.

Récupérer un appareil compatible avec un trait simplifié

Lorsque vous utilisez l'API Device pour obtenir des appareils dans une structure compatible avec un trait simplifié tel que SimplifiedThermostat, vous ne pouvez pas utiliser la méthode has(trait). Utilisez plutôt la méthode has(deviceType):

val thermostat = home.devices().list().first { device -> device.has(ThermostatDevice) }