diff --git a/functions/control/main.py b/functions/control/main.py index 7ce1f0b..e505379 100644 --- a/functions/control/main.py +++ b/functions/control/main.py @@ -1,2 +1,29 @@ +import json + def main(args): - return args.get("route") \ No newline at end of file + route = args.get("route") + + body = args.get("body") + body = json.loads(body) if body else {} + + if route.startswith("push"): + if route == "push_text": + with open("/app/state.json", "r") as f: + current = json.load(f) + current["text"] = body.get("text", "") + with open("/app/state.json", "w") as f: + json.dump(current, f) + return {"status": "success"} + else: + return {"status": "error", "message": "Unknown push route"} + elif route.startswith("pull"): + if route == "pull_text": + with open("/app/state.json", "r") as f: + current = json.load(f) + return {"status": "success", "text": current.get("text", "")} + elif route == "pull_full": + with open("/app/state.json", "r") as f: + current = json.load(f) + return {"status": "success", "state": current} + else: + return {"status": "error", "message": "Unknown pull route"} \ No newline at end of file