# -*- coding: utf-8 -*- import json from . import util # action list js_actions = ("open_url", "add_trigger_words", "use_preview_prompt", "dl_model_new_version") py_actions = ("open_url") def parse_js_msg(msg): util.log("Start parse js msg") msg_dict = json.loads(msg) # in case client side run JSON.stringify twice if (type(msg_dict) == str): msg_dict = json.loads(msg_dict) if "action" not in msg_dict.keys(): util.log("Can not find action from js request") return action = msg_dict["action"] if not action: util.log("Action from js request is None") return if action not in js_actions: util.log("Unknow action: " + action) return util.log("End parse js msg") return msg_dict def build_py_msg(action:str, content:dict): util.log("Start build_msg") if not content: util.log("Content is None") return if not action: util.log("Action is None") return if action not in py_actions: util.log("Unknow action: " + action) return msg = { "action" : action, "content": content } util.log("End build_msg") return json.dumps(msg)