# DoorLockTrait.LockUserChange

# DoorLockTrait.LockUserChange


```
interface DoorLockTrait.LockUserChange : ClusterStruct
```

<br />

Known direct subclasses [DoorLock.LockUserChangeEvent](https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLock.LockUserChangeEvent)

|---|---|
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLock.LockUserChangeEvent` |   |

*** ** * ** ***

Indicates that a lock user, schedule, or credential has changed.

## Summary

| ### 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/DoorLockTrait.LockUserChange#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/DoorLockTrait.LockUserChange#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://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-short/index.html?` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.LockUserChange#dataIndex()` The index of the item that was changed in the list of items identified by `lockDataType`. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.DataOperationTypeEnum?` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.LockUserChange#dataOperationType()` The data operation performed on the lock data. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-byte/index.html?` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.LockUserChange#fabricIndex()` The fabric that performed the user data change. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.LockDataTypeEnum?` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.LockUserChange#lockDataType()` The lock data type that changed. |
| `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.OperationSourceEnum?` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.LockUserChange#operationSource()` The source of the user data change. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-long/index.html?` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.LockUserChange#sourceNode()` The node that performed the user data change. |
| `https://kotlinlang.org/api/latest/jvm/stdlib/kotlin/-u-short/index.html?` | `https://developers.home.google.com/reference/kotlin/com/google/home/matter/standard/DoorLockTrait.LockUserChange#userIndex()` The user who performed the user data change. |

## 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

### dataIndex

```
val dataIndex: UShort?
```

The index of the item that was changed in the list of items identified by `lockDataType`. For example, schedule, PIN, RFID, and so forth.

### dataOperationType

```
val dataOperationType: DoorLockTrait.DataOperationTypeEnum?
```

The data operation performed on the lock data.

### fabricIndex

```
val fabricIndex: UByte?
```

The fabric that performed the user data change.

### lockDataType

```
val lockDataType: DoorLockTrait.LockDataTypeEnum?
```

The lock data type that changed.

### operationSource

```
val operationSource: DoorLockTrait.OperationSourceEnum?
```

The source of the user data change.

### sourceNode

```
val sourceNode: ULong?
```

The node that performed the user data change.

### userIndex

```
val userIndex: UShort?
```

The user who performed the user data change.