From a19b1e86f2c4061f8233a7130632015829d983df Mon Sep 17 00:00:00 2001 From: jimmy Date: Sun, 8 Jun 2025 13:18:28 +1200 Subject: [PATCH] Have to save when using espnow --- src/main.py | 2 +- src/settings.py | 5 +++-- src/web.py | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/main.py b/src/main.py index d83a3ed..8a421ef 100644 --- a/src/main.py +++ b/src/main.py @@ -34,7 +34,7 @@ async def main(): data = json.loads(msg) print(data) if settings["id"] in data["ids"] or settings["id"] == 0: - settings.set_settings(data["settings"], patterns) + settings.set_settings(data["settings"], patterns, data.get("save", False)) print("should not print") async def wifi_connect(): diff --git a/src/settings.py b/src/settings.py index edfc9e4..f67faa4 100644 --- a/src/settings.py +++ b/src/settings.py @@ -49,7 +49,7 @@ class Settings(dict): self.set_defaults() self.save() - def set_settings(self, data, patterns): + def set_settings(self, data, patterns, save): try: print(data) for key, value in data.items(): @@ -85,7 +85,8 @@ class Settings(dict): return "Invalid key", 400 self[key] = value patterns.sync() - self.save() + if save: + self.save() return "OK", 200 except (KeyError, ValueError): return "Bad request", 400 diff --git a/src/web.py b/src/web.py index 67b7440..a66c4f0 100644 --- a/src/web.py +++ b/src/web.py @@ -35,7 +35,7 @@ def web(settings, patterns): if data: # Process the received data - _, status_code = settings.set_settings(json.loads(data), patterns) + _, status_code = settings.set_settings(json.loads(data), patterns, True) #await ws.send(status_code) else: break