智慧型住宅 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"
        ]
      }
    }
  ]
}

支援的感應器

下表列出支援的感應器類型及其相關功能。

空氣品質

名稱 描述性功能 數值功能

支援的值:

AirQuality

支援的值:

healthy
moderate
unhealthy
unhealthy for sensitive groups
very unhealthy
hazardous
good
fair
poor
very poor
severe
unknown

支援的值:

AQI

一氧化碳

名稱 描述性功能 數值功能

支援的值:

CarbonMonoxideLevel

支援的值:

carbon monoxide detected
high
no carbon monoxide detected
unknown

支援的值:

PARTS_PER_MILLION

煙霧濃度

名稱 描述性功能 數值功能

支援的值:

SmokeLevel

支援的值:

smoke detected
high
no smoke detected
unknown

支援的值:

PARTS_PER_MILLION

濾網乾淨度

名稱 描述性功能 數值功能

支援的值:

FilterCleanliness

支援的值:

clean
dirty
needs replacement
unknown
不支援。

漏水

名稱 描述性功能 數值功能

支援的值:

WaterLeak

支援的值:

leak
no leak
unknown
不支援。

雨水偵測

名稱 描述性功能 數值功能

支援的值:

RainDetection

支援的值:

rain detected
no rain detected
unknown
不支援。

濾網壽命

名稱 描述性功能 數值功能

支援的值:

FilterLifeTime

支援的值:

new
good
replace soon
replace now
unknown

支援的值:

PERCENTAGE

計算的濾網壽命

名稱 描述性功能 數值功能

支援的值:

PreFilterLifeTime
HEPAFilterLifeTime
Max2FilterLifeTime
不支援。

支援的值:

PERCENTAGE

二氧化碳濃度

名稱 描述性功能 數值功能

支援的值:

CarbonDioxideLevel
不支援。

支援的值:

PARTS_PER_MILLION

懸浮微粒

名稱 描述性功能 數值功能

支援的值:

PM2.5
PM10
不支援。

支援的值:

MICROGRAMS_PER_CUBIC_METER

揮發性有機化合物

名稱 描述性功能 數值功能

支援的值:

VolatileOrganicCompounds
不支援。

支援的值:

PARTS_PER_MILLION

裝置狀態

具有此特徵的實體可能會在 QUERY 作業中回報下列狀態。如要進一步瞭解如何處理 QUERY 意圖,請參閱「意圖執行要求」。

類型 說明
currentSensorStateData 陣列

必要。

目前感應器狀態的清單。

[item, ...] 物件

目前的感應器狀態。

name String

必要。

感應器狀態名稱。與 sensorStatesSupported 中的值相符。

currentSensorState String

目前的敘述性狀態值。與 sensorStatesSupported 中的值相符。

rawValue Number

目前的數字感應器值。

alarmState String

與目前感應器讀數相對應的警報狀態。當感應器讀數接近或達到危險程度時,可能會觸發預警或警報。

支援的值:

IDLE
鬧鐘處於閒置狀態;偵測到的濃度並未達危險值。
PRE_ALARM_1
偵測到的濃度偏高,但尚未達到緊急等級;濃度可能很快就會變得危險。
PRE_ALARM_2
如果裝置在達到緊急等級前支援多個警報,表示偵測等級高於 PRE_ALARM_1;這些等級會持續增加,可能很快就會達到緊急等級。
ALARM
偵測到的濃度已達到緊急等級,並觸發警報。
alarmSilenceState String

表示感應器警報的靜音狀態,包括目前是否允許靜音處於作用中的警報。鬧鐘前或鬧鐘狀態啟用時,可能會提供此狀態。

支援的值:

ALLOWED
鬧鐘未設為靜音,目前允許將鬧鐘設為靜音。
DISALLOWED
鬧鐘未設為靜音,且目前不允許將鬧鐘設為靜音。
SILENCED
鬧鐘已設為靜音。

如要進一步瞭解這項特徵支援的不同功能和感應器類型,請參閱「支援的感應器」。

範例

回報描述性狀態值的感應器裝置。

{
  "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",
      "alarmSilenceState": "DISALLOWED"
    }
  ]
}

裝置指令

無。

裝置通知

具備此特徵的裝置可能會在裝置狀態變更時傳回下列通知酬載。如要進一步瞭解如何導入通知,請參閱「智慧住宅動作的通知」。

欄位 類型 說明
SensorState 物件

必要。

通知酬載。

priority 整數

必要。

代表通知層級。目前支援的值為 0,表示通知應以語音朗讀。

name String

必要。

感應器狀態名稱。請參閱支援的通知感應器類型清單。

currentSensorState String

必要。

目前的敘述性狀態值。請參閱支援的通知感應器類型清單。

通知酬載可包含下列感應器類型:

  • AirQuality
  • CarbonMonoxideLevel
  • SmokeLevel
  • FilterCleanliness
  • WaterLeak
  • RainDetection
  • FilterLifeTime

如要進一步瞭解各感應器類型支援的不同功能,請參閱「支援的感應器」。

範例

偵測到煙霧。

{
  "SensorState": {
    "priority": 0,
    "name": "SmokeLevel",
    "currentSensorState": "high"
  }
}

裝置錯誤

請參閱錯誤和例外狀況的完整清單。