def createModule(scene, pidx): global config # create a module object name = programs[pidx]['name'] file = programs[pidx]['file'] env = programs[pidx]['env'] args = programs[pidx]['args'] # mod = Module("arena/py/moving-box", "box.py", mod_uuid=uuid.uuid4(), mod_env=env) # mod = Module("arena/py/moving-box", "box.py", mod_uuid='4264bac8-13ed-453b-b157-49cc2421a112') mod = Module(name, file, uuid.uuid4(), mod_env=env, mod_args=args) print(mod.uuid) # get arts request json string (req_uuid will be used to confirm the request) req_uuid, artsModCreateReq = mod.artsReqJson(Action.create) scene.mqttc.publish(f"{REALM}/{config['arts']['ctl']}", artsModCreateReq) return mod
def deleteModule(scene, prog, uuid): global config # kill the module mod = Module(prog['name'], prog['file'], mod_uuid=uuid) req_uuid, artsModDeleteReq = mod.artsReqJson(Action.delete) scene.mqttc.publish(f"{REALM}/{config['arts']['ctl']}", artsModDeleteReq)