Smart Home Smoke Detector Guide

action.devices.types.SMOKE_DETECTOR - Smoke detectors can report whether smoke is currently detected, whether the smoke level is high, and the current smoke level in parts per million.

This type indicates that the device gets the Smoke Detector icon and some related synonyms and aliases.

Device capabilities

Refer to the corresponding trait documentation for implementation details, such as attributes and states that your service should support, and how to build EXECUTE and QUERY responses.

These traits are recommended, if applicable to your device. However, you are free to mix and match from all available traits to best match your existing product functionality.

Example device: Simple smoke detector

This section contains example intent payloads representing a common "Smoke Detector" based on the device type and traits above. If you add or remove traits in your implementation, modify your responses accordingly to reflect those changes.

Sample SYNC response

Request
{
  "requestId": "6894439706274654512",
  "inputs": [
    {
      "intent": "action.devices.SYNC"
    }
  ]
}
Response
{
  "requestId": "6894439706274654512",
  "payload": {
    "agentUserId": "user123",
    "devices": [
      {
        "id": "123",
        "type": "action.devices.types.SMOKE_DETECTOR",
        "traits": [
          "action.devices.traits.SensorState"
        ],
        "name": {
          "name": "Simple smoke detector"
        },
        "willReportState": true,
        "attributes": {
          "sensorStatesSupported": [
            {
              "name": "SmokeLevel",
              "descriptiveCapabilities": {
                "availableStates": [
                  "smoke detected",
                  "high",
                  "no smoke detected"
                ]
              },
              "numericCapabilities": {
                "rawValueUnit": "PARTS_PER_MILLION"
              }
            }
          ]
        },
        "deviceInfo": {
          "manufacturer": "smart-home-inc",
          "model": "hs1234",
          "hwVersion": "3.2",
          "swVersion": "11.4"
        }
      }
    ]
  }
}

Sample QUERY response

Request
{
  "requestId": "6894439706274654514",
  "inputs": [
    {
      "intent": "action.devices.QUERY",
      "payload": {
        "devices": [
          {
            "id": "123"
          }
        ]
      }
    }
  ]
}
Response
{
  "requestId": "6894439706274654514",
  "payload": {
    "devices": {
      "123": {
        "status": "SUCCESS",
        "online": true,
        "currentSensorStateData": [
          {
            "name": "SmokeLevel",
            "currentSensorState": "high",
            "rawValue": 200
          }
        ]
      }
    }
  }
}

Device ERRORS

See the full list of errors and exceptions.