---
title: MTRDeviceControllerDelegate
framework: matter
role: symbol
role_heading: Protocol
path: matter/mtrdevicecontrollerdelegate
---

# MTRDeviceControllerDelegate

## Declaration

```swift
protocol MTRDeviceControllerDelegate : NSObjectProtocol
```

## Topics

### Instance Methods

- [controller(_:commissioningComplete:)](matter/mtrdevicecontrollerdelegate/controller(_:commissioningcomplete:).md)
- [controller(_:commissioningComplete:nodeID:)](matter/mtrdevicecontrollerdelegate/controller(_:commissioningcomplete:nodeid:).md)
- [controller(_:commissioningComplete:nodeID:metrics:)](matter/mtrdevicecontrollerdelegate/controller(_:commissioningcomplete:nodeid:metrics:).md)
- [controller(_:commissioningSessionEstablishmentDone:)](matter/mtrdevicecontrollerdelegate/controller(_:commissioningsessionestablishmentdone:).md)
- [controller(_:readCommissioningInfo:)](matter/mtrdevicecontrollerdelegate/controller(_:readcommissioninginfo:).md)
- [controller(_:statusUpdate:)](matter/mtrdevicecontrollerdelegate/controller(_:statusupdate:).md)
- [controller(_:commissioneeHasReceivedNetworkCredentials:)](matter/mtrdevicecontrollerdelegate/controller(_:commissioneehasreceivednetworkcredentials:).md)
- [controller(_:commissioningComplete:nodeID:metrics:context:)](matter/mtrdevicecontrollerdelegate/controller(_:commissioningcomplete:nodeid:metrics:context:).md)
- [controller(_:read:)](matter/mtrdevicecontrollerdelegate/controller(_:read:).md)
- [controller(_:suspendedChangedTo:)](matter/mtrdevicecontrollerdelegate/controller(_:suspendedchangedto:).md)
- [devicesChanged(for:)](matter/mtrdevicecontrollerdelegate/deviceschanged(for:).md)

## Relationships

### Inherits From

- [NSObjectProtocol](objectivec/nsobjectprotocol.md)
