# LevelControlTrait.StepCommand.Request

# LevelControlTrait.StepCommand.Request


```
class LevelControlTrait.StepCommand.Request : ClusterStruct
```

<br />

*** ** * ** ***

The request payload for the Step command.

## Summary

| ### Nested types |
|---|
| `@https://developers.home.google.com/reference/kotlin/com/google/home/annotation/HomeExperimentalGenericApi enum https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request.CommandFields : https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-enum/index.html, https://developers.home.google.com/reference/kotlin/com/google/home/Field` Descriptor enum for this command's request fields. |

| ### Public constructors |
|---|
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request#Request(com.google.home.matter.standard.LevelControlTrait.StepModeEnum,kotlin.UByte,kotlin.UShort,com.google.home.matter.standard.LevelControlTrait.OptionsBitmap,com.google.home.matter.standard.LevelControlTrait.OptionsBitmap)( stepMode: https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepModeEnum, stepSize: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-byte/index.html, transitionTime: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-short/index.html?, optionsMask: https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.OptionsBitmap, optionsOverride: https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.OptionsBitmap )` Creates a request payload for the Step command. |

| ### Public functions |
|---|---|
| `open https://developers.home.google.com/reference/kotlin/com/google/home/StructDescriptor` | `@https://developers.home.google.com/reference/kotlin/com/google/home/annotation/HomeExperimentalGenericApi https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request#getDescriptor()()` Returns the descriptor for the struct. |
| `open https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-any/index.html?` | `@https://developers.home.google.com/reference/kotlin/com/google/home/annotation/HomeExperimentalGenericApi https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request#getFieldValueById(kotlin.UInt)(tagId: https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-int/index.html)` Returns the value of the field for the given tag ID. |

| ### Public properties |
|---|---|
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.OptionsBitmap` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request#optionsMask()` Determines which bits in the `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.Attributes#options()` attribute should be overridden by `optionsOverride`. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.OptionsBitmap` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request#optionsOverride()` If the corresponding bit in `optionsMask` is set to `1`, the bit set here overrides the corresponding bit in `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.Attributes#options()` attribute. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepModeEnum` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request#stepMode()` The direction in which to move the level. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-byte/index.html` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request#stepSize()` The amount of units to move the device's `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.Attributes#currentLevel()` to. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-short/index.html?` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepCommand.Request#transitionTime()` The time (in 0.1 seconds) taken to move the device to the new level. |

## Public constructors

### Request

```
Request(
    stepMode: LevelControlTrait.StepModeEnum = StepModeEnum.Up,
    stepSize: UByte,
    transitionTime: UShort? = null,
    optionsMask: LevelControlTrait.OptionsBitmap = OptionsBitmap(),
    optionsOverride: LevelControlTrait.OptionsBitmap = OptionsBitmap()
)
```

Creates a request payload for the Step command.

## Public functions

### getDescriptor

```
@HomeExperimentalGenericApi
open fun getDescriptor(): StructDescriptor
```

Returns the descriptor for the struct.

### getFieldValueById

```
@HomeExperimentalGenericApi
open fun getFieldValueById(tagId: UInt): Any?
```

Returns the value of the field for the given tag ID.

## Public properties

### optionsMask

```
val optionsMask: LevelControlTrait.OptionsBitmap
```

Determines which bits in the `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.Attributes#options()` attribute should be overridden by `optionsOverride`.

### optionsOverride

```
val optionsOverride: LevelControlTrait.OptionsBitmap
```

If the corresponding bit in `optionsMask` is set to `1`, the bit set here overrides the corresponding bit in `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.Attributes#options()` attribute.

### stepMode

```
val stepMode: LevelControlTrait.StepModeEnum
```

The direction in which to move the level. This must be one of the values in `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.StepModeEnum`.

### stepSize

```
val stepSize: UByte
```

The amount of units to move the device's `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/LevelControlTrait.Attributes#currentLevel()` to.

### transitionTime

```
val transitionTime: UShort?
```

The time (in 0.1 seconds) taken to move the device to the new level.