22 lines
931 B
Plaintext
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}
|