mirror of
https://codeberg.org/icewind/mitemp-prometheus.git
synced 2026-06-03 17:14:08 +02:00
bumb dependencies
This commit is contained in:
parent
4a940b0b4a
commit
a501b3c4c3
3 changed files with 423 additions and 347 deletions
786
Cargo.lock
generated
786
Cargo.lock
generated
File diff suppressed because it is too large
Load diff
|
|
@ -11,6 +11,8 @@ dotenv = "0.15.0"
|
||||||
main_error = "0.1.0"
|
main_error = "0.1.0"
|
||||||
tokio = { version = "1.0", features = ["macros", "rt-multi-thread"] }
|
tokio = { version = "1.0", features = ["macros", "rt-multi-thread"] }
|
||||||
warp = "0.3"
|
warp = "0.3"
|
||||||
mitemp = "0.3"
|
mitemp = "0.3.1"
|
||||||
tokio-stream = "0.1"
|
tokio-stream = "0.1"
|
||||||
btleplug = "0.9"
|
btleplug = "0.9"
|
||||||
|
env_logger = "0.9"
|
||||||
|
log = "0.4"
|
||||||
12
src/main.rs
12
src/main.rs
|
|
@ -1,5 +1,6 @@
|
||||||
use btleplug::api::Manager as _;
|
use btleplug::api::{Central, Manager as _};
|
||||||
use btleplug::platform::Manager;
|
use btleplug::platform::Manager;
|
||||||
|
use log::info;
|
||||||
use main_error::MainError;
|
use main_error::MainError;
|
||||||
use mitemp::{listen, BDAddr, Sensor};
|
use mitemp::{listen, BDAddr, Sensor};
|
||||||
use std::collections::HashMap;
|
use std::collections::HashMap;
|
||||||
|
|
@ -14,6 +15,7 @@ type Cache = Arc<Mutex<HashMap<BDAddr, Sensor>>>;
|
||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> Result<(), MainError> {
|
async fn main() -> Result<(), MainError> {
|
||||||
|
env_logger::init();
|
||||||
let cache: Cache = Arc::default();
|
let cache: Cache = Arc::default();
|
||||||
|
|
||||||
let mut env: HashMap<String, String> = dotenv::vars().collect();
|
let mut env: HashMap<String, String> = dotenv::vars().collect();
|
||||||
|
|
@ -39,6 +41,9 @@ async fn main() -> Result<(), MainError> {
|
||||||
for adapter in manager.adapters().await? {
|
for adapter in manager.adapters().await? {
|
||||||
let rx_cache = cache.clone();
|
let rx_cache = cache.clone();
|
||||||
spawn(async move {
|
spawn(async move {
|
||||||
|
if let Ok(info) = adapter.adapter_info().await {
|
||||||
|
info!("Listening on {}", info);
|
||||||
|
}
|
||||||
let stream = match listen(&adapter).await {
|
let stream = match listen(&adapter).await {
|
||||||
Ok(stream) => stream,
|
Ok(stream) => stream,
|
||||||
Err(e) => {
|
Err(e) => {
|
||||||
|
|
@ -49,6 +54,7 @@ async fn main() -> Result<(), MainError> {
|
||||||
pin!(stream);
|
pin!(stream);
|
||||||
|
|
||||||
while let Some(sensor) = stream.next().await {
|
while let Some(sensor) = stream.next().await {
|
||||||
|
info!("Got update for {}: {:?}", sensor.mac, sensor.data);
|
||||||
rx_cache.lock().unwrap().insert(sensor.mac, sensor);
|
rx_cache.lock().unwrap().insert(sensor.mac, sensor);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -86,7 +92,7 @@ fn format<W: Write>(
|
||||||
name, sensor.mac, sensor.data.battery
|
name, sensor.mac, sensor.data.battery
|
||||||
)?;
|
)?;
|
||||||
} else {
|
} else {
|
||||||
eprintln!("Skipping unnamed censor {}", sensor.mac);
|
info!("Skipping unnamed censor {}", sensor.mac);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if let Some(name) = name {
|
if let Some(name) = name {
|
||||||
|
|
@ -101,7 +107,7 @@ fn format<W: Write>(
|
||||||
name, sensor.mac, sensor.data.humidity
|
name, sensor.mac, sensor.data.humidity
|
||||||
)?;
|
)?;
|
||||||
} else {
|
} else {
|
||||||
eprintln!("Skipping unnamed censor {}", sensor.mac);
|
info!("Skipping unnamed censor {}", sensor.mac);
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue