Smart Home Vacuum Guide
action.devices.types.VACUUM
- Vacuums may have functions such as starting, stopping, and pausing cleaning, docking, checking the current cleaning cycle, locating the vacuum, or adjusting various modes. Some vacuums may support cleaning specific zones in the home.
This type indicates that the device gets the Vacuum 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.
Required traits
These traits and commands are required, if applicable to your
device. If your device does not support these traits, enter the error code of
functionNotSupported
in a QUERY or EXECUTE response. See
Errors and exceptions for more info.
Recommended traits
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.
-
action.devices.traits.Dock
-
action.devices.traits.EnergyStorage
-
action.devices.traits.Locator
-
action.devices.traits.OnOff
-
action.devices.traits.RunCycle
Quality requirements
- Latency: must be less than or equal to 800ms.
- Reliability: must be more than or equal to 97%.
Example device: Simple vacuum
This section contains example intent payloads representing a common "Vacuum" 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
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.VACUUM", "traits": [ "action.devices.traits.Dock", "action.devices.traits.EnergyStorage", "action.devices.traits.StartStop" ], "name": { "name": "Simple vacuum" }, "willReportState": true, "attributes": { "queryOnlyEnergyStorage": true, "pausable": true }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Sample QUERY response
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "isRunning": false, "isPaused": false, "isDocked": true, "descriptiveCapacityRemaining": "HIGH", "capacityRemaining": [ { "unit": "SECONDS", "rawValue": 36000 }, { "unit": "PERCENTAGE", "rawValue": 90 } ] } } } }
Sample EXECUTE commands
Dock
For additional details on the command parameters,
see the
action.devices.traits.Dock
reference.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Dock" } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isDocked": true } } ] } }
StartStop
For additional details on the command parameters,
see the
action.devices.traits.StartStop
reference.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.StartStop", "params": { "start": true } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isRunning": true, "isPaused": false } } ] } }