互动指令
4.5.1、功能介绍
平台提供了一套完整的互动指令能力,使开发者能快速实现一个观众端快捷互动指令面板
图2:WEB观众端指令面板
4.5.2、接入流程
4.5.2.1、配置指令
访问开发者中心找到对应的小程序,进入“互动指令”菜单。
如图下所示:
指令设置,支持两种不同指令:
弹幕指令:支持配置指令图片,弹幕描述和实际发送的弹幕内容,用户点击后将发送弹幕
礼物指令:支持配置指令图片,礼物描述和实际送出的礼物,礼物成组升级配置可指定批量送礼和描述,用户点击后将赠送对应数量的礼物
配置和实际效果如图下所示:
图5:礼物配置
图6:弹幕配置
图7:配置效果
4.5.2.2、唤起指令面板
完成对局状态的对接
在startBattle接口调用时,传入申请并配置好的指令id(commandUuid)
4.5.2.3、报名状态同步
当指令配置勾选了报名流程后,可在游戏内用户报名成功后,同步状态到平台侧,平台侧处理用户指令面板的状态切换。
调用HTTP接口,同步状态。
接口调用说明
对局报名状态同步接口
http请求方式:POST
https://apiext.huya.com/interactive/signUp
生成签名
按照统一鉴权说明生成对应的鉴权sToken(即JWT token)
注意:其中Payload需要做以下调整:
payload参数:
| 参数名称 | 类型 | 备注 |
|---|---|---|
| iat | number | token生成时间戳(秒) |
| exp | number | 过期时间戳(秒) |
| appId | string | 开发者appid 如何查找 |
| extUuid | string | 小程序id 如何查找 |
| profileId | string | 主播unionId 如何获取 |
| roomId | string | 主播房间号 如何获取 |
| userId | string | 用户unionId 如何获取 |
payload样例
{
"iat": 1555921691,
"exp": 1555928891,
"appId": "appId",
"extUuid": "extUuid",
"profileId": "unImSOHlQBsY",
"roomId": "1134"
}
发送请求
- 通过https方式发送请求
- 上面生成的签名通过设置http Header参数authorization进行传输
Header参数:
| 参数名称 | 类型 | 备注 |
|---|---|---|
| authorization | string | 请求的签名凭证 |
get参数
| 参数名称 | 类型 | 备注 |
|---|---|---|
| appId | string | 必填,开发者appId 如何查找 |
| extUuid | string | 必填,小程序id 如何查找 |
post参数,是用json格式提交
| 参数名称 | 类型 | 备注 |
|---|---|---|
| battleId | string | 必填,对局id |
| barrageContent | string | 必填,报名弹幕内容 |
HTTP响应
| 参数名称 | 类型 | 备注 |
|---|---|---|
| code | int | 业务状态码 通用业务状态码说明 |
| msg | string | 响应描述 |
4.5.2.4、监听点赞事件
完成开放API里的WS接口对接
监听getUserDoButtonLikeNotice事件