智能家居填充特征架构
action.devices.traits.Fill - 此特征适用于支持注水的设备,例如浴缸。
设备属性
具有此特征的设备可能会在 SYNC 操作中报告以下属性。如需详细了解如何处理 SYNC intent,请参阅意图实现。
| 属性 | 类型 | 说明 | 
|---|---|---|
availableFillLevels | 
    对象 | 
       描述设备的不同填充程度。  | 
  
levels | 
    数组 | 
       必填。 级别名称和特定于语言的同义词的列表。  | 
  
[item, ...] | 
    对象 | 
       级别名称及其特定于语言的同义词。  | 
  
level_name | 
    String | 
       必填。 关卡的内部名称。这可能不太方便用户,并且会以所有语言显示。  | 
  
level_values | 
    数组 | 
       必填。 每种受支持语言的级别同义词。  | 
  
[item, ...] | 
    对象 | 
       指定语言的级别同义词。为了提供语言回退,至少需要一个   | 
  
level_synonym | 
    数组 | 
       必填。 相应级别的同义词。此列表中的第一个字符串用作相应语言的级别规范名称。  | 
  
[item, ...] | 
    String | 
       同义词名称。为了提供语言回退,至少需要一个   | 
  
lang | 
    String | 
       必填。 语言代码 (ISO 639-1)。请参阅支持的语言。  | 
  
ordered | 
    布尔值 | 
       必填。 如果为 true,设备会处理额外的语法,以实现增加或减少逻辑,如   | 
  
supportsFillPercent | 
    布尔值 | 
       (默认值: 如果为 true,则接受用于将级别调整为百分比的命令。  | 
  
示例
具有基本填充或排空功能但不支持离散填充级别的设备。
{}支持离散填充级别的设备。
{
  "availableFillLevels": {
    "levels": [
      {
        "level_name": "half_level",
        "level_values": [
          {
            "level_synonym": [
              "Half",
              "Half way",
              "One half"
            ],
            "lang": "en"
          }
        ]
      },
      {
        "level_name": "full_level",
        "level_values": [
          {
            "level_synonym": [
              "Full",
              "All the way",
              "Complete"
            ],
            "lang": "en"
          }
        ]
      }
    ],
    "ordered": true
  }
}设备状态
具有此特征的实体可能会在 QUERY 操作中报告以下状态。如需详细了解如何处理 QUERY intent,请参阅意图实现。
| 州 | 类型 | 说明 | 
|---|---|---|
isFilled | 
    布尔值 | 
       必填。 如果设备已填充到任何水位,则为 true。如果设备电量完全耗尽,则为 False。  | 
  
currentFillLevel | 
    String | 
       如果设置了   | 
  
currentFillPercent | 
    编号 | 
       如果设置了   | 
  
示例
浴缸是否已加满水?
{
  "isFilled": true
}浴缸加满水了吗?(带级别)。
{
  "isFilled": true,
  "currentFillLevel": "half_level"
}设备命令
具有此特征的设备可能会响应以下命令,作为 EXECUTE 操作的一部分。如需详细了解如何处理 EXECUTE intent,请参阅意图实现。
action.devices.commands.Fill
为设备加水或排水。
参数
| 参数 | 类型 | 说明 | 
|---|---|---|
fill | 
    布尔值 | 
       必填。 True 表示填充,false 表示排空。  | 
  
fillLevel | 
    String | 
       表示要设置的   | 
  
fillPercent | 
    编号 | 
       表示请求的级别百分比。  | 
  
示例
给浴缸加水。
{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true
  }
}放掉浴缸里的水。
{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": false
  }
}将浴缸的水加到一半。
{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "half_level"
  }
}将浴缸水位提高一级(要求 ordered 属性为 true)。
{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "full_level"
  }
}