mirror of
https://codeberg.org/icewind/taspromto.git
synced 2026-06-03 16:44:11 +02:00
version as key
This commit is contained in:
parent
8a8148e528
commit
07e2cc0063
1 changed files with 11 additions and 2 deletions
|
|
@ -101,6 +101,7 @@ pub struct DeviceState {
|
||||||
pub pms_state: Option<PMSState>,
|
pub pms_state: Option<PMSState>,
|
||||||
pub last_seen: Instant,
|
pub last_seen: Instant,
|
||||||
pub firmware: String,
|
pub firmware: String,
|
||||||
|
pub version: f32,
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Default for DeviceState {
|
impl Default for DeviceState {
|
||||||
|
|
@ -119,6 +120,7 @@ impl Default for DeviceState {
|
||||||
pms_state: Default::default(),
|
pms_state: Default::default(),
|
||||||
last_seen: Instant::now(),
|
last_seen: Instant::now(),
|
||||||
firmware: Default::default(),
|
firmware: Default::default(),
|
||||||
|
version: 0.0,
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -192,6 +194,13 @@ impl DeviceState {
|
||||||
|
|
||||||
if let Some(version) = json["StatusFWR"]["Version"].as_str() {
|
if let Some(version) = json["StatusFWR"]["Version"].as_str() {
|
||||||
self.firmware = version.into();
|
self.firmware = version.into();
|
||||||
|
if let Some(version) = version
|
||||||
|
.rfind(".")
|
||||||
|
.map(|index| &version[0..index])
|
||||||
|
.and_then(|s| s.parse().ok())
|
||||||
|
{
|
||||||
|
self.version = version
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if json["PMS5003"].is_object() {
|
if json["PMS5003"].is_object() {
|
||||||
|
|
@ -347,8 +356,8 @@ pub fn format_device_state<W: Write>(
|
||||||
if !state.firmware.is_empty() {
|
if !state.firmware.is_empty() {
|
||||||
writeln!(
|
writeln!(
|
||||||
writer,
|
writer,
|
||||||
"tasmota_version{{tasmota_id=\"{}\", name=\"{}\"}} {}",
|
r#"tasmota_version{{tasmota_id="{}", name="{}", firmware="{}", version="{}"}} 1"#,
|
||||||
device.hostname, state.name, state.firmware
|
device.hostname, state.name, state.firmware, state.version
|
||||||
)?;
|
)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue