スマートホームの SensorState トレイトのスキーマ

action.devices.traits.SensorState - このトレイトは量的測定と定性的状態の両方に対応しています。

デバイスの属性

このトレイトを持つデバイスは、SYNC オペレーションの一部として次の属性をレポートできます。SYNC インテントの処理方法については、インテントのフルフィルメントをご覧ください。

属性 タイプ 説明
sensorStatesSupported 配列

必須。

各オブジェクトは、そのデバイスでサポートされているセンサー状態の機能を表します。各センサーには、少なくとも記述的機能または数値機能が備わっている必要があります。センサーは両方を報告することもできます。その場合は数値が優先されます。

[item, ...] 温度計

サポートされているセンサー機能。

少なくとも 1 つのアイテムが必要です。

name 文字列

必須。

サポートされているセンサータイプ。サポートされているセンサーの表をご覧ください。

descriptiveCapabilities 温度計

センサーの機能の説明。

availableStates 配列

必須。

デバイスで利用可能な状態のリスト。センサーが値を返さない場合、「不明」状態は暗黙的にサポートされます。

[item, ...] 文字列

サポートされている、説明的な状態値。

少なくとも 1 つのアイテムが必要です。

numericCapabilities 温度計

センサーが報告できる数値を記述します。

rawValueUnit 文字列

必須。

サポートされている数値単位。

このトレイトがサポートするさまざまな機能とセンサータイプの詳細については、サポートされているセンサーをご覧ください。

記述的な状態値をレポートするセンサー デバイス。

{
  "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 文字列

必須。

センサーの状態の名前。sensorStatesSupported の値と一致します。

currentSensorState 文字列

現在の記述的な状態値。sensorStatesSupported の値と一致します。

rawValue 番号

現在の数値センサー値。

このトレイトがサポートするさまざまな機能とセンサータイプの詳細については、サポートされているセンサーをご覧ください。

記述的な状態値をレポートするセンサー デバイス。

{
  "currentSensorStateData": [
    {
      "name": "AirQuality",
      "currentSensorState": "healthy"
    }
  ]
}

数値の状態値をレポートするセンサー デバイス。

{
  "currentSensorStateData": [
    {
      "name": "CarbonMonoxideLevel",
      "rawValue": 200
    }
  ]
}

記述的な数値状態値をレポートするセンサー デバイス。

{
  "currentSensorStateData": [
    {
      "name": "SmokeLevel",
      "currentSensorState": "smoke detected",
      "rawValue": 200
    }
  ]
}

デバイスのコマンド

なし。

デバイスの通知

このトレイトを持つデバイスは、デバイス状態の変化の一環として次の通知ペイロードを返すことができます。通知の実装について詳しくは、スマートホーム アクションの通知をご覧ください。

フィールド タイプ 説明
SensorState 温度計

必須。

通知ペイロード:

priority 整数

必須。

通知レベルを表します。現在サポートされている値は 0 で、通知を読み上げる必要があることを示します。

name 文字列

必須。

センサーの状態の名前。通知でサポートされているセンサータイプのリストをご覧ください。

currentSensorState 文字列

必須。

現在の記述的な状態値。通知でサポートされているセンサータイプのリストをご覧ください。

通知ペイロードには、次のセンサータイプを含めることができます。

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

各センサータイプでサポートされているさまざまな機能の詳細については、サポートされているセンサーをご覧ください。

が煙を検出しました。

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

デバイスエラー

エラーと例外の全リストをご覧ください。