Matter · IOS API REFERENCE
MTRDeviceController
class · iOS 16.1+ · SDK 27.1
class MTRDeviceController
Members (50)
static · iOS 16.4+computePASEVerifier
TypeScriptstatic computePASEVerifier(setupPasscode: _Foundation_NSNumber, iterations: _Foundation_NSNumber, salt: ArrayBuffer): ArrayBuffer
Swift declarationclass func computePASEVerifier(forSetupPasscode setupPasscode: NSNumber, iterations: NSNumber, salt: Data) throws -> Data
staticdecodeXPCReadParams
TypeScriptstatic decodeXPCReadParams(params?: (Record<string, unknown>) | null): (MTRReadParams) | null
Swift declarationclass func decodeXPCReadParams(_ params: [String : Any]?) -> MTRReadParams?
staticdecodeXPCResponseValues
TypeScriptstatic decodeXPCResponseValues(values?: (Array<Record<string, unknown>>) | null): (Array<Record<string, unknown>>) | null
Swift declarationclass func decodeXPCResponseValues(_ values: [[String : Any]]?) -> [[String : Any]]?
staticdecodeXPCSubscribeParams
TypeScriptstatic decodeXPCSubscribeParams(params?: (Record<string, unknown>) | null): (MTRSubscribeParams) | null
Swift declarationclass func decodeXPCSubscribeParams(_ params: [String : Any]?) -> MTRSubscribeParams?
staticencodeXPCReadParams
TypeScriptstatic encodeXPCReadParams(params: MTRReadParams): (Record<string, unknown>) | null
Swift declarationclass func encodeXPCReadParams(_ params: MTRReadParams) -> [String : Any]?
staticencodeXPCResponseValues
TypeScriptstatic encodeXPCResponseValues(values?: (Array<Record<string, unknown>>) | null): (Array<Record<string, unknown>>) | null
Swift declarationclass func encodeXPCResponseValues(_ values: [[String : Any]]?) -> [[String : Any]]?
staticencodeXPCSubscribeParams
TypeScriptstatic encodeXPCSubscribeParams(params?: (MTRSubscribeParams) | null): (Record<string, unknown>) | null
Swift declarationclass func encodeXPCSubscribeParams(_ params: MTRSubscribeParams?) -> [String : Any]?
static · iOS 16.5+xpcInterfaceForClientProtocol
TypeScriptstatic xpcInterfaceForClientProtocol(): _Foundation_NSXPCInterface
Swift declarationclass func xpcInterfaceForClientProtocol() -> NSXPCInterface
static · iOS 16.5+xpcInterfaceForServerProtocol
TypeScriptstatic xpcInterfaceForServerProtocol(): _Foundation_NSXPCInterface
Swift declarationclass func xpcInterfaceForServerProtocol() -> NSXPCInterface
method · iOS 18.2+add
TypeScriptaddQueue(delegate: Implements<MTRDeviceControllerDelegate> | SDKHandle, queue: _Dispatch_DispatchQueue): void
Swift declarationfunc add(_ delegate: any MTRDeviceControllerDelegate, queue: dispatch_queue_t)
method · iOS 17.6+add
TypeScriptadd(endpoint: MTRServerEndpoint): boolean
Swift declarationfunc add(_ endpoint: MTRServerEndpoint) -> Bool
method · iOS 16.4+attestationChallenge
TypeScriptattestationChallenge(deviceID: _Foundation_NSNumber): (ArrayBuffer) | null
Swift declarationfunc attestationChallenge(forDeviceID deviceID: NSNumber) -> Data?
method · iOS 16.4+cancelCommissioning
TypeScriptcancelCommissioning(nodeID: _Foundation_NSNumber): void
Swift declarationfunc cancelCommissioning(forNodeID nodeID: NSNumber) throws
method · iOS 16.1+ · Deprecated in iOS 16.4commissionDevice
TypeScriptcommissionDevice(deviceId: number, commissioningParams: MTRCommissioningParameters): void
Swift declarationfunc commissionDevice(_ deviceId: UInt64, commissioningParams: MTRCommissioningParameters) throws
method · iOS 16.4+commissionNode
TypeScriptcommissionNode(nodeID: _Foundation_NSNumber, commissioningParams: MTRCommissioningParameters): void
Swift declarationfunc commissionNode(withID nodeID: NSNumber, commissioningParams: MTRCommissioningParameters) throws
method · iOS 16.1+ · Deprecated in iOS 16.4computePaseVerifier
TypeScriptcomputePaseVerifier(setupPincode: number, iterations: number, salt: ArrayBuffer): (ArrayBuffer) | null
Swift declarationfunc computePaseVerifier(_ setupPincode: UInt32, iterations: UInt32, salt: Data) -> Data?
method · iOS 16.1+continueCommissioningDevice
TypeScriptcontinueCommissioningDevice(opaqueDeviceHandle: SDKHandle, ignoreAttestationFailure: boolean): void
Swift declarationfunc continueCommissioningDevice(_ opaqueDeviceHandle: UnsafeMutableRawPointer, ignoreAttestationFailure: Bool) throws
method · iOS 16.4+deviceBeingCommissioned
TypeScriptdeviceBeingCommissioned(nodeID: _Foundation_NSNumber): MTRBaseDevice
Swift declarationfunc deviceBeingCommissioned(withNodeID nodeID: NSNumber) throws -> MTRBaseDevice
method · iOS 16.1+ · Deprecated in iOS 16.4fetchAttestationChallenge
TypeScriptfetchAttestationChallenge(deviceId: number): (ArrayBuffer) | null
Swift declarationfunc fetchAttestationChallenge(forDeviceId deviceId: UInt64) -> Data?
method · iOS 18.4+forgetDevice
TypeScriptforgetDevice(nodeID: _Foundation_NSNumber): void
Swift declarationfunc forgetDevice(withNodeID nodeID: NSNumber)
method · iOS 16.1+ · Deprecated in iOS 16.4getBaseDevice
TypeScriptgetBaseDevice(deviceID: number, queue: _Dispatch_DispatchQueue, completionHandler: ((arg0: (MTRBaseDevice) | null, arg1: (NativeError) | null) => void)): boolean
Swift declarationfunc getBaseDevice(_ deviceID: UInt64, queue: dispatch_queue_t, completionHandler: @escaping MTRDeviceConnectionCallback) -> Bool
method · iOS 16.1+ · Deprecated in iOS 16.4getDeviceBeingCommissioned
TypeScriptgetDeviceBeingCommissioned(deviceId: number): MTRBaseDevice
Swift declarationfunc getDeviceBeingCommissioned(_ deviceId: UInt64) throws -> MTRBaseDevice
init · iOS 17.6+init
TypeScriptstatic init(parameters: MTRDeviceControllerAbstractParameters): MTRDeviceController
Swift declarationinit(parameters: MTRDeviceControllerAbstractParameters) throws
method · iOS 16.1+ · Deprecated in iOS 16.4openPairingWindow
TypeScriptopenPairingWindowDuration(deviceID: number, duration: number): void
Swift declarationfunc openPairingWindow(_ deviceID: UInt64, duration: Int) throws
method · iOS 16.1+ · Deprecated in iOS 16.4openPairingWindow
TypeScriptopenPairingWindowWithPINDurationDiscriminatorSetupPIN(deviceID: number, duration: number, discriminator: number, setupPIN: number): string
Swift declarationfunc openPairingWindow(withPIN deviceID: UInt64, duration: Int, discriminator: Int, setupPIN: Int) throws -> String
method · iOS 16.1+ · Deprecated in iOS 16.4pairDevice
TypeScriptpairDeviceAddressPortSetupPINCode(deviceID: number, address: string, port: number, setupPINCode: number): void
Swift declarationfunc pairDevice(_ deviceID: UInt64, address: String, port: UInt16, setupPINCode: UInt32) throws
method · iOS 16.1+ · Deprecated in iOS 16.4pairDevice
TypeScriptpairDeviceDiscriminatorSetupPINCode(deviceID: number, discriminator: number, setupPINCode: number): void
Swift declarationfunc pairDevice(_ deviceID: UInt64, discriminator: UInt16, setupPINCode: UInt32) throws
method · iOS 16.1+ · Deprecated in iOS 16.4pairDevice
TypeScriptpairDeviceOnboardingPayload(deviceID: number, onboardingPayload: string): void
Swift declarationfunc pairDevice(_ deviceID: UInt64, onboardingPayload: String) throws
method · iOS 16.4+ · Deprecated in iOS 17.6preWarmCommissioningSession
TypeScriptpreWarmCommissioningSession(): void
Swift declarationfunc preWarmCommissioningSession()
method · iOS 18.2+remove
TypeScriptremove(delegate: Implements<MTRDeviceControllerDelegate> | SDKHandle): void
Swift declarationfunc remove(_ delegate: any MTRDeviceControllerDelegate)
method · iOS 17.6+remove
TypeScriptremove38489(endpoint: MTRServerEndpoint): void
Swift declarationfunc remove(_ endpoint: MTRServerEndpoint)
method · iOS 17.6+remove
TypeScriptremoveQueueCompletion(endpoint: MTRServerEndpoint, queue: _Dispatch_DispatchQueue, completion: (() => void)): void
Swift declarationfunc remove(_ endpoint: MTRServerEndpoint, queue: dispatch_queue_t) async
method · iOS 18.2+resume
TypeScriptresume(): void
Swift declarationfunc resume()
method · iOS 16.4+setDeviceControllerDelegate
TypeScriptsetDeviceControllerDelegate(delegate: Implements<MTRDeviceControllerDelegate> | SDKHandle, queue: _Dispatch_DispatchQueue): void
Swift declarationfunc setDeviceControllerDelegate(_ delegate: any MTRDeviceControllerDelegate, queue: dispatch_queue_t)
method · iOS 16.1+ · Deprecated in iOS 16.4setNocChainIssuer
TypeScriptsetNocChainIssuer(nocChainIssuer: SDKHandle, queue: _Dispatch_DispatchQueue): void
Swift declarationfunc setNocChainIssuer(_ nocChainIssuer: any MTRNOCChainIssuer, queue: dispatch_queue_t)
method · iOS 16.1+ · Deprecated in iOS 16.4setPairingDelegate
TypeScriptsetPairingDelegate(delegate: Implements<MTRDevicePairingDelegate> | SDKHandle, queue: _Dispatch_DispatchQueue): void
Swift declarationfunc setPairingDelegate(_ delegate: any MTRDevicePairingDelegate, queue: dispatch_queue_t)
method · iOS 17.0+setupCommissioningSession
TypeScriptsetupCommissioningSessionWithDiscoveredDevicePayloadNewNodeID(discoveredDevice: MTRCommissionableBrowserResult, payload: MTRSetupPayload, newNodeID: _Foundation_NSNumber): void
Swift declarationfunc setupCommissioningSession(withDiscoveredDevice discoveredDevice: MTRCommissionableBrowserResult, payload: MTRSetupPayload, newNodeID: NSNumber) throws
method · iOS 16.2+setupCommissioningSession
TypeScriptsetupCommissioningSessionWithNewNodeID(payload: MTRSetupPayload, newNodeID: _Foundation_NSNumber): void
Swift declarationfunc setupCommissioningSession(with payload: MTRSetupPayload, newNodeID: NSNumber) throws
method · iOS 16.1+shutdown
TypeScriptshutdown(): void
Swift declarationfunc shutdown()
method · iOS 17.0+startBrowse
TypeScriptstartBrowse(delegate: Implements<MTRCommissionableBrowserDelegate> | SDKHandle, queue: _Dispatch_DispatchQueue): boolean
Swift declarationfunc startBrowse(forCommissionables delegate: any MTRCommissionableBrowserDelegate, queue: dispatch_queue_t) -> Bool
method · iOS 17.0+stopBrowseForCommissionables
TypeScriptstopBrowseForCommissionables(): boolean
Swift declarationfunc stopBrowseForCommissionables() -> Bool
method · iOS 16.1+ · Deprecated in iOS 16.4stopDevicePairing
TypeScriptstopDevicePairing(deviceID: number): void
Swift declarationfunc stopDevicePairing(_ deviceID: UInt64) throws
method · iOS 18.2+suspend
TypeScriptsuspend(): void
Swift declarationfunc suspend()
get · iOS 16.4+controllerNodeID
TypeScriptget controllerNodeID(): (_Foundation_NSNumber) | null
Swift declarationvar controllerNodeID: NSNumber? { get }
get · iOS 16.1+ · Deprecated in iOS 16.4controllerNodeId
TypeScriptget controllerNodeId(): (_Foundation_NSNumber) | null
Swift declarationvar controllerNodeId: NSNumber? { get }
get · iOS 18.4+devices
TypeScriptget devices(): Array<MTRDevice>
Swift declarationvar devices: [MTRDevice] { get }
get · iOS 18.4+nodesWithStoredData
TypeScriptget nodesWithStoredData(): Array<_Foundation_NSNumber>
Swift declarationvar nodesWithStoredData: [NSNumber] { get }
get · iOS 16.1+isRunning
TypeScriptget isRunning(): boolean
Swift declarationvar isRunning: Bool { get }
get · iOS 18.2+isSuspended
TypeScriptget isSuspended(): boolean
Swift declarationvar isSuspended: Bool { get }
get · iOS 17.6+uniqueIdentifier
TypeScriptget uniqueIdentifier(): string
Swift declarationvar uniqueIdentifier: UUID { get }
Skipped declarations
3 declarations were excluded from these bindings. Each reason comes from the generator or the iOS SDK compiler.
MTRDeviceController.sharedController(withID:xpcConnect:)
callback cannot propagate synchronous failure
MTRDeviceController.sharedController(withId:xpcConnect:)
callback cannot propagate synchronous failure
MTRDeviceController.init()
inherited init: cannot prove legal (class declares 1 custom initializer)
All Matter types →