cleanup mitemp formatting

This commit is contained in:
Robin Appelman 2026-06-27 00:13:40 +02:00
commit a9a2f5270e
3 changed files with 37 additions and 44 deletions

View file

@ -5,13 +5,13 @@ mod topic;
use crate::config::{Config, ListenConfig};
use crate::device::{
Device, DeviceStates, format_device_state, format_dsmr_state, format_mi_temp_state,
format_rf_temp_state,
Device, DeviceStates, format_device_state, format_dsmr_state, format_rf_temp_state,
};
use crate::mqtt::mqtt_stream;
use crate::topic::Topic;
use clap::Parser;
use color_eyre::{Result, eyre::WrapErr};
use std::fmt::Write;
use pin_utils::pin_mut;
use rumqttc::{AsyncClient, Publish, QoS};
@ -74,7 +74,6 @@ async fn main() -> Result<()> {
}
async fn serve(device_states: Arc<Mutex<DeviceStates>>, config: Config) {
let mi_temp_names = config.names.mi_temp;
let rf_temp_names = config.names.rf_temp;
let state = warp::any().map(move || device_states.clone());
@ -90,8 +89,8 @@ async fn serve(device_states: Arc<Mutex<DeviceStates>>, config: Config) {
for (device, state) in state.dsmr_devices() {
format_dsmr_state(&mut response, device.hostname.as_str(), state).unwrap();
}
for (addr, state) in state.mi_temp() {
format_mi_temp_state(&mut response, *addr, &mi_temp_names, state).unwrap()
for (_, state) in state.mi_temp() {
write!(&mut response, "{}", state.format_prometheus()).expect("formatting failed");
}
for (channel, state) in state.rf_temp() {
format_rf_temp_state(&mut response, channel, &rf_temp_names, state).unwrap()