Fixed fstring parsing error on Android

This commit is contained in:
Mark Qvist 2025-01-26 13:02:05 +01:00
parent a812f0a589
commit 0d548e4cbb

View File

@ -1757,8 +1757,9 @@ class PowerConsumption(Sensor):
f"{topic}/icon": r["icon"], f"{topic}/icon": r["icon"],
} }
for consumer in r["values"]: for consumer in r["values"]:
rendered[f"{topic}/{consumer["label"]}/w"] = consumer["w"] cl = consumer["label"]
rendered[f"{topic}/{consumer["label"]}/icon"] = consumer["custom_icon"] rendered[f"{topic}/{cl}/w"] = consumer["w"]
rendered[f"{topic}/{cl}/icon"] = consumer["custom_icon"]
else: else:
rendered = None rendered = None
@ -1854,8 +1855,9 @@ class PowerProduction(Sensor):
f"{topic}/icon": r["icon"], f"{topic}/icon": r["icon"],
} }
for producer in r["values"]: for producer in r["values"]:
rendered[f"{topic}/{producer["label"]}/w"] = producer["w"] pl = producer["label"]
rendered[f"{topic}/{producer["label"]}/icon"] = producer["custom_icon"] rendered[f"{topic}/{pl}/w"] = producer["w"]
rendered[f"{topic}/{pl}/icon"] = producer["custom_icon"]
else: else:
rendered = None rendered = None
@ -1956,11 +1958,12 @@ class Processor(Sensor):
f"{topic}/icon": r["icon"], f"{topic}/icon": r["icon"],
} }
for cpu in r["values"]: for cpu in r["values"]:
rendered[f"{topic}/{cpu["label"]}/current_load"] = cpu["current_load"] cl = cpu["label"]
rendered[f"{topic}/{cpu["label"]}/avgs/1m"] = cpu["load_avgs"][0] rendered[f"{topic}/{cl}/current_load"] = cpu["current_load"]
rendered[f"{topic}/{cpu["label"]}/avgs/5m"] = cpu["load_avgs"][1] rendered[f"{topic}/{cl}/avgs/1m"] = cpu["load_avgs"][0]
rendered[f"{topic}/{cpu["label"]}/avgs/15m"] = cpu["load_avgs"][2] rendered[f"{topic}/{cl}/avgs/5m"] = cpu["load_avgs"][1]
rendered[f"{topic}/{cpu["label"]}/clock"] = cpu["clock"] rendered[f"{topic}/{cl}/avgs/15m"] = cpu["load_avgs"][2]
rendered[f"{topic}/{cl}/clock"] = cpu["clock"]
else: else:
rendered = None rendered = None
@ -2062,10 +2065,11 @@ class RandomAccessMemory(Sensor):
f"{topic}/icon": r["icon"], f"{topic}/icon": r["icon"],
} }
for ram in r["values"]: for ram in r["values"]:
rendered[f"{topic}/{ram["label"]}/capacity"] = ram["capacity"] rl = ram["label"]
rendered[f"{topic}/{ram["label"]}/used"] = ram["used"] rendered[f"{topic}/{rl}/capacity"] = ram["capacity"]
rendered[f"{topic}/{ram["label"]}/free"] = ram["free"] rendered[f"{topic}/{rl}/used"] = ram["used"]
rendered[f"{topic}/{ram["label"]}/percent"] = ram["percent"] rendered[f"{topic}/{rl}/free"] = ram["free"]
rendered[f"{topic}/{rl}/percent"] = ram["percent"]
else: else:
rendered = None rendered = None
@ -2167,10 +2171,11 @@ class NonVolatileMemory(Sensor):
f"{topic}/icon": r["icon"], f"{topic}/icon": r["icon"],
} }
for nvm in r["values"]: for nvm in r["values"]:
rendered[f"{topic}/{nvm["label"]}/capacity"] = nvm["capacity"] nl = nvm["label"]
rendered[f"{topic}/{nvm["label"]}/used"] = nvm["used"] rendered[f"{topic}/{nl}/capacity"] = nvm["capacity"]
rendered[f"{topic}/{nvm["label"]}/free"] = nvm["free"] rendered[f"{topic}/{nl}/used"] = nvm["used"]
rendered[f"{topic}/{nvm["label"]}/percent"] = nvm["percent"] rendered[f"{topic}/{nl}/free"] = nvm["free"]
rendered[f"{topic}/{nl}/percent"] = nvm["percent"]
else: else:
rendered = None rendered = None
@ -2270,8 +2275,9 @@ class Custom(Sensor):
f"{topic}/icon": r["icon"], f"{topic}/icon": r["icon"],
} }
for custom in r["values"]: for custom in r["values"]:
rendered[f"{topic}/{custom["label"]}/value"] = custom["value"] cl = custom["label"]
rendered[f"{topic}/{custom["label"]}/icon"] = custom["custom_icon"] rendered[f"{topic}/{cl}/value"] = custom["value"]
rendered[f"{topic}/{cl}/icon"] = custom["custom_icon"]
else: else:
rendered = None rendered = None
@ -2379,12 +2385,13 @@ class Tank(Sensor):
f"{topic}/icon": r["icon"], f"{topic}/icon": r["icon"],
} }
for tank in r["values"]: for tank in r["values"]:
rendered[f"{topic}/{tank["label"]}/unit"] = tank["unit"] tl = tank["label"]
rendered[f"{topic}/{tank["label"]}/capacity"] = tank["capacity"] rendered[f"{topic}/{tl}/unit"] = tank["unit"]
rendered[f"{topic}/{tank["label"]}/level"] = tank["level"] rendered[f"{topic}/{tl}/capacity"] = tank["capacity"]
rendered[f"{topic}/{tank["label"]}/free"] = tank["free"] rendered[f"{topic}/{tl}/level"] = tank["level"]
rendered[f"{topic}/{tank["label"]}/percent"] = tank["percent"] rendered[f"{topic}/{tl}/free"] = tank["free"]
rendered[f"{topic}/{tank["label"]}/icon"] = tank["custom_icon"] rendered[f"{topic}/{tl}/percent"] = tank["percent"]
rendered[f"{topic}/{tl}/icon"] = tank["custom_icon"]
else: else:
rendered = None rendered = None
@ -2492,12 +2499,13 @@ class Fuel(Sensor):
f"{topic}/icon": r["icon"], f"{topic}/icon": r["icon"],
} }
for tank in r["values"]: for tank in r["values"]:
rendered[f"{topic}/{tank["label"]}/unit"] = tank["unit"] tl = tank["label"]
rendered[f"{topic}/{tank["label"]}/capacity"] = tank["capacity"] rendered[f"{topic}/{tl}/unit"] = tank["unit"]
rendered[f"{topic}/{tank["label"]}/level"] = tank["level"] rendered[f"{topic}/{tl}/capacity"] = tank["capacity"]
rendered[f"{topic}/{tank["label"]}/free"] = tank["free"] rendered[f"{topic}/{tl}/level"] = tank["level"]
rendered[f"{topic}/{tank["label"]}/percent"] = tank["percent"] rendered[f"{topic}/{tl}/free"] = tank["free"]
rendered[f"{topic}/{tank["label"]}/icon"] = tank["custom_icon"] rendered[f"{topic}/{tl}/percent"] = tank["percent"]
rendered[f"{topic}/{tl}/icon"] = tank["custom_icon"]
else: else:
rendered = None rendered = None
@ -2733,13 +2741,13 @@ class RNSTransport(Sensor):
class LXMFPropagation(Sensor): class LXMFPropagation(Sensor):
SID = Sensor.SID_LXMF_PROPAGATION SID = Sensor.SID_LXMF_PROPAGATION
STALE_TIME = 45 STALE_TIME = 15
def __init__(self): def __init__(self):
self.identity = None self.identity = None
self.lxmd = None self.lxmd = None
self._last_update = 0 self._last_update = 0
self._update_interval = 60 self._update_interval = 18
self._update_lock = threading.Lock() self._update_lock = threading.Lock()
self._running = False self._running = False
super().__init__(type(self).SID, type(self).STALE_TIME) super().__init__(type(self).SID, type(self).STALE_TIME)
@ -2755,6 +2763,11 @@ class LXMFPropagation(Sensor):
except Exception as e: except Exception as e:
RNS.log("Could not load LXMF propagation sensor identity from \"{file_path}\"", RNS.LOG_ERROR) RNS.log("Could not load LXMF propagation sensor identity from \"{file_path}\"", RNS.LOG_ERROR)
if self.identity != None:
self.setup_sensor()
else:
RNS.log(f"Identity was not configured for {self}. Updates will not occur until a valid identity is configured.", RNS.LOG_ERROR)
def _update_job(self): def _update_job(self):
while self._running: while self._running:
self._update_data() self._update_data()