bazzar/crates/cart_manager/src/mqtt.rs
2022-11-05 19:04:38 +01:00

25 lines
692 B
Rust

use config::SharedAppConfig;
use rumqttc::{Event, Incoming};
use crate::Database;
pub async fn start(config: SharedAppConfig, _db: Database) -> channels::AsyncClient {
let (client, mut event_loop) = channels::carts::mqtt::create_client(config.clone());
let spawn_client = client.clone();
tokio::spawn(async move {
let _client = spawn_client.clone();
loop {
let notification = event_loop.poll().await;
match notification {
Ok(Event::Incoming(Incoming::Publish(publish))) => match publish.topic.as_str() {
_ => {}
},
_ => {}
}
}
});
client
}