2026-08-29 21:10:23 +08:00

22 lines
931 B
Plaintext

# -*- coding: utf-8 -*-
# demo/api/start.dspy —— W-07a 开始演示(进入预览态)
# 入参: world_id(必填), session_name(可选), entities(可选, [{entity_id, entity_name, fields}])
# 出参: {"status":200,"data":{"session_id":...,"status":"preview",...}}
try:
if not params_kw.get('world_id'):
return {"status": 400, "message": "world_id 不能为空"}
data = await start_demo(
world_id=params_kw.get('world_id'),
session_name=params_kw.get('session_name', ''),
entities=params_kw.get('entities', None),
)
return {"status": 200, "data": data}
except DemoParamError as e:
return {"status": 400, "message": str(e)}
except DemoDuplicateError as e:
return {"status": 409, "message": str(e)}
except DemoNotFoundError as e:
return {"status": 404, "message": str(e)}
except Exception as e:
return {"status": 500, "message": "start_demo 内部错误: %s" % e}