Skip to content

cloud.smarthq.service.dishwasher.mode.v1

  • Configuration


    Describes boundaries and fixed properties for the service.

    Go There

  • State


    A list of the states this service can be in.

    Go There

  • Commands


    How to change the state of the service.

    Go There

  • Data Types


    All the data types used for this service.

    Go There

Description

Service to model the dishwasher mode is used in conjunction with the dishwasher state service. This service represents an available dishwasher mode providing the configuration for what parameters are required to start it, a command for actually starting the dishwasher mode, as well as the state of the dishwasher mode if it is running.

Example Device Response (Digital Twin API)

Service heated dry cycle of dishwasher

{
  "adapterId": "0000000000000000000000000000000000000000",
  "alertTypes": [],
  "createdDateTime": "2022-03-04T12:12:12.123Z",
  "deviceId": "0000000000000000000000000000000000000000000000000000000000000000",
  "deviceType": "cloud.smarthq.device.dishwasher",
  "gatewayId": "0000000000000000000000000000000000000000000000000000000000000000",
  "kind": "device#item",
  "lastPresenceTime": "2022-03-04T12:12:12.123Z",
  "lastSyncTime": "2022-03-04T12:12:12.123Z",
  "presence": "OFFLINE",
  "removable": true,
  "services": [
    {
      "serviceType": "cloud.smarthq.service.dishwasher.mode.v1",
      "lastSyncTime": "2022-03-04T12:12:12.123Z",
      "domainType": "cloud.smarthq.domain.dishwasher.auto",
      "supportedCommands": [
        "cloud.smarthq.command.dishwasher.mode.v1.set"
      ],
      "state": {},
      "serviceId": "0000000000000000000000000000000000000000000000000000000000000000",
      "serviceDeviceType": "cloud.smarthq.device.dishwasher",
      "config": {},
      "lastStateTime": "2022-03-04T12:12:12.123Z"
    }
  ],
  "userId": "000000000000000"
}

Configuration

The following are properties for the gateway/device sync as part of the "config" object for each individual service.

Field Name Property Type Required
boostTemperatureSupported SUPPORTED_PARAMETER No
bottleWashSupported SUPPORTED_PARAMETER No
delayStartMaximum INTEGER No
delayStartMinimum INTEGER No
delayStartSupported SUPPORTED_PARAMETER No
delayTimeGranularity TIME_GRANULARITY No
heatedDryAvailable SET<DISHWASHER_HEATED_DRY> No
heatedDrySupported SUPPORTED_PARAMETER No
saniSupported SUPPORTED_PARAMETER No
silverwareWashSupported SUPPORTED_PARAMETER No
steamSupported SUPPORTED_PARAMETER No
washZoneAvailable SET<DISHWASHER_WASH_ZONE> No
washZoneSupported SUPPORTED_PARAMETER No

State

The following are properties for the device state report as part of the "state" object for each individual service.

Field Name Property Type Required
disabled BOOLEAN No

Commands

The following are properties for both the Digital Twin API to send a command to the device as well as the properties passed as part of a command to the gateway to be processed by the device itself.

cloud.smarthq.command.dishwasher.mode.v1.set

Command used to set a mode on a dishwasher. The specific config for the mode service determines which properties can be used and which ones are required.

Field Name Property Type Required
boostTemperature BOOLEAN No
bottleWash BOOLEAN No
delayStartValue INTEGER No
heatedDry DISHWASHER_HEATED_DRY No
sani BOOLEAN No
silverwareWash BOOLEAN No
steam BOOLEAN No
washZone DISHWASHER_WASH_ZONE No

Example Commands

Command to set the cycle mode in dishwasher.

{
  "command": {
    "commandType": "cloud.smarthq.command.dishwasher.mode.v1.set",
    "steam": true
  },
  "deviceId": "00000000000000000000000000000000000000000000000000000000000000",
  "domainType": "cloud.smarthq.domain.dishwasher.auto",
  "kind": "service#command",
  "serviceDeviceType": "cloud.smarthq.device.dishwasher",
  "serviceType": "cloud.smarthq.service.dishwasher.mode.v1"
}

Command to set the cycle mode in dishwasher.

{
  "command": {
    "commandType": "cloud.smarthq.command.dishwasher.mode.v1.set",
    "bottleWash": true
  },
  "deviceId": "00000000000000000000000000000000000000000000000000000000000000",
  "domainType": "cloud.smarthq.domain.dishwasher.everyday",
  "kind": "service#command",
  "serviceDeviceType": "cloud.smarthq.device.dishwasher",
  "serviceType": "cloud.smarthq.service.dishwasher.mode.v1"
}

Supported Outcomes

Each service has an allow listed set of outcomes that the device may return when asked to execute a command.

Outcome Documentation
cloud.smarthq.outcome.badrequest The request was invalid.
cloud.smarthq.outcome.developererror Only used when there is a server side bug
cloud.smarthq.outcome.deviceoffline The device is offline.
cloud.smarthq.outcome.forbidden The request is forbidden due to permissions.
cloud.smarthq.outcome.internalerror The server had an issue processing the request
cloud.smarthq.outcome.missingconfig The service config is missing
cloud.smarthq.outcome.missingstate The service state is missing
cloud.smarthq.outcome.notallowed The command is not allowed.
cloud.smarthq.outcome.notfound The request is forbidden due to permissions.
cloud.smarthq.outcome.notsupported The command is not supported.
cloud.smarthq.outcome.outofbounds General out of bounds error
cloud.smarthq.outcome.servicedisabled Feature is currently disabled
cloud.smarthq.outcome.success Successful request
cloud.smarthq.outcome.timeout The server experienced timeout waiting for a response from the gateway

Data Types

BOOLEAN

Value must be either true or false.

INTEGER

Value must be an integer. Field specific restrictions such as a minimum and maximum may apply depending on the field.

DISHWASHER_HEATED_DRY

DISHWASHER_HEATED_DRY Documentation
cloud.smarthq.type.dishwasher.heateddry.addedheat Added Heat
cloud.smarthq.type.dishwasher.heateddry.maxdry Max Dry
cloud.smarthq.type.dishwasher.heateddry.none None

DISHWASHER_WASH_ZONE

DISHWASHER_WASH_ZONE Documentation
cloud.smarthq.type.dishwasher.washzone.both Both
cloud.smarthq.type.dishwasher.washzone.lower Lower
cloud.smarthq.type.dishwasher.washzone.upper Upper

SET<DISHWASHER_HEATED_DRY>

SET<DISHWASHER_HEATED_DRY> Documentation
cloud.smarthq.type.dishwasher.heateddry.addedheat Added Heat
cloud.smarthq.type.dishwasher.heateddry.maxdry Max Dry
cloud.smarthq.type.dishwasher.heateddry.none None

SET<DISHWASHER_WASH_ZONE>

SET<DISHWASHER_WASH_ZONE> Documentation
cloud.smarthq.type.dishwasher.washzone.both Both
cloud.smarthq.type.dishwasher.washzone.lower Lower
cloud.smarthq.type.dishwasher.washzone.upper Upper

SUPPORTED_PARAMETER

SUPPORTED_PARAMETER Documentation
cloud.smarthq.type.parameter.defaulted Associated parameter may be provided, the value defaults if not provided
cloud.smarthq.type.parameter.optional Associated parameter may be provided
cloud.smarthq.type.parameter.prohibited Associated parameter cannot be used, this is the implied behavior when not provided.
cloud.smarthq.type.parameter.required Associated parameter must be provided

TIME_GRANULARITY

TIME_GRANULARITY Documentation
cloud.smarthq.type.timergranularity.days Granularity of days
cloud.smarthq.type.timergranularity.hours Granularity of hours
cloud.smarthq.type.timergranularity.minutes Granularity of minutes
cloud.smarthq.type.timergranularity.seconds Granularity of seconds