直播回调通知

最近更新时间:2024-11-01 17:21:42

我的收藏

接口说明

用于在创建直播间后回调直播信息给客户端。

调用协议

请求方式: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&timestamp=1719316714
3. 对签名原文使用 signKey 进行 HmacSha256 加密,之后再进行 base64 编码:
hashBytes = HmacSha256("reqid=f6d83764e3854dc88bed0f87067e5b7f&timestamp=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&timestamp=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
时间戳,精度到秒