接口说明
用于在创建直播间后回调直播信息给客户端。
调用协议
请求方式:HTTPS-POST
数据格式:JSON格式请求("Content-Type":"application/json")
请求构建
公共参数
参数名称 | 类型 | 必选 | 描述 |
reqid | string | 是 | 请求Id,长度为32的uuid |
timestamp | string | 是 | 请求时间戳,单位:秒。 |
signature | string | 是 | 请求签名(参考签名方法)。 |
请求构建步骤
1. signature 签名规则如下(类似于数智人 aPaas 接口调用方式,只是公共参数有变化),假设signKey和callbackUrl如下:
signKey = example_signkey
callbackUrl = https://callback.example.com/callback_example_url
注意:
签名使用的 signKey 通过线下方式提供。
2. 根据请求参数,对除 signature 之外的所有需要的参数按字典序进行排序,作为签名原文,用于生成签名。使用 reqid 和 timestamp 两个参数,排序拼接后的字符串示例为:
reqid=f6d83764e3854dc88bed0f87067e5b7f×tamp=1719316714
3. 对签名原文使用 signKey 进行 HmacSha256 加密,之后再进行 base64 编码:
hashBytes = HmacSha256("reqid=f6d83764e3854dc88bed0f87067e5b7f×tamp=1719316714","example_signkey")signature = Base64Encode(hashBytes)
4. 得到 signature 签名值为:
ZdFlMA2f+8el/LNKiWBhB64zF4KVKXHdVbLHWhh3NwU=
5. 将 signature 值进行 urlencode(必须进行 URL 编码,否则将导致鉴权失败)后拼接得到最终请求 URL 为:
https://callback.example.com/callback_example_url?reqid=f6d83764e3854dc88bed0f87067e5b7f×tamp=1719316714&signature=ZdFlMA2f%2B8el%2FLNKiWBhB64zF4KVKXHdVbLHWhh3NwU%3D
返回参数
参数名称 | 类型 | 必选 | 描述 |
ReqId | string | 是 | 请求Id,长度为32的uuid |
MsgType | string | 是 | 消息类型, 标识本消息是依据什么场景发送的 |
MsgData | string | 是 | 消息数据,以json格式发送。不同消息类型的结构不一样。 |
MsgData:直播间状态通知(MsgType=LiveRoomStatus)
参数名称 | 类型 | 必选 | 描述 |
LiveRoomId | string | 是 | 直播间状态 |
Status | int | 是 | 直播间状态,0-初始状态;1-视频流创建中;2-视频流创建完成;3-拆句完成;4-调度中;5-调度完成;6-关闭 |
VideoStreamPlayUrl | string | 否 | 视频流播放地址(视频流创建完成才会返回) |
MsgData:直播间脚本播报状态通知(MsgType=LiveRoomScriptStatus)
参数名称 | 类型 | 必选 | 描述 |
LiveRoomId | string | 是 | 直播间状态 |
Seq | int | 是 | 脚本拆句后的子句id |
Text | string | 是 | 脚本拆句后的子句内容 |
SpeakStatus | string | 是 | 播报状态,SentenceStart-子句播报开始;SentenceOver-子句播报结束 |
Timestamp | string | 是 | 时间戳,精度到秒 |