One Logo Pool Ball
Matter · IOS API REFERENCE

MTRBaseDevice

class · iOS 16.1+ · SDK 27.1

class MTRBaseDevice

Members (21)

init · iOS 16.4+

init

TypeScript
static init(nodeID: _Foundation_NSNumber, controller: MTRDeviceController): MTRBaseDevice
Swift declaration
init(nodeID: NSNumber, controller: MTRDeviceController)
method · iOS 16.1+ · Deprecated in iOS 16.4

deregisterReportHandlers

TypeScript
deregisterReportHandlersWithClientQueueCompletion(queue: _Dispatch_DispatchQueue, completion: (() => void)): void
Swift declaration
func deregisterReportHandlers(withClientQueue queue: dispatch_queue_t) async
method · iOS 16.4+

deregisterReportHandlers

TypeScript
deregisterReportHandlersWithCompletion(queue: _Dispatch_DispatchQueue, completion: (() => void)): void
Swift declaration
func deregisterReportHandlers(with queue: dispatch_queue_t) async
method · iOS 17.6+

downloadLog

TypeScript
downloadLog(type: MTRDiagnosticLogType, timeout: number, queue: _Dispatch_DispatchQueue, completion: ((arg0: (string) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func downloadLog(of type: MTRDiagnosticLogType, timeout: TimeInterval, queue: dispatch_queue_t) async throws -> URL
method · iOS 16.4+

invokeCommand

TypeScript
invokeCommandWithEndpointIDClusterIDCommandIDCommandFieldsTimedInvokeTimeoutQueueCompletion(endpointID: _Foundation_NSNumber, clusterID: _Foundation_NSNumber, commandID: _Foundation_NSNumber, commandFields: unknown, timeoutMs: (_Foundation_NSNumber) | null, queue: _Dispatch_DispatchQueue, completion: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func invokeCommand(withEndpointID endpointID: NSNumber, clusterID: NSNumber, commandID: NSNumber, commandFields: Any, timedInvokeTimeout timeoutMs: NSNumber?, queue: dispatch_queue_t) async throws -> [[String : Any]]
method · iOS 16.1+ · Deprecated in iOS 16.4

invokeCommand

TypeScript
invokeCommandWithEndpointIdClusterIdCommandIdCommandFieldsTimedInvokeTimeoutClientQueueCompletion(endpointId: _Foundation_NSNumber, clusterId: _Foundation_NSNumber, commandId: _Foundation_NSNumber, commandFields: unknown, timeoutMs: (_Foundation_NSNumber) | null, clientQueue: _Dispatch_DispatchQueue, completion: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func invokeCommand(withEndpointId endpointId: NSNumber, clusterId: NSNumber, commandId: NSNumber, commandFields: Any, timedInvokeTimeout timeoutMs: NSNumber?, clientQueue: dispatch_queue_t) async throws -> [[String : Any]]
method · iOS 17.0+

openCommissioningWindow

TypeScript
openCommissioningWindowWithDiscriminatorDurationQueueCompletion(discriminator: _Foundation_NSNumber, duration: _Foundation_NSNumber, queue: _Dispatch_DispatchQueue, completion: ((arg0: (MTRSetupPayload) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func openCommissioningWindow(withDiscriminator discriminator: NSNumber, duration: NSNumber, queue: dispatch_queue_t) async throws -> MTRSetupPayload
method · iOS 16.2+

openCommissioningWindow

TypeScript
openCommissioningWindowWithSetupPasscodeDiscriminatorDurationQueueCompletion(setupPasscode: _Foundation_NSNumber, discriminator: _Foundation_NSNumber, duration: _Foundation_NSNumber, queue: _Dispatch_DispatchQueue, completion: ((arg0: (MTRSetupPayload) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func openCommissioningWindow(withSetupPasscode setupPasscode: NSNumber, discriminator: NSNumber, duration: NSNumber, queue: dispatch_queue_t) async throws -> MTRSetupPayload
method · iOS 17.0+

readAttributePaths

TypeScript
readAttributePaths(attributePaths: (Array<MTRAttributeRequestPath>) | null, eventPaths: (Array<MTREventRequestPath>) | null, params: (MTRReadParams) | null, queue: _Dispatch_DispatchQueue, completion: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func readAttributePaths(_ attributePaths: [MTRAttributeRequestPath]?, eventPaths: [MTREventRequestPath]?, params: MTRReadParams?, queue: dispatch_queue_t) async throws -> [[String : Any]]
method · iOS 16.1+ · Deprecated in iOS 16.4

readAttribute

TypeScript
readAttribute(endpointId: (_Foundation_NSNumber) | null, clusterId: (_Foundation_NSNumber) | null, attributeId: (_Foundation_NSNumber) | null, params: (MTRReadParams) | null, clientQueue: _Dispatch_DispatchQueue, completion: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func readAttribute(withEndpointId endpointId: NSNumber?, clusterId: NSNumber?, attributeId: NSNumber?, params: MTRReadParams?, clientQueue: dispatch_queue_t) async throws -> [[String : Any]]
method · iOS 16.4+

readAttributes

TypeScript
readAttributes(endpointID: (_Foundation_NSNumber) | null, clusterID: (_Foundation_NSNumber) | null, attributeID: (_Foundation_NSNumber) | null, params: (MTRReadParams) | null, queue: _Dispatch_DispatchQueue, completion: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func readAttributes(withEndpointID endpointID: NSNumber?, clusterID: NSNumber?, attributeID: NSNumber?, params: MTRReadParams?, queue: dispatch_queue_t) async throws -> [[String : Any]]
method · iOS 16.4+

readEvents

TypeScript
readEvents(endpointID: (_Foundation_NSNumber) | null, clusterID: (_Foundation_NSNumber) | null, eventID: (_Foundation_NSNumber) | null, params: (MTRReadParams) | null, queue: _Dispatch_DispatchQueue, completion: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func readEvents(withEndpointID endpointID: NSNumber?, clusterID: NSNumber?, eventID: NSNumber?, params: MTRReadParams?, queue: dispatch_queue_t) async throws -> [[String : Any]]
method · iOS 16.1+ · Deprecated in iOS 16.4

subscribeAttribute

TypeScript
subscribeAttribute(endpointId: (_Foundation_NSNumber) | null, clusterId: (_Foundation_NSNumber) | null, attributeId: (_Foundation_NSNumber) | null, minInterval: _Foundation_NSNumber, maxInterval: _Foundation_NSNumber, params: (MTRSubscribeParams) | null, clientQueue: _Dispatch_DispatchQueue, reportHandler: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void), subscriptionEstablishedHandler?: ((() => void)) | null): void
Swift declaration
func subscribeAttribute(withEndpointId endpointId: NSNumber?, clusterId: NSNumber?, attributeId: NSNumber?, minInterval: NSNumber, maxInterval: NSNumber, params: MTRSubscribeParams?, clientQueue: dispatch_queue_t, reportHandler: @escaping MTRDeviceResponseHandler, subscriptionEstablished subscriptionEstablishedHandler: (() -> Void)? = nil)
method · iOS 17.0+

subscribe

TypeScript
subscribeToAttributePathsEventPathsParamsQueueReportHandlerSubscriptionEstablishedResubscriptionScheduled(attributePaths: (Array<MTRAttributeRequestPath>) | null, eventPaths: (Array<MTREventRequestPath>) | null, params: (MTRSubscribeParams) | null, queue: _Dispatch_DispatchQueue, reportHandler: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void), subscriptionEstablished?: ((() => void)) | null, resubscriptionScheduled?: (((arg0: NativeError, arg1: _Foundation_NSNumber) => void)) | null): void
Swift declaration
func subscribe(toAttributePaths attributePaths: [MTRAttributeRequestPath]?, eventPaths: [MTREventRequestPath]?, params: MTRSubscribeParams?, queue: dispatch_queue_t, reportHandler: @escaping MTRDeviceResponseHandler, subscriptionEstablished: MTRSubscriptionEstablishedHandler?, resubscriptionScheduled: MTRDeviceResubscriptionScheduledHandler? = nil)
method · iOS 16.4+

subscribeToAttributes

TypeScript
subscribeToAttributes(endpointID: (_Foundation_NSNumber) | null, clusterID: (_Foundation_NSNumber) | null, attributeID: (_Foundation_NSNumber) | null, params: (MTRSubscribeParams) | null, queue: _Dispatch_DispatchQueue, reportHandler: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void), subscriptionEstablished?: ((() => void)) | null): void
Swift declaration
func subscribeToAttributes(withEndpointID endpointID: NSNumber?, clusterID: NSNumber?, attributeID: NSNumber?, params: MTRSubscribeParams?, queue: dispatch_queue_t, reportHandler: @escaping MTRDeviceResponseHandler, subscriptionEstablished: MTRSubscriptionEstablishedHandler? = nil)
method · iOS 16.4+

subscribeToEvents

TypeScript
subscribeToEvents(endpointID: (_Foundation_NSNumber) | null, clusterID: (_Foundation_NSNumber) | null, eventID: (_Foundation_NSNumber) | null, params: (MTRSubscribeParams) | null, queue: _Dispatch_DispatchQueue, reportHandler: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void), subscriptionEstablished?: ((() => void)) | null): void
Swift declaration
func subscribeToEvents(withEndpointID endpointID: NSNumber?, clusterID: NSNumber?, eventID: NSNumber?, params: MTRSubscribeParams?, queue: dispatch_queue_t, reportHandler: @escaping MTRDeviceResponseHandler, subscriptionEstablished: MTRSubscriptionEstablishedHandler? = nil)
method · iOS 16.1+ · Deprecated in iOS 16.4

subscribe

TypeScript
subscribeWithMinIntervalMaxIntervalParamsCacheContainerAttributeReportHandlerEventReportHandlerErrorHandlerSubscriptionEstablishedResubscriptionScheduled(queue: _Dispatch_DispatchQueue, minInterval: number, maxInterval: number, params: (MTRSubscribeParams) | null, attributeCacheContainer: (MTRAttributeCacheContainer) | null, attributeReportHandler: (((arg0: Array<unknown>) => void)) | null, eventReportHandler: (((arg0: Array<unknown>) => void)) | null, errorHandler: ((arg0: NativeError) => void), subscriptionEstablishedHandler?: ((() => void)) | null, resubscriptionScheduledHandler?: (((arg0: NativeError, arg1: _Foundation_NSNumber) => void)) | null): void
Swift declaration
func subscribe(with queue: dispatch_queue_t, minInterval: UInt16, maxInterval: UInt16, params: MTRSubscribeParams?, cacheContainer attributeCacheContainer: MTRAttributeCacheContainer?, attributeReportHandler: MTRDeviceReportHandler?, eventReportHandler: MTRDeviceReportHandler?, errorHandler: @escaping MTRDeviceErrorHandler, subscriptionEstablished subscriptionEstablishedHandler: (() -> Void)?, resubscriptionScheduled resubscriptionScheduledHandler: MTRDeviceResubscriptionScheduledHandler? = nil)
method · iOS 16.4+

subscribe

TypeScript
subscribeWithParamsClusterStateCacheContainerAttributeReportHandlerEventReportHandlerErrorHandlerSubscriptionEstablishedResubscriptionScheduled(queue: _Dispatch_DispatchQueue, params: MTRSubscribeParams, clusterStateCacheContainer: (MTRClusterStateCacheContainer) | null, attributeReportHandler: (((arg0: Array<unknown>) => void)) | null, eventReportHandler: (((arg0: Array<unknown>) => void)) | null, errorHandler: ((arg0: NativeError) => void), subscriptionEstablished?: ((() => void)) | null, resubscriptionScheduled?: (((arg0: NativeError, arg1: _Foundation_NSNumber) => void)) | null): void
Swift declaration
func subscribe(with queue: dispatch_queue_t, params: MTRSubscribeParams, clusterStateCacheContainer: MTRClusterStateCacheContainer?, attributeReportHandler: MTRDeviceReportHandler?, eventReportHandler: MTRDeviceReportHandler?, errorHandler: @escaping MTRDeviceErrorHandler, subscriptionEstablished: MTRSubscriptionEstablishedHandler?, resubscriptionScheduled: MTRDeviceResubscriptionScheduledHandler? = nil)
method · iOS 16.4+

writeAttribute

TypeScript
writeAttributeWithEndpointIDClusterIDAttributeIDValueTimedWriteTimeoutQueueCompletion(endpointID: _Foundation_NSNumber, clusterID: _Foundation_NSNumber, attributeID: _Foundation_NSNumber, value: unknown, timeoutMs: (_Foundation_NSNumber) | null, queue: _Dispatch_DispatchQueue, completion: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func writeAttribute(withEndpointID endpointID: NSNumber, clusterID: NSNumber, attributeID: NSNumber, value: Any, timedWriteTimeout timeoutMs: NSNumber?, queue: dispatch_queue_t) async throws -> [[String : Any]]
method · iOS 16.1+ · Deprecated in iOS 16.4

writeAttribute

TypeScript
writeAttributeWithEndpointIdClusterIdAttributeIdValueTimedWriteTimeoutClientQueueCompletion(endpointId: _Foundation_NSNumber, clusterId: _Foundation_NSNumber, attributeId: _Foundation_NSNumber, value: unknown, timeoutMs: (_Foundation_NSNumber) | null, clientQueue: _Dispatch_DispatchQueue, completion: ((arg0: (Array<Record<string, unknown>>) | null, arg1: (NativeError) | null) => void)): void
Swift declaration
func writeAttribute(withEndpointId endpointId: NSNumber, clusterId: NSNumber, attributeId: NSNumber, value: Any, timedWriteTimeout timeoutMs: NSNumber?, clientQueue: dispatch_queue_t) async throws -> [[String : Any]]
get · iOS 16.4+

sessionTransportType

TypeScript
get sessionTransportType(): MTRTransportType
Swift declaration
var sessionTransportType: MTRTransportType { get }

Skipped declarations

1 declarations were excluded from these bindings. Each reason comes from the generator or the iOS SDK compiler.

MTRBaseDevice.init()

inherited init: cannot prove legal (class declares 1 custom initializer)

All Matter types →