[package]
name = "matter-controller"
version = "0.5.0"
description = "High-level Matter controller API: commission, read, write, invoke, subscribe."
edition.workspace = true
rust-version.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
authors.workspace = true
keywords = ["matter", "controller", "smart-home", "iot"]
categories = ["api-bindings", "network-programming"]
readme = "README.md"
[lints]
workspace = true
[features]
default = ["ota"]
ota = ["dep:matter-ota", "dep:matter-bdx"]
ble = ["dep:matter-ble", "matter-ble/central"]
unstable-provider = []
[dependencies]
matter-codec = { path = "../matter-codec", version = "0.3.0" }
matter-cert = { path = "../matter-cert", version = "0.3.0" }
matter-crypto = { path = "../matter-crypto", version = "0.3.0" }
matter-transport = { path = "../matter-transport", version = "0.3.0" }
matter-commissioning = { path = "../matter-commissioning", version = "0.4.0", features = ["driver"] }
matter-interaction = { path = "../matter-interaction", version = "0.4.0" }
tokio = { workspace = true, features = ["rt", "rt-multi-thread", "macros", "sync", "time"] }
matter-clusters = { path = "../matter-clusters", version = "0.3.0" }
matter-ota = { path = "../matter-ota", version = "0.4.0", optional = true }
matter-bdx = { path = "../matter-bdx", version = "0.3.0", optional = true }
matter-ble = { path = "../matter-ble", version = "0.3.2", optional = true }
thiserror = { workspace = true }
tracing = { version = "0.1", default-features = false, features = ["std"] }
[dev-dependencies]
proptest = { workspace = true }
anyhow = { workspace = true }
clap = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
matter-commissioning = { path = "../matter-commissioning", version = "0.4.0", features = ["driver", "test-support"] }
[[example]]
name = "controller_quickstart"
[[example]]
name = "power"
[[example]]
name = "dump_attributes"
[[example]]
name = "fabric_management"
[[example]]
name = "d_hardware_extras"
[[example]]
name = "e3_group_multicast"
[[example]]
name = "group_acl_test"
[[example]]
name = "open_window"
[[example]]
name = "provider_server"
required-features = ["unstable-provider"]
[[example]]
name = "serve_ota"
required-features = ["ota"]
[[example]]
name = "ble_scan"
required-features = ["ble"]
[[example]]
name = "commission_ble_thread"
required-features = ["ble"]
[[example]]
name = "commission_ble_wifi"
required-features = ["ble"]