# btmgmt Linux bluetooth mgmt API client. see [bluez docs/mgmt-api.txt](https://git.kernel.org/pub/scm/bluetooth/bluez.git/plain/doc/mgmt-api.txt) ### Dependencies ```toml [dependencies] btmgmt = "0.3.0-alpha.4" ``` ### Example ```rust use btmgmt::Client; use btmgmt::command::ReadManagementSupportedCommands; use futures::StreamExt; #[tokio::main(flavor = "current_thread")] async fn main() { // (management client, run loop handle) let client = Client::open().unwrap(); let mut events = client.events().await; tokio::spawn(async move { while let Some((index, event)) = events.next().await { match event { // do staff } } }); let reply = client.call(None, ReadManagementSupportedCommands).await.unwrap(); for command in reply.commands() { // do stuff } for event in reply.events() { // do stuff } } ``` ### Command line client ```bash $ cargo install btmgmt-cli ... $ btmgmt-cli version 1.18 $ ``` Many operations require privileges. ### License Licensed under either of * Apache License, Version 2.0 ([LICENSE-APACHE](LICENSE-APACHE) or ) * MIT license ([LICENSE-MIT](LICENSE-MIT) or ) at your option. ### Contribution Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.! License: MIT OR Apache-2.0