Expand description
Linux bluetooth mgmt API client.
§Dependencies
[dependencies]
btmgmt = "0.1.0"§Example
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
$ 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 or http://www.apache.org/licenses/LICENSE-2.0)
- MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT) 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.!
Re-exports§
pub use client::Client;pub use btmgmt_packet as packet;