服务端调用 HappyOyster Open API 准备世界与产物导出,客户端 SDK 完成 RTC 建连与实时互动。
HappyOyster 采用服务端 + 客户端分离的接入方式:服务端通过 Open API 管理世界与产物,客户端 SDK 完成实时体验。开始前请先完成获取鉴权凭证。
说明
- 服务端 Open API 按体验模式拆分为 Adventure(世界探索)/ Directing(实时导演)/ Acting(角色演绎)三套,请根据业务选择对应模式的接口。
- World 与 Travel 严格属于其创建模型,跨模型访问会返回
403001(world)或404000(travel)。 - SDK 不负责世界的创建与管理,仅负责客户端实时体验。
一、准备世界(服务端 Open API)
- 创建世界,按模式选择接口:Adventure-创建世界 / Directing-创建世界 / Acting-创建世界。
- 轮询构建状态(3–5 秒间隔)至
ready:Adventure-查询世界构建状态 / Directing-查询世界构建状态 / Acting-查询世界构建状态。 - 换取 ticket:使用主 API Key 调用 Adventure-获取体验凭证 / Directing-获取体验凭证 / Acting-获取体验凭证,获得一次性
ticket。 - 下发凭证给客户端:将
ticket与临时 API Key(作为 SDK 的token)一并下发。
二、实时体验(客户端 SDK)
SDK 封装 RTC 建连、视频播放与交互指令。
-
初始化 SDK:
initialize+updateToken,注入 API Host 与临时 API Key。 -
开始体验:
startTravel(ticket),SDK 自动进房并建连。 -
挂载视频:将
attachVideo()返回的视图加入布局;Acting 依据进房回包的aspectRatio设置容器方向。 -
实时互动:
- 世界探索(Adventure):调用
sendCommand发送方向 / 视角 / 动作指令。 - 实时导演(Directing):调用
sendInstruct发送文本指令驱动剧情。 - 角色演绎(Acting):调用
sendInstruct发送文本指令。
- 世界探索(Adventure):调用
-
过程控制:
- 世界探索(Adventure):不支持暂停、回溯。
- 实时导演(Directing):支持
pause、rewind、resume。 - 角色演绎(Acting):支持
pause、resume,不支持rewind。
-
结束体验:
endTravel,释放 RTC 与资源。
三、获取产物(服务端 Open API)
Travel 结束后,使用主 API Key 轮询 Adventure-查询Travel产物 / Directing-查询Travel产物 / Acting-查询Travel产物,直至 composeStatus = ready。推荐对外交付 video.withInstructionAndWatermark(指令 + 水印合成版)。
下一步
- 下载 SDK 与 Demo:各端 SDK 包、接入指南、API 参考与开源 Demo。
该文章对您有帮助吗?