diff --git a/moisture_sensor_control/README.md b/moisture_sensor_control/README.md
index cb073ca..d894a0d 100644
--- a/moisture_sensor_control/README.md
+++ b/moisture_sensor_control/README.md
@@ -91,6 +91,8 @@ following values:
## Version information
+- v0.0.3
+ - Fix renamed sensor not being saved
- v0.0.2
- Ignore RUN ONCE programs
- Improved documentation
diff --git a/moisture_sensor_control/moisture_sensor_control-docs.html b/moisture_sensor_control/moisture_sensor_control-docs.html
index 6540b81..b49bd68 100644
--- a/moisture_sensor_control/moisture_sensor_control-docs.html
+++ b/moisture_sensor_control/moisture_sensor_control-docs.html
@@ -161,6 +161,10 @@
For developers
Version information
+- v0.0.3
+
+- Fix renamed sensor not being saved
+
- v0.0.2
- Ignore RUN ONCE programs
diff --git a/moisture_sensor_control/moisture_sensor_control.py b/moisture_sensor_control/moisture_sensor_control.py
index e23f1c0..1433ad6 100755
--- a/moisture_sensor_control/moisture_sensor_control.py
+++ b/moisture_sensor_control/moisture_sensor_control.py
@@ -48,6 +48,11 @@ def validate_int(int_list):
return tuple(validated_list)
+def settings_save():
+ with open(CONFIG_FILE_PATH, "w") as f:
+ f.write(json.dumps(moisture_sensor_settings, indent=2))
+
+
def trigger_run_once(sensor, value):
"""Processes a new reading. Checks if all the required fields are
set, checks to see if the pause and threshold values apply and if
@@ -128,12 +133,14 @@ def notify_moisture_sensor_data(action, **kw):
moisture_sensor_settings["settings"][k] = data["sensor"]
moisture_sensor_data[data["sensor"]] = moisture_sensor_data[data["old_sensor"]]
del moisture_sensor_data[data["old_sensor"]]
+ settings_save()
elif action == "delete":
for k, v in moisture_sensor_settings["settings"].items():
if re.match(r"sensor\d+", k) and v == data["sensor"]:
moisture_sensor_settings["settings"][k] = ""
del moisture_sensor_data[data["sensor"]]
+ settings_save()
else:
print(f"notify_moisture_sensor_data unknown action {action} {data}")
@@ -259,8 +266,7 @@ def GET(self):
moisture_sensor_settings["settings"] = qdict
- with open(CONFIG_FILE_PATH, "w") as f:
- f.write(json.dumps(moisture_sensor_settings, indent=2))
+ settings_save()
# Redisplay the plugin page
raise web.seeother("/moisture_sensor_control")
diff --git a/moisture_sensor_data_mqtt/README.md b/moisture_sensor_data_mqtt/README.md
index b686540..0d4df02 100644
--- a/moisture_sensor_data_mqtt/README.md
+++ b/moisture_sensor_data_mqtt/README.md
@@ -59,6 +59,8 @@ week.
## Version information
+- v0.0.3
+ - Fixed issue with sensor rename and last_reading
- v0.0.2
- Fixed check for valid topic before creating MQTT reader
- Fixed setting updated check
diff --git a/moisture_sensor_data_mqtt/moisture_sensor_data_mqtt-docs.html b/moisture_sensor_data_mqtt/moisture_sensor_data_mqtt-docs.html
index 0102c02..07dfc2c 100644
--- a/moisture_sensor_data_mqtt/moisture_sensor_data_mqtt-docs.html
+++ b/moisture_sensor_data_mqtt/moisture_sensor_data_mqtt-docs.html
@@ -105,6 +105,10 @@ Retention period
Version information
+- v0.0.3
+
+- Fixed issue with sensor rename and last_reading
+
- v0.0.2
- Fixed check for valid topic before creating MQTT reader
diff --git a/moisture_sensor_data_mqtt/moisture_sensor_data_mqtt.py b/moisture_sensor_data_mqtt/moisture_sensor_data_mqtt.py
index 59e12c0..0433af3 100755
--- a/moisture_sensor_data_mqtt/moisture_sensor_data_mqtt.py
+++ b/moisture_sensor_data_mqtt/moisture_sensor_data_mqtt.py
@@ -335,10 +335,11 @@ def GET(self):
)
if os.path.isfile(old_file) and not os.path.isfile(new_file):
os.rename(old_file, new_file)
+ if old_sensor in last_reading:
+ last_reading[new_sensor] = last_reading.pop(old_sensor)
else:
if updated:
- print("updated")
# Case: Attributes updated
stop_mqtt_reader(old_sensor)
create_mqtt_reader(new_setting)