mirror of
https://codeberg.org/icewind/taspromto.git
synced 2026-08-02 12:14:45 +02:00
handle dmsr mqtt messages
This commit is contained in:
parent
a5bb4b1d80
commit
217298c1c7
6 changed files with 202 additions and 12 deletions
18
src/mqtt.rs
18
src/mqtt.rs
|
|
@ -7,12 +7,20 @@ pub async fn mqtt_stream(
|
|||
mqtt_options: MqttOptions,
|
||||
) -> Result<(AsyncClient, impl Stream<Item = Result<Publish>>)> {
|
||||
let (client, event_loop) = AsyncClient::new(mqtt_options, 10);
|
||||
client.subscribe("tele/+/LWT", QoS::AtMostOnce).await?;
|
||||
client.subscribe("stat/+/POWER", QoS::AtMostOnce).await?;
|
||||
client.subscribe("tele/+/SENSOR", QoS::AtMostOnce).await?;
|
||||
client.subscribe("stat/+/RESULT", QoS::AtMostOnce).await?;
|
||||
client.subscribe("stat/+/STATUS2", QoS::AtMostOnce).await?;
|
||||
client.subscribe("stat/+/+", QoS::AtMostOnce).await?;
|
||||
client.subscribe("tele/+/+", QoS::AtMostOnce).await?;
|
||||
client.subscribe("rflink/msg", QoS::AtMostOnce).await?;
|
||||
client.subscribe("+/water", QoS::AtMostOnce).await?;
|
||||
client.subscribe("+/gas_delivered", QoS::AtMostOnce).await?;
|
||||
client
|
||||
.subscribe("+/energy_delivered_tariff1", QoS::AtMostOnce)
|
||||
.await?;
|
||||
client
|
||||
.subscribe("+/energy_delivered_tariff2", QoS::AtMostOnce)
|
||||
.await?;
|
||||
client
|
||||
.subscribe("+/power_delivered_l1", QoS::AtMostOnce)
|
||||
.await?;
|
||||
|
||||
let stream = event_loop_to_stream(event_loop).filter_map(|event| match event {
|
||||
Ok(Event::Incoming(Packet::Publish(message))) => Some(Ok(message)),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue