智慧型住宅 SensorState 特徵結構定義
action.devices.traits.SensorState:這個特徵涵蓋量化測量和定性狀態。
裝置屬性
具有此特徵的裝置可能會在 SYNC 作業中回報下列屬性。如要進一步瞭解如何處理 SYNC 意圖,請參閱「意圖執行要求」。
| 屬性 | 類型 | 說明 | 
|---|---|---|
| sensorStatesSupported | 陣列 | 必要。 每個物件都代表此特定裝置支援的感應器狀態功能。每個感應器至少必須具備描述性或數值功能。感應器也可以同時回報這兩種值,在這種情況下,系統會優先採用數值。 | 
| [item, ...] | 物件 | 支援的感應器功能。 至少須有 1 個項目。 | 
| name | String | 必要。 支援的感應器類型。請參閱「支援的動作感應器」表格。 | 
| descriptiveCapabilities | 物件 | 感應器功能的說明。 | 
| availableStates | 陣列 | 必要。 裝置可用的狀態清單。當感應器未傳回值時,系統會默認支援「不明」狀態。 | 
| [item, ...] | String | 支援的說明狀態值。 至少須有 1 個項目。 | 
| numericCapabilities | 物件 | 說明感應器可回報的可能數值。 | 
| rawValueUnit | String | 必要。 支援的數值單位。 | 
如要進一步瞭解此特徵支援的不同功能和感應器類型,請參閱「支援的感應器」。
範例
回報描述性狀態值的感應器裝置。
{
  "sensorStatesSupported": [
    {
      "name": "AirQuality",
      "descriptiveCapabilities": {
        "availableStates": [
          "healthy",
          "moderate",
          "unhealthy",
          "very unhealthy"
        ]
      }
    }
  ]
}回報數值狀態值的感應器裝置。
{
  "sensorStatesSupported": [
    {
      "name": "CarbonMonoxideLevel",
      "numericCapabilities": {
        "rawValueUnit": "PARTS_PER_MILLION"
      }
    }
  ]
}回報描述性和數值狀態值的感應器裝置。
{
  "sensorStatesSupported": [
    {
      "name": "SmokeLevel",
      "numericCapabilities": {
        "rawValueUnit": "PARTS_PER_MILLION"
      },
      "descriptiveCapabilities": {
        "availableStates": [
          "smoke detected",
          "high",
          "no smoke detected"
        ]
      }
    }
  ]
}支援的感應器
下表列出支援的感應器類型及其相關功能。
空氣品質
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 支援的值: 
 | 支援的值: 
 | 
一氧化碳
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 支援的值: 
 | 支援的值: 
 | 
煙霧濃度
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 支援的值: 
 | 支援的值: 
 | 
濾網乾淨度
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 支援的值: 
 | 不支援。 | 
漏水
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 支援的值: 
 | 不支援。 | 
雨水偵測
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 支援的值: 
 | 不支援。 | 
濾網壽命
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 支援的值: 
 | 支援的值: 
 | 
計算的濾網壽命
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 不支援。 | 支援的值: 
 | 
二氧化碳濃度
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 不支援。 | 支援的值: 
 | 
懸浮微粒
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 不支援。 | 支援的值: 
 | 
揮發性有機化合物
| 名稱 | 描述性功能 | 數值功能 | 
|---|---|---|
| 支援的值: 
 | 不支援。 | 支援的值: 
 | 
裝置狀態
具有此特徵的實體可能會在 QUERY 作業中回報下列狀態。如要進一步瞭解如何處理 QUERY 意圖,請參閱「意圖執行要求」。
| 州 | 類型 | 說明 | 
|---|---|---|
| currentSensorStateData | 陣列 | 必要。 目前感應器狀態的清單。 | 
| [item, ...] | 物件 | 目前的感應器狀態。 | 
| name | String | 必要。 感應器狀態名稱。與  | 
| currentSensorState | String | 目前的敘述性狀態值。與  | 
| rawValue | Number | 目前的數字感應器值。 | 
| alarmState | String | 與目前感應器讀數相對應的警報狀態。當感應器讀數接近或達到危險程度時,可能會觸發預警或警報。 支援的值: 
 | 
| alarmSilenceState | String | 表示感應器警報的靜音狀態,包括目前是否允許靜音已啟用的警報。當鬧鐘前或鬧鐘狀態處於啟用狀態時,可能會提供此狀態。對於煙霧偵測器,系統不會使用  支援的值: 
 | 
如要進一步瞭解此特徵支援的不同功能和感應器類型,請參閱「支援的感應器」。
範例
回報描述性狀態值的感應器裝置。
{
  "currentSensorStateData": [
    {
      "name": "AirQuality",
      "currentSensorState": "healthy"
    }
  ]
}回報數值狀態值的感應器裝置。
{
  "currentSensorStateData": [
    {
      "name": "CarbonMonoxideLevel",
      "rawValue": 200
    }
  ]
}回報描述性和數值狀態值的感應器裝置。
{
  "currentSensorStateData": [
    {
      "name": "SmokeLevel",
      "currentSensorState": "smoke detected",
      "rawValue": 200
    }
  ]
}感應器裝置,可回報描述性和數值狀態值,並指出警報已啟用。
{
  "currentSensorStateData": [
    {
      "name": "SmokeLevel",
      "currentSensorState": "smoke detected",
      "rawValue": 200,
      "alarmState": "ALARM"
    }
  ]
}回報描述性和數值狀態值,並表示鬧鐘已靜音的感應器裝置。
{
  "currentSensorStateData": [
    {
      "name": "SmokeLevel",
      "currentSensorState": "smoke detected",
      "rawValue": 200,
      "alarmState": "ALARM",
      "alarmSilenceState": "SILENCED"
    }
  ]
}裝置指令
無。
裝置通知
具備此特徵的裝置可能會在裝置狀態變更時傳回下列通知酬載。如要進一步瞭解如何導入通知,請參閱「智慧住宅動作的通知」。
| 欄位 | 類型 | 說明 | 
|---|---|---|
| SensorState | 物件 | 必要。 通知酬載。 | 
| priority | 整數 | 必要。 代表通知層級。目前支援的值為 0,表示通知應以語音朗讀。 | 
| name | String | 必要。 感應器狀態名稱。請參閱支援的通知感應器類型清單。 | 
| currentSensorState | String | 必要。 目前的敘述性狀態值。請參閱支援的通知感應器類型清單。 | 
通知酬載可包含下列感應器類型:
- AirQuality
- CarbonMonoxideLevel
- SmokeLevel
- FilterCleanliness
- WaterLeak
- RainDetection
- FilterLifeTime
如要進一步瞭解各感應器類型支援的不同功能,請參閱「支援的感應器」。
範例
{
  "SensorState": {
    "priority": 0,
    "name": "SmokeLevel",
    "currentSensorState": "high"
  }
}